Files
easy7zip/7zip/Compress/Shrink/ShrinkDecoder.h
Igor Pavlov 3c510ba80b 4.20
2016-05-28 00:15:41 +01:00

40 lines
863 B
C++
Executable File

// ShrinkDecoder.h
#ifndef __SHRINK_DECODER_H
#define __SHRINK_DECODER_H
#include "../../../Common/MyCom.h"
#include "../../ICoder.h"
namespace NCompress {
namespace NShrink {
const int kNumMaxBits = 13;
const UInt32 kNumItems = 1 << kNumMaxBits;
class CDecoder :
public ICompressCoder,
public CMyUnknownImp
{
UInt16 _parents[kNumItems];
Byte _suffixes[kNumItems];
Byte _stack[kNumItems];
bool _isFree[kNumItems];
bool _isParent[kNumItems];
public:
MY_UNKNOWN_IMP
STDMETHOD(CodeReal)(ISequentialInStream *inStream, ISequentialOutStream *outStream,
const UInt64 *inSize, const UInt64 *outSize,
ICompressProgressInfo *progress);
STDMETHOD(Code)(ISequentialInStream *inStream, ISequentialOutStream *outStream,
const UInt64 *inSize, const UInt64 *outSize,
ICompressProgressInfo *progress);
};
}}
#endif