_literalEncoder.getSubCoder(position, _previousByte).getPrice(!Base.stateIsCharState(_state), matchByte, currentByte); _optimum[1].makeAsChar(); lzma.sdk.rangecoder.Encoder.getPrice0(_isMatch[(state << Base.kNumPosStatesBitsMax) + posState]) + _literalEncoder.getSubCoder(position, _matchFinder.getIndexByte(0 - 2)). getPrice(!Base.stateIsCharState(state), matchByte, currentByte); lzma.sdk.rangecoder.Encoder.getPrice0(_isMatch[(state2 << Base.kNumPosStatesBitsMax) + posStateNext]) + _literalEncoder.getSubCoder(position + lenTest, _matchFinder.getIndexByte(lenTest - 1 - 1)).getPrice(true, _matchFinder.getIndexByte(lenTest - 1 - (reps[repIndex] + 1)), _matchFinder.getIndexByte(lenTest - 1)); _literalEncoder.getSubCoder(position + lenTest, _matchFinder.getIndexByte(lenTest - 1 - 1)). getPrice(true, _matchFinder.getIndexByte(lenTest - (curBack + 1) - 1), _matchFinder.getIndexByte(lenTest - 1));
_literalEncoder.getSubCoder(position, _previousByte).getPrice(!Base.stateIsCharState(_state), matchByte, currentByte); _optimum[1].makeAsChar(); lzma.sdk.rangecoder.Encoder.getPrice0(_isMatch[(state << Base.kNumPosStatesBitsMax) + posState]) + _literalEncoder.getSubCoder(position, _matchFinder.getIndexByte(0 - 2)). getPrice(!Base.stateIsCharState(state), matchByte, currentByte); lzma.sdk.rangecoder.Encoder.getPrice0(_isMatch[(state2 << Base.kNumPosStatesBitsMax) + posStateNext]) + _literalEncoder.getSubCoder(position + lenTest, _matchFinder.getIndexByte(lenTest - 1 - 1)).getPrice(true, _matchFinder.getIndexByte(lenTest - 1 - (reps[repIndex] + 1)), _matchFinder.getIndexByte(lenTest - 1)); _literalEncoder.getSubCoder(position + lenTest, _matchFinder.getIndexByte(lenTest - 1 - 1)). getPrice(true, _matchFinder.getIndexByte(lenTest - (curBack + 1) - 1), _matchFinder.getIndexByte(lenTest - 1));
_state = Base.stateUpdateChar(_state); byte curByte = _matchFinder.getIndexByte(0 - _additionalOffset); _literalEncoder.getSubCoder((int) (nowPos64), _previousByte).encode(_rangeEncoder, curByte); _previousByte = curByte; _additionalOffset--; subCoder.encodeMatched(_rangeEncoder, matchByte, curByte); subCoder.encode(_rangeEncoder, curByte);
_state = Base.stateUpdateChar(_state); byte curByte = _matchFinder.getIndexByte(0 - _additionalOffset); _literalEncoder.getSubCoder((int) (nowPos64), _previousByte).encode(_rangeEncoder, curByte); _previousByte = curByte; _additionalOffset--; subCoder.encodeMatched(_rangeEncoder, matchByte, curByte); subCoder.encode(_rangeEncoder, curByte);
public void create(int numPosBits, int numPrevBits) { if (m_Coders != null && m_NumPrevBits == numPrevBits && m_NumPosBits == numPosBits) { return; } m_NumPosBits = numPosBits; m_PosMask = (1 << numPosBits) - 1; m_NumPrevBits = numPrevBits; int numStates = 1 << (m_NumPrevBits + m_NumPosBits); m_Coders = new Encoder2[numStates]; for (int i = 0; i < numStates; i++) { m_Coders[i] = new Encoder2(); } }
public void create(int numPosBits, int numPrevBits) { if (m_Coders != null && m_NumPrevBits == numPrevBits && m_NumPosBits == numPosBits) { return; } m_NumPosBits = numPosBits; m_PosMask = (1 << numPosBits) - 1; m_NumPrevBits = numPrevBits; int numStates = 1 << (m_NumPrevBits + m_NumPosBits); m_Coders = new Encoder2[numStates]; for (int i = 0; i < numStates; i++) { m_Coders[i] = new Encoder2(); } }
public void init() { int numStates = 1 << (m_NumPrevBits + m_NumPosBits); for (int i = 0; i < numStates; i++) { m_Coders[i].init(); } }
public void init() { int numStates = 1 << (m_NumPrevBits + m_NumPosBits); for (int i = 0; i < numStates; i++) { m_Coders[i].init(); } }