コード例 #1
0
            public CQI_ReportPeriodicProcExt_r11 Decode(BitArrayInputStream input)
            {
                CQI_ReportPeriodicProcExt_r11 _r = new CQI_ReportPeriodicProcExt_r11();

                _r.InitDefaults();
                BitMaskStream stream = (input.readBit() != 0) ? new BitMaskStream(input, 2) : new BitMaskStream(input, 2);

                _r.cqi_ReportPeriodicProcExtId_r11 = input.readBits(2) + 1;
                _r.cqi_pmi_ConfigIndex_r11         = input.readBits(10);
                _r.cqi_FormatIndicatorPeriodic_r11 = cqi_FormatIndicatorPeriodic_r11_Type.PerDecoder.Instance.Decode(input);
                if (stream.Read())
                {
                    _r.ri_ConfigIndex_r11 = input.readBits(10);
                }
                if (stream.Read())
                {
                    _r.csi_ConfigIndex_r11 = csi_ConfigIndex_r11_Type.PerDecoder.Instance.Decode(input);
                }
                return(_r);
            }
コード例 #2
0
            public CQI_ReportPeriodic_v1130 Decode(BitArrayInputStream input)
            {
                int num2;
                CQI_ReportPeriodic_v1130 _v = new CQI_ReportPeriodic_v1130();

                _v.InitDefaults();
                BitMaskStream stream = new BitMaskStream(input, 3);

                if (stream.Read())
                {
                    num2 = 1;
                    _v.simultaneousAckNackAndCQI_Format3_r11 = (simultaneousAckNackAndCQI_Format3_r11_Enum)input.readBits(num2);
                }
                if (stream.Read())
                {
                    _v.cqi_ReportPeriodicProcExtToReleaseList_r11 = new List <long>();
                    num2 = 2;
                    int num3 = input.readBits(num2) + 1;
                    for (int i = 0; i < num3; i++)
                    {
                        long item = input.readBits(2) + 1;
                        _v.cqi_ReportPeriodicProcExtToReleaseList_r11.Add(item);
                    }
                }
                if (stream.Read())
                {
                    _v.cqi_ReportPeriodicProcExtToAddModList_r11 = new List <CQI_ReportPeriodicProcExt_r11>();
                    num2 = 2;
                    int num6 = input.readBits(num2) + 1;
                    for (int j = 0; j < num6; j++)
                    {
                        CQI_ReportPeriodicProcExt_r11 _r = CQI_ReportPeriodicProcExt_r11.PerDecoder.Instance.Decode(input);
                        _v.cqi_ReportPeriodicProcExtToAddModList_r11.Add(_r);
                    }
                }
                return(_v);
            }
コード例 #3
0
ファイル: CQI_Report.cs プロジェクト: ouyh18/LteTools
 public CQI_ReportPeriodicProcExt_r11 Decode(BitArrayInputStream input)
 {
     CQI_ReportPeriodicProcExt_r11 _r = new CQI_ReportPeriodicProcExt_r11();
     _r.InitDefaults();
     BitMaskStream stream = (input.readBit() != 0) ? new BitMaskStream(input, 2) : new BitMaskStream(input, 2);
     _r.cqi_ReportPeriodicProcExtId_r11 = input.readBits(2) + 1;
     _r.cqi_pmi_ConfigIndex_r11 = input.readBits(10);
     _r.cqi_FormatIndicatorPeriodic_r11 = cqi_FormatIndicatorPeriodic_r11_Type.PerDecoder.Instance.Decode(input);
     if (stream.Read())
     {
         _r.ri_ConfigIndex_r11 = input.readBits(10);
     }
     if (stream.Read())
     {
         _r.csi_ConfigIndex_r11 = csi_ConfigIndex_r11_Type.PerDecoder.Instance.Decode(input);
     }
     return _r;
 }