lzx.h
来自「由7-zip提供的压缩、解压缩程序」· C头文件 代码 · 共 62 行
H
62 行
// Lzx.h#ifndef __COMPRESS_LZX_H#define __COMPRESS_LZX_Hnamespace NCompress {namespace NLzx {const int kNumHuffmanBits = 16;const UInt32 kNumRepDistances = 3;const UInt32 kNumLenSlots = 8;const UInt32 kMatchMinLen = 2;const UInt32 kNumLenSymbols = 249;const UInt32 kMatchMaxLen = kMatchMinLen + (kNumLenSlots - 1) + kNumLenSymbols - 1;const int kNumAlignBits = 3;const UInt32 kAlignTableSize = 1 << kNumAlignBits;const UInt32 kNumPosSlots = 50;const UInt32 kNumPosLenSlots = kNumPosSlots * kNumLenSlots;const UInt32 kMainTableSize = 256 + kNumPosLenSlots;const UInt32 kLevelTableSize = 20;const UInt32 kMaxTableSize = kMainTableSize;const int kNumBlockTypeBits = 3;const int kBlockTypeVerbatim = 1;const int kBlockTypeAligned = 2;const int kBlockTypeUncompressed = 3;const int kUncompressedBlockSizeNumBits = 24;const int kNumBitsForPreTreeLevel = 4;const int kLevelSymbolZeros = 17;const int kLevelSymbolZerosBig = 18;const int kLevelSymbolSame = 19;const int kLevelSymbolZerosStartValue = 4;const int kLevelSymbolZerosNumBits = 4;const int kLevelSymbolZerosBigStartValue = kLevelSymbolZerosStartValue + (1 << kLevelSymbolZerosNumBits);const int kLevelSymbolZerosBigNumBits = 5;const int kLevelSymbolSameNumBits = 1;const int kLevelSymbolSameStartValue = 4;const int kNumBitsForAlignLevel = 3; const int kNumDictionaryBitsMin = 15;const int kNumDictionaryBitsMax = 21;const UInt32 kDictionarySizeMax = (1 << kNumDictionaryBitsMax);const int kNumLinearPosSlotBits = 17;const UInt32 kNumPowerPosSlots = 0x26;}}#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?