Exemple #1
0
                public byte DecodeNormal(SevenZip.Sdk.Compression.RangeCoder.Decoder rangeDecoder)
                {
                    uint num = 1;

                    do
                    {
                        num = num << 1 | this.m_Decoders[num].Decode(rangeDecoder);
                    }while (num < 256U);
                    return((byte)num);
                }
Exemple #2
0
            public uint Decode(SevenZip.Sdk.Compression.RangeCoder.Decoder rangeDecoder, uint posState)
            {
                if (this.m_Choice.Decode(rangeDecoder) == 0U)
                {
                    return(this.m_LowCoder[posState].Decode(rangeDecoder));
                }
                uint num = 8;

                return(this.m_Choice2.Decode(rangeDecoder) != 0U ? num + 8U + this.m_HighCoder.Decode(rangeDecoder) : num + this.m_MidCoder[posState].Decode(rangeDecoder));
            }
Exemple #3
0
                public byte DecodeWithMatchByte(SevenZip.Sdk.Compression.RangeCoder.Decoder rangeDecoder, byte matchByte)
                {
                    uint num1 = 1;

                    do
                    {
                        uint num2 = (uint)((int)matchByte >> 7 & 1);
                        matchByte <<= 1;
                        uint num3 = this.m_Decoders[((uint)(1 + (int)num2 << 8) + num1)].Decode(rangeDecoder);
                        num1 = num1 << 1 | num3;
                        if ((int)num2 != (int)num3)
                        {
                            while (num1 < 256U)
                            {
                                num1 = num1 << 1 | this.m_Decoders[num1].Decode(rangeDecoder);
                            }
                            break;
                        }
                    }while (num1 < 256U);
                    return((byte)num1);
                }
Exemple #4
0
 public byte DecodeWithMatchByte(SevenZip.Sdk.Compression.RangeCoder.Decoder rangeDecoder, uint pos, byte prevByte, byte matchByte)
 {
     return(this.m_Coders[this.GetState(pos, prevByte)].DecodeWithMatchByte(rangeDecoder, matchByte));
 }
Exemple #5
0
 public byte DecodeNormal(SevenZip.Sdk.Compression.RangeCoder.Decoder rangeDecoder, uint pos, byte prevByte)
 {
     return(this.m_Coders[this.GetState(pos, prevByte)].DecodeNormal(rangeDecoder));
 }