Beispiel #1
0
            public SystemInformationBlockType15_r11 Decode(BitArrayInputStream input)
            {
                int num2;
                var _r = new SystemInformationBlockType15_r11();

                _r.InitDefaults();
                var flag = false;

                flag = input.ReadBit() != 0;
                var stream = flag ? new BitMaskStream(input, 3) : new BitMaskStream(input, 3);

                if (stream.Read())
                {
                    _r.mbms_SAI_IntraFreq_r11 = new List <long>();
                    num2 = 6;
                    var num3 = input.ReadBits(num2) + 1;
                    for (var i = 0; i < num3; i++)
                    {
                        long item = input.ReadBits(0x10);
                        _r.mbms_SAI_IntraFreq_r11.Add(item);
                    }
                }
                if (stream.Read())
                {
                    _r.mbms_SAI_InterFreqList_r11 = new List <MBMS_SAI_InterFreq_r11>();
                    num2 = 3;
                    var num6 = input.ReadBits(num2) + 1;
                    for (var j = 0; j < num6; j++)
                    {
                        var _r2 = MBMS_SAI_InterFreq_r11.PerDecoder.Instance.Decode(input);
                        _r.mbms_SAI_InterFreqList_r11.Add(_r2);
                    }
                }
                if (stream.Read())
                {
                    var nBits = input.ReadBits(8);
                    _r.lateNonCriticalExtension = input.readOctetString(nBits);
                }
                if (flag)
                {
                    var stream2 = new BitMaskStream(input, 1);
                    if (!stream2.Read())
                    {
                        return(_r);
                    }
                    _r.mbms_SAI_InterFreqList_v1140 = new List <MBMS_SAI_InterFreq_v1140>();
                    num2 = 3;
                    var num8 = input.ReadBits(num2) + 1;
                    for (var k = 0; k < num8; k++)
                    {
                        var _v = MBMS_SAI_InterFreq_v1140.PerDecoder.Instance.Decode(input);
                        _r.mbms_SAI_InterFreqList_v1140.Add(_v);
                    }
                }
                return(_r);
            }
 public SystemInformationBlockType15_r11 Decode(BitArrayInputStream input)
 {
     int num2;
     var _r = new SystemInformationBlockType15_r11();
     _r.InitDefaults();
     var flag = false;
     flag = input.ReadBit() != 0;
     var stream = flag ? new BitMaskStream(input, 3) : new BitMaskStream(input, 3);
     if (stream.Read())
     {
         _r.mbms_SAI_IntraFreq_r11 = new List<long>();
         num2 = 6;
         var num3 = input.ReadBits(num2) + 1;
         for (var i = 0; i < num3; i++)
         {
             long item = input.ReadBits(0x10);
             _r.mbms_SAI_IntraFreq_r11.Add(item);
         }
     }
     if (stream.Read())
     {
         _r.mbms_SAI_InterFreqList_r11 = new List<MBMS_SAI_InterFreq_r11>();
         num2 = 3;
         var num6 = input.ReadBits(num2) + 1;
         for (var j = 0; j < num6; j++)
         {
             var _r2 = MBMS_SAI_InterFreq_r11.PerDecoder.Instance.Decode(input);
             _r.mbms_SAI_InterFreqList_r11.Add(_r2);
         }
     }
     if (stream.Read())
     {
         var nBits = input.ReadBits(8);
         _r.lateNonCriticalExtension = input.readOctetString(nBits);
     }
     if (flag)
     {
         var stream2 = new BitMaskStream(input, 1);
         if (!stream2.Read())
         {
             return _r;
         }
         _r.mbms_SAI_InterFreqList_v1140 = new List<MBMS_SAI_InterFreq_v1140>();
         num2 = 3;
         var num8 = input.ReadBits(num2) + 1;
         for (var k = 0; k < num8; k++)
         {
             var _v = MBMS_SAI_InterFreq_v1140.PerDecoder.Instance.Decode(input);
             _r.mbms_SAI_InterFreqList_v1140.Add(_v);
         }
     }
     return _r;
 }