Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/kornelski/7z.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'CPP/7zip/Compress/Rar1Decoder.h')
-rw-r--r--CPP/7zip/Compress/Rar1Decoder.h50
1 files changed, 19 insertions, 31 deletions
diff --git a/CPP/7zip/Compress/Rar1Decoder.h b/CPP/7zip/Compress/Rar1Decoder.h
index 01b606b3..52907e5c 100644
--- a/CPP/7zip/Compress/Rar1Decoder.h
+++ b/CPP/7zip/Compress/Rar1Decoder.h
@@ -20,49 +20,45 @@ namespace NRar1 {
const UInt32 kNumRepDists = 4;
-typedef NBitm::CDecoder<CInBuffer> CBitDecoder;
-
class CDecoder :
public ICompressCoder,
public ICompressSetDecoderProperties2,
public CMyUnknownImp
{
-public:
CLzOutWindow m_OutWindowStream;
- CBitDecoder m_InBitStream;
+ NBitm::CDecoder<CInBuffer> m_InBitStream;
- UInt32 m_RepDists[kNumRepDists];
- UInt32 m_RepDistPtr;
+ UInt64 m_UnpackSize;
UInt32 LastDist;
UInt32 LastLength;
- Int64 m_UnpackSize;
- bool m_IsSolid;
- bool _errorMode;
+ UInt32 m_RepDistPtr;
+ UInt32 m_RepDists[kNumRepDists];
- UInt32 ReadBits(int numBits);
- HRESULT CopyBlock(UInt32 distance, UInt32 len);
+ bool _isSolid;
+ bool _solidAllowed;
- UInt32 DecodeNum(const UInt32 *posTab);
+ bool StMode;
+ int FlagsCnt;
+ UInt32 FlagBuf, AvrPlc, AvrPlcB, AvrLn1, AvrLn2, AvrLn3;
+ unsigned Buf60, NumHuf, LCount;
+ UInt32 Nhfb, Nlzb, MaxDist3;
+
+ UInt32 ChSet[256], ChSetA[256], ChSetB[256], ChSetC[256];
+ UInt32 Place[256], PlaceA[256], PlaceB[256], PlaceC[256];
+ UInt32 NToPl[256], NToPlB[256], NToPlC[256];
+
+ UInt32 ReadBits(unsigned numBits);
+ HRESULT CopyBlock(UInt32 distance, UInt32 len);
+ UInt32 DecodeNum(const Byte *numTab);
HRESULT ShortLZ();
HRESULT LongLZ();
HRESULT HuffDecode();
void GetFlagsBuf();
- void InitData();
- void InitHuff();
void CorrHuff(UInt32 *CharSet, UInt32 *NumToPlace);
void OldUnpWriteBuf();
- UInt32 ChSet[256],ChSetA[256],ChSetB[256],ChSetC[256];
- UInt32 Place[256],PlaceA[256],PlaceB[256],PlaceC[256];
- UInt32 NToPl[256],NToPlB[256],NToPlC[256];
- UInt32 FlagBuf,AvrPlc,AvrPlcB,AvrLn1,AvrLn2,AvrLn3;
- int Buf60,NumHuf,StMode,LCount,FlagsCnt;
- UInt32 Nhfb,Nlzb,MaxDist3;
-
- void InitStructures();
-
HRESULT CodeReal(ISequentialInStream *inStream, ISequentialOutStream *outStream,
const UInt64 *inSize, const UInt64 *outSize, ICompressProgressInfo *progress);
@@ -71,14 +67,6 @@ public:
MY_UNKNOWN_IMP1(ICompressSetDecoderProperties2)
- /*
- void ReleaseStreams()
- {
- m_OutWindowStream.ReleaseStream();
- m_InBitStream.ReleaseStream();
- }
- */
-
STDMETHOD(Code)(ISequentialInStream *inStream, ISequentialOutStream *outStream,
const UInt64 *inSize, const UInt64 *outSize, ICompressProgressInfo *progress);