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/Deflate/DeflateEncoder.h')
-rwxr-xr-xCPP/7zip/Compress/Deflate/DeflateEncoder.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/CPP/7zip/Compress/Deflate/DeflateEncoder.h b/CPP/7zip/Compress/Deflate/DeflateEncoder.h
index 86eede6f..a7b2bb5b 100755
--- a/CPP/7zip/Compress/Deflate/DeflateEncoder.h
+++ b/CPP/7zip/Compress/Deflate/DeflateEncoder.h
@@ -24,7 +24,7 @@ struct CCodeValue
UInt16 Len;
UInt16 Pos;
void SetAsLiteral() { Len = (1 << 15); }
- bool IsLiteral() const { return ((Len & (1 << 15)) != 0); }
+ bool IsLiteral() const { return (Len >= (1 << 15)); }
};
struct COptimal
@@ -67,6 +67,8 @@ public:
UInt16 *m_MatchDistances;
UInt32 m_NumFastBytes;
+ bool _fastMode;
+ bool _btMode;
UInt16 *m_OnePosMatchesMemory;
UInt16 *m_DistanceMemory;
@@ -123,8 +125,11 @@ public:
void MovePos(UInt32 num);
UInt32 Backward(UInt32 &backRes, UInt32 cur);
UInt32 GetOptimal(UInt32 &backRes);
+ UInt32 GetOptimalFast(UInt32 &backRes);
void LevelTableDummy(const Byte *levels, int numLevels, UInt32 *freqs);
+
+ void WriteBits(UInt32 value, int numBits);
void LevelTableCode(const Byte *levels, int numLevels, const Byte *lens, const UInt32 *codes);
void MakeTables();