25 #ifndef __CLOCKUTILS_COMPRESSION_ALGORITHM_HUFFMANFIXED_H__ 26 #define __CLOCKUTILS_COMPRESSION_ALGORITHM_HUFFMANFIXED_H__ 31 namespace compression {
43 static ClockError compress(
const std::string & uncompressed, std::string & compressed);
48 static ClockError decompress(
const std::string & compressed, std::string & decompressed);
54 static std::shared_ptr<Node> root;
59 static std::vector<std::vector<bool>> mappings;
64 static void convert(
const std::string & text,
size_t index, std::string & result);
#define CLOCK_COMPRESSION_API
class for Huffman compression using a fixed dictionary has no header like HuffmanGeneric, but can't optimize as good as HuffmanGeneric
base class for Huffman compression contains common methods and helper structures