blob: ec297bb505a3986c6d2be081855c4b0a3782e549 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#pragma once
#include <bfc/platform/types.h>
class BitReader
{
public:
uint8_t getbits1();
uint32_t getbits(uint32_t n);
uint8_t showbits1() const;
uint32_t showbits(uint32_t n) const;
void flushbits(uint32_t n);
bool empty();
uint32_t size() const; // in bits
void alignbyte(); // aligns bitstream to the next byte (or current byte if already aligned)
void getbytes(void *data, uint32_t n);
//private:
const uint8_t *data;
uint32_t numBits;
};
|