123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 |
- #ifndef BITS_H
- #define BITS_H
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef struct SpeexBits {
- char *chars;
- int nbBits;
- int charPtr;
- int bitPtr;
- int owner;
- int overflow;
- int buf_size;
- int reserved1;
- void *reserved2;
- } SpeexBits;
- void speex_bits_init(SpeexBits *bits);
- void speex_bits_init_buffer(SpeexBits *bits, void *buff, int buf_size);
- void speex_bits_set_bit_buffer(SpeexBits *bits, void *buff, int buf_size);
- void speex_bits_destroy(SpeexBits *bits);
- void speex_bits_reset(SpeexBits *bits);
- void speex_bits_rewind(SpeexBits *bits);
- void speex_bits_read_from(SpeexBits *bits, const char *bytes, int len);
- void speex_bits_read_whole_bytes(SpeexBits *bits, const char *bytes, int len);
- int speex_bits_write(SpeexBits *bits, char *bytes, int max_len);
- int speex_bits_write_whole_bytes(SpeexBits *bits, char *bytes, int max_len);
- void speex_bits_pack(SpeexBits *bits, int data, int nbBits);
- int speex_bits_unpack_signed(SpeexBits *bits, int nbBits);
- unsigned int speex_bits_unpack_unsigned(SpeexBits *bits, int nbBits);
- int speex_bits_nbytes(SpeexBits *bits);
- unsigned int speex_bits_peek_unsigned(SpeexBits *bits, int nbBits);
- int speex_bits_peek(SpeexBits *bits);
- void speex_bits_advance(SpeexBits *bits, int n);
- int speex_bits_remaining(SpeexBits *bits);
- void speex_bits_insert_terminator(SpeexBits *bits);
- #ifdef __cplusplus
- }
- #endif
- #endif
|