Octane v1.01.20 - The Open Compression Toolkit for C++ | http://octane.sourceforge.net/ |
00001 00002 00003 00004 00005 00006 00007 00008 00009 //--------------------------------------------------------------------------- 00010 00011 //--------------------------------------------------------------------------- 00012 // recursive header protection 00013 #ifndef SubStrHuffCompressorH 00014 #define SubStrHuffCompressorH 00015 //--------------------------------------------------------------------------- 00016 00017 //--------------------------------------------------------------------------- 00018 // application includes 00019 #include "../compressor_statistical.hpp" 00020 #include "../../coders/coder_huffman/huffmancoder.hpp" 00021 #include "../../parsers/parser_substring/substringparser.hpp" 00022 #include "../../modelers/modeler_zeroorder/zeroorder_modeler.hpp" 00023 //--------------------------------------------------------------------------- 00024 00025 00026 00027 //--------------------------------------------------------------------------- 00034 class SubStrHuffCompressor : public OctaneCompressor_Statistical 00035 { 00036 public: 00038 SubStrHuffCompressor(bool registerme=false); 00040 ~SubStrHuffCompressor() {;}; 00041 public: 00042 //--------------------------------------------------------------------------- 00043 // OCTANE PUBLIC API - RTTI AND HELP FUNCTIONS - these are supported by all derived classes 00044 virtual std::string GetClassName() {return "SubStrHuff";} 00045 virtual std::string GetDescription() {return "SubString Huffman Compressor";} 00046 //--------------------------------------------------------------------------- 00047 public: 00048 //--------------------------------------------------------------------------- 00049 // COMPRESSOR PUBLIC API - FACTORY FUNCTION / MAKE AN INSTANTIATION OF DERIVED COMPRESSOR 00050 virtual OctaneCompressor *MakeCompressorInstantiation() {return new SubStrHuffCompressor();}; 00051 //--------------------------------------------------------------------------- 00052 }; 00053 //--------------------------------------------------------------------------- 00054 00055 00056 00057 00058 00059 00060 //--------------------------------------------------------------------------- 00061 #endif 00062 //---------------------------------------------------------------------------