xref: /aosp_15_r20/external/lzma/CPP/7zip/Compress/ShrinkDecoder.h (revision f6dc9357d832569d4d1f5d24eacdb3935a1ae8e6)
1 // ShrinkDecoder.h
2 
3 #ifndef ZIP7_INC_COMPRESS_SHRINK_DECODER_H
4 #define ZIP7_INC_COMPRESS_SHRINK_DECODER_H
5 
6 #include "../../Common/MyCom.h"
7 
8 #include "../ICoder.h"
9 
10 namespace NCompress {
11 namespace NShrink {
12 
13 const unsigned kNumMaxBits = 13;
14 const unsigned kNumItems = 1 << kNumMaxBits;
15 
16 Z7_CLASS_IMP_NOQIB_3(
17   CDecoder
18   , ICompressCoder
19   , ICompressSetFinishMode
20   , ICompressGetInStreamProcessedSize
21 )
22   bool _fullStreamMode;
23   UInt64 _inProcessed;
24 
25   UInt16 _parents[kNumItems];
26   Byte _suffixes[kNumItems];
27   Byte _stack[kNumItems];
28 
29   HRESULT CodeReal(ISequentialInStream *inStream, ISequentialOutStream *outStream,
30       const UInt64 *inSize, const UInt64 *outSize, ICompressProgressInfo *progress);
31 };
32 
33 }}
34 
35 #endif
36