#ifndef _EYD_BITCOMPRESSOR_HH #define _EYD_BITCOMPRESSOR_HH #include #include #include #include #include #include "eyd_bitgroup.hh" #include "eyd_global.hh" #include "eyd_iface.hh" namespace EydLib { class BitCompressor { private: BitGroup _rle; BitGroup _last_group; int _last_count; int _group_size; std::list _compressed; public: BitCompressor::BitCompressor(int size); void clear(); void append(BitGroup bg); std::list flush(); bool hasContent(); void flushRleData(); void flushRawData(); }; } #endif