Lines Matching refs:bitC

95 MEM_STATIC size_t BIT_initCStream(BIT_CStream_t* bitC, void* dstBuffer, size_t dstCapacity);
96 MEM_STATIC void BIT_addBits(BIT_CStream_t* bitC, size_t value, unsigned nbBits);
97 MEM_STATIC void BIT_flushBits(BIT_CStream_t* bitC);
98 MEM_STATIC size_t BIT_closeCStream(BIT_CStream_t* bitC);
156 MEM_STATIC void BIT_addBitsFast(BIT_CStream_t* bitC, size_t value, unsigned nbBits);
159 MEM_STATIC void BIT_flushBitsFast(BIT_CStream_t* bitC);
213 MEM_STATIC size_t BIT_initCStream(BIT_CStream_t* bitC, in BIT_initCStream() argument
216 bitC->bitContainer = 0; in BIT_initCStream()
217 bitC->bitPos = 0; in BIT_initCStream()
218 bitC->startPtr = (char*)startPtr; in BIT_initCStream()
219 bitC->ptr = bitC->startPtr; in BIT_initCStream()
220 bitC->endPtr = bitC->startPtr + dstCapacity - sizeof(bitC->bitContainer); in BIT_initCStream()
221 if (dstCapacity <= sizeof(bitC->bitContainer)) return ERROR(dstSize_tooSmall); in BIT_initCStream()
228 MEM_STATIC void BIT_addBits(BIT_CStream_t* bitC, in BIT_addBits() argument
233 assert(nbBits + bitC->bitPos < sizeof(bitC->bitContainer) * 8); in BIT_addBits()
234 bitC->bitContainer |= (value & BIT_mask[nbBits]) << bitC->bitPos; in BIT_addBits()
235 bitC->bitPos += nbBits; in BIT_addBits()
240 MEM_STATIC void BIT_addBitsFast(BIT_CStream_t* bitC, in BIT_addBitsFast() argument
244 assert(nbBits + bitC->bitPos < sizeof(bitC->bitContainer) * 8); in BIT_addBitsFast()
245 bitC->bitContainer |= value << bitC->bitPos; in BIT_addBitsFast()
246 bitC->bitPos += nbBits; in BIT_addBitsFast()
252 MEM_STATIC void BIT_flushBitsFast(BIT_CStream_t* bitC) in BIT_flushBitsFast() argument
254 size_t const nbBytes = bitC->bitPos >> 3; in BIT_flushBitsFast()
255 assert(bitC->bitPos < sizeof(bitC->bitContainer) * 8); in BIT_flushBitsFast()
256 MEM_writeLEST(bitC->ptr, bitC->bitContainer); in BIT_flushBitsFast()
257 bitC->ptr += nbBytes; in BIT_flushBitsFast()
258 assert(bitC->ptr <= bitC->endPtr); in BIT_flushBitsFast()
259 bitC->bitPos &= 7; in BIT_flushBitsFast()
260 bitC->bitContainer >>= nbBytes*8; in BIT_flushBitsFast()
268 MEM_STATIC void BIT_flushBits(BIT_CStream_t* bitC) in BIT_flushBits() argument
270 size_t const nbBytes = bitC->bitPos >> 3; in BIT_flushBits()
271 assert(bitC->bitPos < sizeof(bitC->bitContainer) * 8); in BIT_flushBits()
272 MEM_writeLEST(bitC->ptr, bitC->bitContainer); in BIT_flushBits()
273 bitC->ptr += nbBytes; in BIT_flushBits()
274 if (bitC->ptr > bitC->endPtr) bitC->ptr = bitC->endPtr; in BIT_flushBits()
275 bitC->bitPos &= 7; in BIT_flushBits()
276 bitC->bitContainer >>= nbBytes*8; in BIT_flushBits()
282 MEM_STATIC size_t BIT_closeCStream(BIT_CStream_t* bitC) in BIT_closeCStream() argument
284 BIT_addBitsFast(bitC, 1, 1); /* endMark */ in BIT_closeCStream()
285 BIT_flushBits(bitC); in BIT_closeCStream()
286 if (bitC->ptr >= bitC->endPtr) return 0; /* overflow detected */ in BIT_closeCStream()
287 return (bitC->ptr - bitC->startPtr) + (bitC->bitPos > 0); in BIT_closeCStream()