libpgf
6.14.12
PGF - Progressive Graphics File
|
A macro block is an encoding unit of fixed size (uncoded) More...
Public Member Functions | |
CMacroBlock (CEncoder *encoder) | |
void | Init (int lastLevelIndex) |
void | BitplaneEncode () |
Public Attributes | |
DataT | m_value [BufferSize] |
input buffer of values with index m_valuePos More... | |
UINT32 | m_codeBuffer [CodeBufferLen] |
output buffer for encoded bitstream More... | |
ROIBlockHeader | m_header |
block header More... | |
UINT32 | m_valuePos |
current buffer position More... | |
UINT32 | m_maxAbsValue |
maximum absolute coefficient in each buffer More... | |
UINT32 | m_codePos |
current position in encoded bitstream More... | |
int | m_lastLevelIndex |
index of last encoded level: [0, nLevels); used because a level-end can occur before a buffer is full More... | |
Private Member Functions | |
UINT32 | RLESigns (UINT32 codePos, UINT32 *signBits, UINT32 signLen) |
UINT32 | DecomposeBitplane (UINT32 bufferSize, UINT32 planeMask, UINT32 codePos, UINT32 *sigBits, UINT32 *refBits, UINT32 *signBits, UINT32 &signLen, UINT32 &codeLen) |
UINT8 | NumberOfBitplanes () |
bool | GetBitAtPos (UINT32 pos, UINT32 planeMask) const |
Private Attributes | |
CEncoder * | m_encoder |
bool | m_sigFlagVector [BufferSize+1] |
A macro block is an encoding unit of fixed size (uncoded)
PGF encoder macro block class.
|
inline |
void CEncoder::CMacroBlock::BitplaneEncode | ( | ) |
Encodes this macro block into internal code buffer. Several macro blocks can be encoded in parallel. Call CEncoder::WriteMacroBlock after this method.
Definition at line 480 of file Encoder.cpp.
|
private |
Definition at line 632 of file Encoder.cpp.
|
inlineprivate |
|
inline |
|
private |
Definition at line 748 of file Encoder.cpp.
|
private |
Definition at line 772 of file Encoder.cpp.
UINT32 CEncoder::CMacroBlock::m_codeBuffer[CodeBufferLen] |
UINT32 CEncoder::CMacroBlock::m_codePos |
ROIBlockHeader CEncoder::CMacroBlock::m_header |
int CEncoder::CMacroBlock::m_lastLevelIndex |
UINT32 CEncoder::CMacroBlock::m_maxAbsValue |
|
private |
DataT CEncoder::CMacroBlock::m_value[BufferSize] |
UINT32 CEncoder::CMacroBlock::m_valuePos |