mirror of
https://github.com/tumic0/GPXSee.git
synced 2025-03-31 11:48:27 +02:00
33 lines
705 B
C++
33 lines
705 B
C++
#ifndef IMG_HUFFMANTABLE_H
|
|
#define IMG_HUFFMANTABLE_H
|
|
|
|
#include "huffmanbuffer.h"
|
|
|
|
namespace IMG {
|
|
|
|
class RGNFile;
|
|
|
|
class HuffmanTable {
|
|
public:
|
|
HuffmanTable(quint8 id) : _buffer(id) {}
|
|
|
|
bool load(const RGNFile *rgn, SubFile::Handle &rgnHdl);
|
|
|
|
quint32 symbol(quint32 data, quint8 &size) const;
|
|
quint8 id() const {return _buffer.id();}
|
|
|
|
quint8 symBits() const {return _symBits;}
|
|
quint8 symbolBits() const {return _symbolBits;}
|
|
|
|
private:
|
|
HuffmanBuffer _buffer;
|
|
const quint8 *_aclTable, *_bsrchTable, *_huffmanTable;
|
|
quint8 _aclBits, _aclEntryBytes, _symBits, _symBytes, _indexBytes,
|
|
_bsrchEntryBytes, _bsrchEntries, _symbolBits, _symbolBytes;
|
|
bool _huffman;
|
|
};
|
|
|
|
}
|
|
|
|
#endif // IMG_HUFFMANTABLE_H
|