00001 #ifndef __J2K__LZH__LZHLEncoderStat_HPP__ 00002 #define __J2K__LZH__LZHLEncoderStat_HPP__ 00003 00004 class LZHLEncoderStat : public HuffStat { 00005 public: 00006 struct Symbol { 00007 HUFFINT nBits; 00008 HUFFUINT code; 00009 }; 00010 00011 public: 00012 LZHLEncoderStat(); 00013 ~LZHLEncoderStat(); 00014 00015 public: 00016 void calcStat( int* groups ); 00017 00018 private: 00019 inline static void _addGroup( int* groups, int group, int nBits ); 00020 00021 public: 00022 int nextStat; 00023 00024 static Symbol symbolTable0[]; 00025 Symbol* symbolTable; 00026 }; 00027 00028 #endif