xoreos
0.0.5
|
A bit stream. More...
#include <bitstream.h>
Public Member Functions | |
virtual | ~BitStream () |
virtual size_t | pos () const =0 |
Return the stream position in bits. More... | |
virtual size_t | size () const =0 |
Return the stream size in bits. More... | |
virtual bool | eos () const =0 |
Has the end of the stream been reached? More... | |
virtual void | rewind ()=0 |
Rewind the bit stream back to the start. More... | |
virtual void | skip (size_t n)=0 |
Skip the specified amount of bits. More... | |
virtual uint32 | getBit ()=0 |
Read a bit from the bit stream. More... | |
virtual uint32 | getBits (size_t n)=0 |
Read a multi-bit value from the bit stream. More... | |
virtual void | addBit (uint32 &x, size_t n)=0 |
Add a bit to the n-bit value x, making it an (n+1)-bit value. More... | |
Protected Member Functions | |
BitStream () | |
A bit stream.
Definition at line 40 of file bitstream.h.
|
inlinevirtual |
Definition at line 42 of file bitstream.h.
|
inlineprotected |
Definition at line 70 of file bitstream.h.
|
pure virtual |
Add a bit to the n-bit value x, making it an (n+1)-bit value.
Implemented in Common::BitStreamImpl< valueBits, isLE, isMSB2LSB >.
Referenced by Common::Huffman::getSymbol().
|
pure virtual |
Has the end of the stream been reached?
Implemented in Common::BitStreamImpl< valueBits, isLE, isMSB2LSB >.
|
pure virtual |
Read a bit from the bit stream.
Implemented in Common::BitStreamImpl< valueBits, isLE, isMSB2LSB >.
Referenced by Video::Bink::BinkVideoTrack::blockRun(), Video::Bink::BinkVideoTrack::blockScaledRun(), Sound::CodebookLibrary::copy(), Sound::WMACodec::decodeBlock(), Sound::WMACodec::decodeExponents(), Video::XMVWMV2Codec::decodeFrame(), Video::XMVWMV2Codec::decodeIBlock(), Video::XMVWMV2Codec::decodeIFrame(), Sound::WMACodec::decodeNoise(), Sound::WMACodec::decodeRunLevel(), Video::Bink::BinkAudioTrack::getFloat(), Sound::WMACodec::getLargeVal(), Video::XMVWMV2Codec::getTrit(), Video::Bink::BinkVideoTrack::mergeHuffmanSymbols(), Video::Bink::BinkAudioTrack::readAudioCoeffs(), Video::Bink::BinkVideoTrack::readBlockTypes(), Video::Bink::BinkVideoTrack::readColors(), Video::Bink::BinkVideoTrack::readDCS(), Video::Bink::BinkVideoTrack::readDCTCoeffs(), Video::Bink::BinkVideoTrack::readHuffman(), Video::Bink::BinkVideoTrack::readMotionValues(), Video::Bink::BinkVideoTrack::readResidue(), Video::Bink::BinkVideoTrack::readRuns(), and Sound::CodebookLibrary::rebuild().
|
pure virtual |
Read a multi-bit value from the bit stream.
Implemented in Common::BitStreamImpl< valueBits, isLE, isMSB2LSB >.
Referenced by Video::Bink::BinkVideoTrack::blockResidue(), Video::Bink::BinkVideoTrack::blockRun(), Video::Bink::BinkVideoTrack::blockScaledRun(), Sound::CodebookLibrary::copy(), Sound::WMACodec::decodeExpHuffman(), Sound::WMACodec::decodeExpLSP(), Video::XMVWMV2Codec::decodeFrame(), Video::XMVWMV2Codec::decodeIBlock(), Sound::WMACodec::decodeNoise(), Sound::WMACodec::decodeRunLevel(), Sound::WMACodec::evalBlockLength(), Video::Bink::BinkAudioTrack::getFloat(), Sound::WMACodec::getLargeVal(), Aurora::GFXFile::read2ComplementValue(), Video::Bink::BinkAudioTrack::readAudioCoeffs(), Video::Bink::BinkVideoTrack::readBlockTypes(), Video::Bink::BinkVideoTrack::readBundleCount(), Video::Bink::BinkVideoTrack::readDCS(), Video::Bink::BinkVideoTrack::readDCTCoeffs(), Video::Bink::BinkVideoTrack::readHuffman(), Video::Bink::BinkVideoTrack::readMotionValues(), Video::Bink::BinkVideoTrack::readResidue(), Video::Bink::BinkVideoTrack::readRuns(), Sound::WMACodec::readTotalGain(), and Sound::CodebookLibrary::rebuild().
|
pure virtual |
Return the stream position in bits.
Implemented in Common::BitStreamImpl< valueBits, isLE, isMSB2LSB >.
Referenced by Video::Bink::BinkVideoTrack::decodePacket(), Video::Bink::BinkVideoTrack::decodePlane(), Sound::WMACodec::decodeSpectralCoef(), and Sound::CodebookLibrary::rebuild().
|
pure virtual |
Rewind the bit stream back to the start.
Implemented in Common::BitStreamImpl< valueBits, isLE, isMSB2LSB >.
|
pure virtual |
Return the stream size in bits.
Implemented in Common::BitStreamImpl< valueBits, isLE, isMSB2LSB >.
Referenced by Video::Bink::BinkVideoTrack::decodePacket().
|
pure virtual |
Skip the specified amount of bits.
Implemented in Common::BitStreamImpl< valueBits, isLE, isMSB2LSB >.
Referenced by Video::Bink::BinkAudioTrack::audioBlockDCT(), Video::XMVWMV2Codec::decodeFrame(), Video::Bink::BinkVideoTrack::decodePacket(), Video::Bink::BinkVideoTrack::decodePlane(), and Sound::WMACodec::decodeSpectralCoef().