예제 #1
0
            public PDCP_Config Decode(BitArrayInputStream input)
            {
                int           num2;
                BitMaskStream stream2;
                PDCP_Config   config = new PDCP_Config();

                config.InitDefaults();
                bool          flag   = input.ReadBit() != 0;
                BitMaskStream stream = new BitMaskStream(input, 3);

                if (stream.Read())
                {
                    num2 = 3;
                    config.discardTimer = (discardTimer_Enum)input.ReadBits(num2);
                }
                if (stream.Read())
                {
                    config.rlc_AM = rlc_AM_Type.PerDecoder.Instance.Decode(input);
                }
                if (stream.Read())
                {
                    config.rlc_UM = rlc_UM_Type.PerDecoder.Instance.Decode(input);
                }
                config.headerCompression = headerCompression_Type.PerDecoder.Instance.Decode(input);
                if (flag)
                {
                    stream2 = new BitMaskStream(input, 1);
                    if (stream2.Read())
                    {
                        num2 = 1;
                        config.rn_IntegrityProtection_r10 = (rn_IntegrityProtection_r10_Enum)input.ReadBits(num2);
                    }
                }
                if (flag)
                {
                    stream2 = new BitMaskStream(input, 1);
                    if (stream2.Read())
                    {
                        num2 = 1;
                        config.pdcp_SN_Size_v1130 = (pdcp_SN_Size_v1130_Enum)input.ReadBits(num2);
                    }
                }
                return(config);
            }
예제 #2
0
파일: PDCP.cs 프로젝트: ouyh18/LtePlatform
 public PDCP_Config Decode(BitArrayInputStream input)
 {
     int num2;
     BitMaskStream stream2;
     PDCP_Config config = new PDCP_Config();
     config.InitDefaults();
     bool flag = input.ReadBit() != 0;
     BitMaskStream stream = new BitMaskStream(input, 3);
     if (stream.Read())
     {
         num2 = 3;
         config.discardTimer = (discardTimer_Enum)input.ReadBits(num2);
     }
     if (stream.Read())
     {
         config.rlc_AM = rlc_AM_Type.PerDecoder.Instance.Decode(input);
     }
     if (stream.Read())
     {
         config.rlc_UM = rlc_UM_Type.PerDecoder.Instance.Decode(input);
     }
     config.headerCompression = headerCompression_Type.PerDecoder.Instance.Decode(input);
     if (flag)
     {
         stream2 = new BitMaskStream(input, 1);
         if (stream2.Read())
         {
             num2 = 1;
             config.rn_IntegrityProtection_r10 = (rn_IntegrityProtection_r10_Enum)input.ReadBits(num2);
         }
     }
     if (flag)
     {
         stream2 = new BitMaskStream(input, 1);
         if (stream2.Read())
         {
             num2 = 1;
             config.pdcp_SN_Size_v1130 = (pdcp_SN_Size_v1130_Enum)input.ReadBits(num2);
         }
     }
     return config;
 }