41 typedef unsigned char byte;
66 usedBits(from.usedBits)
89 unsigned read_uint(
unsigned short bitcount);
100 std::int32_t read_sint(
unsigned short bitcount);
112 return static_cast<std::int8_t
>(read_u8());
120 std::uint16_t result = *ptr++;
121 result |= *ptr++ << 8;
128 return static_cast<std::int16_t
>(read_u16());
136 std::uint32_t result = *ptr++;
137 result |= *ptr++ << 8;
138 result |= *ptr++ << 16;
139 result |= *ptr++ << 24;
146 return static_cast<std::int32_t
>(read_u32());
154 if ( usedBits ) advanceToNextByte();
160 std::uint32_t gotbits = 8-usedBits +8*(
end-ptr-1);
161 if (gotbits > nbits)
return true;
167 void advanceToNextByte()
195 #endif // BITSREADER_H
size_t size() const
Definition: BitsReader.h:72
std::uint8_t read_u8()
Read a byte as an unsigned int (aligned)
Definition: BitsReader.h:103
Definition: klash_part.cpp:330
std::uint32_t read_u32()
Read four bytes as an unsigned int (aligned)
Definition: BitsReader.h:132
Anonymous namespace for callbacks, local functions, event handlers etc.
Definition: dbus_ext.cpp:40
void align()
Discard any unused bit in the current byte and advance to next.
Definition: BitsReader.h:152
BitsReader(const BitsReader &from, size_t len)
Create a BitsReader reading a subset of another.
Definition: BitsReader.h:61
void setBuffer(byte *input, size_t len)
Set a new buffer to work with.
Definition: BitsReader.h:78
#define _(String)
Definition: log.h:44
BitsReader(const byte *input, size_t len)
Ownership of buffer left to caller.
Definition: BitsReader.h:44
std::int8_t read_s8()
Read one bytes as a signed int (aligned)
Definition: BitsReader.h:110
#define DSOEXPORT
Definition: dsodefs.h:55
bool gotBits(std::uint32_t nbits) const
Checks if the stream contains X bits.
Definition: BitsReader.h:158
~BitsReader()
Definition: BitsReader.h:70
std::int16_t read_s16()
Read two bytes as a signed int (aligned)
Definition: BitsReader.h:126
std::int32_t read_s32()
Read four bytes as an signed int (aligned)
Definition: BitsReader.h:144
BitsReader is used to encapsulate bit-packed buffer reads.
Definition: BitsReader.h:38
std::uint16_t read_u16()
Read two bytes as an unsigned int (aligned)
Definition: BitsReader.h:116
unsigned char byte
Definition: BitsReader.h:41
pixel_iterator< T > end(GnashImage &im)
Definition: ImageIterators.h:198
void log_debug(StringType msg, Args... args)
Definition: log.h:301