12 #ifndef _MPG123_GETBITS_H_ 13 #define _MPG123_GETBITS_H_ 18 #define backbits(fr,nob) ((void)( \ 19 fr->bits_avail += nob, \ 20 fr->bitindex -= nob, \ 21 fr->wordpointer += (fr->bitindex>>3), \ 22 fr->bitindex &= 0x7 )) 24 #define getbitoffset(fr) ((-fr->bitindex)&0x7) 28 #define getbyte(fr) ( (fr)->bits_avail-=8, (fr)->bits_avail >= 0 \ 29 ? *((fr)->wordpointer++) \ 45 error2(
"Tried to read %i bits with %li available." 53 check_buffer_range(number_of_bits+fr->
bitindex);
68 rval >>= (24-number_of_bits);
82 #define skipbits(fr, nob) fr->ultmp = ( \ 83 fr->ultmp = fr->wordpointer[0], fr->ultmp <<= 8, fr->ultmp |= fr->wordpointer[1], \ 84 fr->ultmp <<= 8, fr->ultmp |= fr->wordpointer[2], fr->ultmp <<= fr->bitindex, \ 85 fr->ultmp &= 0xffffff, fr->bitindex += nob, fr->bits_avail -= nob, \ 86 fr->ultmp >>= (24-nob), fr->wordpointer += (fr->bitindex>>3), \ 89 #define getbits_fast(fr, nob) ( \ 90 fr->ultmp = (unsigned char) (fr->wordpointer[0] << fr->bitindex), \ 91 fr->ultmp |= ((unsigned long) fr->wordpointer[1]<<fr->bitindex)>>8, \ 92 fr->ultmp <<= nob, fr->ultmp >>= 8, \ 93 fr->bitindex += nob, fr->bits_avail -= nob, \ 94 fr->wordpointer += (fr->bitindex>>3), \ 95 fr->bitindex &= 7, fr->ultmp ) 97 #define get1bit(fr) ( \ 98 fr->uctmp = *fr->wordpointer << fr->bitindex, \ 99 ++fr->bitindex, --fr->bits_avail, \ 100 fr->wordpointer += (fr->bitindex>>3), fr->bitindex &= 7, fr->uctmp>>7 )
unsigned char * wordpointer
_Check_return_opt_ _CRTIMP int __cdecl fprintf(_Inout_ FILE *_File, _In_z_ _Printf_format_string_ const char *_Format,...)
static unsigned int getbits(mpg123_handle *fr, int number_of_bits)