public class Encoder
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
(package private) class |
Encoder.LenEncoder |
(package private) class |
Encoder.LenPriceTableEncoder |
(package private) class |
Encoder.LiteralEncoder |
(package private) class |
Encoder.Optimal |
Modifier and Type | Field and Description |
---|---|
(package private) int |
_additionalOffset |
(package private) int |
_alignPriceCount |
(package private) int[] |
_alignPrices |
(package private) int |
_dictionarySize |
(package private) int |
_dictionarySizePrev |
(package private) int[] |
_distancesPrices |
(package private) int |
_distTableSize |
(package private) boolean |
_finished |
(package private) java.io.InputStream |
_inStream |
(package private) short[] |
_isMatch |
(package private) short[] |
_isRep |
(package private) short[] |
_isRep0Long |
(package private) short[] |
_isRepG0 |
(package private) short[] |
_isRepG1 |
(package private) short[] |
_isRepG2 |
(package private) Encoder.LenPriceTableEncoder |
_lenEncoder |
(package private) Encoder.LiteralEncoder |
_literalEncoder |
(package private) int |
_longestMatchLength |
(package private) boolean |
_longestMatchWasFound |
(package private) int[] |
_matchDistances |
(package private) BinTree |
_matchFinder |
(package private) int |
_matchFinderType |
(package private) int |
_matchPriceCount |
(package private) boolean |
_needReleaseMFStream |
(package private) int |
_numDistancePairs |
(package private) int |
_numFastBytes |
(package private) int |
_numFastBytesPrev |
(package private) int |
_numLiteralContextBits |
(package private) int |
_numLiteralPosStateBits |
(package private) Encoder.Optimal[] |
_optimum |
(package private) int |
_optimumCurrentIndex |
(package private) int |
_optimumEndIndex |
(package private) BitTreeEncoder |
_posAlignEncoder |
(package private) short[] |
_posEncoders |
(package private) BitTreeEncoder[] |
_posSlotEncoder |
(package private) int[] |
_posSlotPrices |
(package private) int |
_posStateBits |
(package private) int |
_posStateMask |
(package private) byte |
_previousByte |
(package private) Encoder |
_rangeEncoder |
(package private) int[] |
_repDistances |
(package private) Encoder.LenPriceTableEncoder |
_repMatchLenEncoder |
(package private) int |
_state |
(package private) boolean |
_writeEndMark |
(package private) int |
backRes |
static int |
EMatchFinderTypeBT2 |
static int |
EMatchFinderTypeBT4 |
(package private) boolean[] |
finished |
(package private) static byte[] |
g_FastPos |
(package private) static int |
kDefaultDictionaryLogSize |
(package private) static int |
kIfinityPrice |
(package private) static int |
kNumFastBytesDefault |
(package private) static int |
kNumOpts |
static int |
kPropSize |
(package private) long |
nowPos64 |
(package private) long[] |
processedInSize |
(package private) long[] |
processedOutSize |
(package private) byte[] |
properties |
(package private) int[] |
repLens |
(package private) int[] |
reps |
(package private) int[] |
tempPrices |
Constructor and Description |
---|
Encoder() |
Modifier and Type | Method and Description |
---|---|
(package private) int |
backward(int cur) |
(package private) void |
baseInit() |
void |
code(java.io.InputStream inStream,
java.io.OutputStream outStream,
long inSize,
long outSize,
ICodeProgress progress) |
void |
codeOneBlock(long[] inSize,
long[] outSize,
boolean[] finished) |
(package private) void |
create() |
(package private) void |
fillAlignPrices() |
(package private) void |
fillDistancesPrices() |
(package private) void |
flush(int nowPos) |
(package private) int |
getOptimum(int position) |
(package private) int |
getPosLenPrice(int pos,
int len,
int posState) |
(package private) static int |
getPosSlot(int pos) |
(package private) static int |
getPosSlot2(int pos) |
(package private) int |
getPureRepPrice(int repIndex,
int state,
int posState) |
(package private) int |
getRepLen1Price(int state,
int posState) |
(package private) int |
getRepPrice(int repIndex,
int len,
int state,
int posState) |
(package private) void |
init() |
(package private) void |
movePos(int num) |
(package private) int |
readMatchDistances() |
(package private) void |
releaseMFStream() |
(package private) void |
releaseOutStream() |
(package private) void |
releaseStreams() |
boolean |
setAlgorithm(int algorithm) |
boolean |
setDictionarySize(int dictionarySize) |
void |
setEndMarkerMode(boolean endMarkerMode) |
boolean |
setLcLpPb(int lc,
int lp,
int pb) |
boolean |
setMatchFinder(int matchFinderIndex) |
boolean |
setNumFastBytes(int numFastBytes) |
(package private) void |
setOutStream(java.io.OutputStream outStream) |
(package private) void |
setStreams(java.io.InputStream inStream,
java.io.OutputStream outStream) |
void |
writeCoderProperties(java.io.OutputStream outStream) |
(package private) void |
writeEndMarker(int posState) |
public static final int EMatchFinderTypeBT2
public static final int EMatchFinderTypeBT4
static final int kIfinityPrice
static byte[] g_FastPos
int _state
byte _previousByte
int[] _repDistances
static final int kDefaultDictionaryLogSize
static final int kNumFastBytesDefault
static final int kNumOpts
Encoder.Optimal[] _optimum
BinTree _matchFinder
Encoder _rangeEncoder
short[] _isMatch
short[] _isRep
short[] _isRepG0
short[] _isRepG1
short[] _isRepG2
short[] _isRep0Long
BitTreeEncoder[] _posSlotEncoder
short[] _posEncoders
BitTreeEncoder _posAlignEncoder
Encoder.LenPriceTableEncoder _lenEncoder
Encoder.LenPriceTableEncoder _repMatchLenEncoder
Encoder.LiteralEncoder _literalEncoder
int[] _matchDistances
int _numFastBytes
int _longestMatchLength
int _numDistancePairs
int _additionalOffset
int _optimumEndIndex
int _optimumCurrentIndex
boolean _longestMatchWasFound
int[] _posSlotPrices
int[] _distancesPrices
int[] _alignPrices
int _alignPriceCount
int _distTableSize
int _posStateBits
int _posStateMask
int _numLiteralPosStateBits
int _numLiteralContextBits
int _dictionarySize
int _dictionarySizePrev
int _numFastBytesPrev
long nowPos64
boolean _finished
java.io.InputStream _inStream
int _matchFinderType
boolean _writeEndMark
boolean _needReleaseMFStream
int[] reps
int[] repLens
int backRes
long[] processedInSize
long[] processedOutSize
boolean[] finished
public static final int kPropSize
byte[] properties
int[] tempPrices
int _matchPriceCount
static int getPosSlot(int pos)
static int getPosSlot2(int pos)
void baseInit()
void create()
void init()
int readMatchDistances() throws java.io.IOException
java.io.IOException
void movePos(int num) throws java.io.IOException
java.io.IOException
int getRepLen1Price(int state, int posState)
int getPureRepPrice(int repIndex, int state, int posState)
int getRepPrice(int repIndex, int len, int state, int posState)
int getPosLenPrice(int pos, int len, int posState)
int backward(int cur)
int getOptimum(int position) throws java.io.IOException
java.io.IOException
void writeEndMarker(int posState) throws java.io.IOException
java.io.IOException
void flush(int nowPos) throws java.io.IOException
java.io.IOException
public void codeOneBlock(long[] inSize, long[] outSize, boolean[] finished) throws java.io.IOException
java.io.IOException
void releaseMFStream()
void setOutStream(java.io.OutputStream outStream)
void releaseOutStream()
void releaseStreams()
void setStreams(java.io.InputStream inStream, java.io.OutputStream outStream)
public void code(java.io.InputStream inStream, java.io.OutputStream outStream, long inSize, long outSize, ICodeProgress progress) throws java.io.IOException
java.io.IOException
public void writeCoderProperties(java.io.OutputStream outStream) throws java.io.IOException
java.io.IOException
void fillDistancesPrices()
void fillAlignPrices()
public boolean setAlgorithm(int algorithm)
public boolean setDictionarySize(int dictionarySize)
public boolean setNumFastBytes(int numFastBytes)
public boolean setMatchFinder(int matchFinderIndex)
public boolean setLcLpPb(int lc, int lp, int pb)
public void setEndMarkerMode(boolean endMarkerMode)