public uint Decode(SevenZip.Compression.RangeCoder.Decoder rangeDecoder, uint posState) { if (m_Choice.Decode(rangeDecoder) == 0) { return(m_LowCoder[posState].Decode(rangeDecoder)); } uint num = 8u; if (m_Choice2.Decode(rangeDecoder) == 0) { return(num + m_MidCoder[posState].Decode(rangeDecoder)); } num += 8; return(num + m_HighCoder.Decode(rangeDecoder)); }
/// <summary> /// Decodes the stream /// </summary> /// <param name="rangeDecoder">The specified RangeCoder</param> /// <param name="posState">The position state</param> /// <returns></returns> public uint Decode(RangeCoder.Decoder rangeDecoder, uint posState) { if (m_Choice.Decode(rangeDecoder) == 0) return m_LowCoder[posState].Decode(rangeDecoder); else { uint symbol = Base.kNumLowLenSymbols; if (m_Choice2.Decode(rangeDecoder) == 0) symbol += m_MidCoder[posState].Decode(rangeDecoder); else { symbol += Base.kNumMidLenSymbols; symbol += m_HighCoder.Decode(rangeDecoder); } return symbol; } }
public uint Decode(RangeCoder.Decoder rangeDecoder, uint posState) { if (_mChoice.Decode(rangeDecoder) == 0) { return(_mLowCoder[posState].Decode(rangeDecoder)); } var symbol = Base.KNumLowLenSymbols; if (_mChoice2.Decode(rangeDecoder) == 0) { symbol += _mMidCoder[posState].Decode(rangeDecoder); } else { symbol += Base.KNumMidLenSymbols; symbol += _mHighCoder.Decode(rangeDecoder); } return(symbol); }
public uint Decode(RangeCoder.Decoder rangeDecoder, uint posState) { if (_choice.Decode(rangeDecoder) == 0) { return(_lowCoder[posState].Decode(rangeDecoder)); } uint symbol = Base.K_NUM_LOW_LEN_SYMBOLS; if (_choice2.Decode(rangeDecoder) == 0) { symbol += _midCoder[posState].Decode(rangeDecoder); } else { symbol += Base.K_NUM_MID_LEN_SYMBOLS; symbol += _highCoder.Decode(rangeDecoder); } return(symbol); }
public uint Decode(Decoder rangeDecoder, uint posState) { if (m_Choice.Decode(rangeDecoder) == 0) { return(m_LowCoder[posState].Decode(rangeDecoder)); } uint symbol = kNumLowLenSymbols; if (m_Choice2.Decode(rangeDecoder) == 0) { symbol += m_MidCoder[posState].Decode(rangeDecoder); } else { symbol += kNumMidLenSymbols; symbol += m_HighCoder.Decode(rangeDecoder); } return(symbol); }
public uint Decode(SevenZip.Compression.RangeCoder.Decoder rangeDecoder, uint posState) { if (m_Choice.Decode(rangeDecoder) == 0) { return(m_LowCoder[posState].Decode(rangeDecoder)); } else { uint symbol = Base.kNumLowLenSymbols; if (m_Choice2.Decode(rangeDecoder) == 0) { symbol += m_MidCoder[posState].Decode(rangeDecoder); } else { symbol += Base.kNumMidLenSymbols; symbol += m_HighCoder.Decode(rangeDecoder); } return(symbol); } }
public uint Decode(RangeCoder.Decoder rangeDecoder, uint posState) { if (_choice.Decode(rangeDecoder) == 0) { return(_lowCoder[posState].Decode(rangeDecoder)); } else { uint symbol = Base.kNumLowLenSymbols; if (_choice2.Decode(rangeDecoder) == 0) { symbol += _midCoder[posState].Decode(rangeDecoder); } else { symbol += Base.kNumMidLenSymbols; symbol += _highCoder.Decode(rangeDecoder); } return(symbol); } }
public uint Decode(global::Legendigital.Framework.Common.SevenZip.Compress.RangeCoder.Decoder rangeDecoder, uint posState) { if (m_Choice.Decode(rangeDecoder) == 0) { return(m_LowCoder[posState].Decode(rangeDecoder)); } else { uint symbol = Base.kNumLowLenSymbols; if (m_Choice2.Decode(rangeDecoder) == 0) { symbol += m_MidCoder[posState].Decode(rangeDecoder); } else { symbol += Base.kNumMidLenSymbols; symbol += m_HighCoder.Decode(rangeDecoder); } return(symbol); } }