OLD | NEW |
(Empty) | |
| 1 /* Copyright (C) 2007 Jean-Marc Valin |
| 2 |
| 3 File: speex_buffer.h |
| 4 This is a very simple ring buffer implementation. It is not thread-safe |
| 5 so you need to do your own locking. |
| 6 |
| 7 Redistribution and use in source and binary forms, with or without |
| 8 modification, are permitted provided that the following conditions are |
| 9 met: |
| 10 |
| 11 1. Redistributions of source code must retain the above copyright notice, |
| 12 this list of conditions and the following disclaimer. |
| 13 |
| 14 2. Redistributions in binary form must reproduce the above copyright |
| 15 notice, this list of conditions and the following disclaimer in the |
| 16 documentation and/or other materials provided with the distribution. |
| 17 |
| 18 3. The name of the author may not be used to endorse or promote products |
| 19 derived from this software without specific prior written permission. |
| 20 |
| 21 THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR |
| 22 IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
| 23 OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| 24 DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, |
| 25 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
| 26 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
| 27 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
| 28 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, |
| 29 STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
| 30 ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
| 31 POSSIBILITY OF SUCH DAMAGE. |
| 32 */ |
| 33 |
| 34 #ifndef SPEEX_BUFFER_H |
| 35 #define SPEEX_BUFFER_H |
| 36 |
| 37 #include "speex/speex_types.h" |
| 38 |
| 39 #ifdef __cplusplus |
| 40 extern "C" { |
| 41 #endif |
| 42 |
| 43 struct SpeexBuffer_; |
| 44 typedef struct SpeexBuffer_ SpeexBuffer; |
| 45 |
| 46 SpeexBuffer *speex_buffer_init(int size); |
| 47 |
| 48 void speex_buffer_destroy(SpeexBuffer *st); |
| 49 |
| 50 int speex_buffer_write(SpeexBuffer *st, void *data, int len); |
| 51 |
| 52 int speex_buffer_writezeros(SpeexBuffer *st, int len); |
| 53 |
| 54 int speex_buffer_read(SpeexBuffer *st, void *data, int len); |
| 55 |
| 56 int speex_buffer_get_available(SpeexBuffer *st); |
| 57 |
| 58 int speex_buffer_resize(SpeexBuffer *st, int len); |
| 59 |
| 60 #ifdef __cplusplus |
| 61 } |
| 62 #endif |
| 63 |
| 64 #endif |
| 65 |
| 66 |
| 67 |
| 68 |
OLD | NEW |