Example #1
0
            public MBMSCountingResponse_r10_IEs Decode(BitArrayInputStream input)
            {
                MBMSCountingResponse_r10_IEs es = new MBMSCountingResponse_r10_IEs();

                es.InitDefaults();
                BitMaskStream stream = new BitMaskStream(input, 4);

                if (stream.Read())
                {
                    es.mbsfn_AreaIndex_r10 = input.ReadBits(3);
                }
                if (stream.Read())
                {
                    es.countingResponseList_r10 = new List <CountingResponseInfo_r10>();
                    const int num2 = 4;
                    int       num3 = input.ReadBits(num2) + 1;
                    for (int i = 0; i < num3; i++)
                    {
                        CountingResponseInfo_r10 item = CountingResponseInfo_r10.PerDecoder.Instance.Decode(input);
                        es.countingResponseList_r10.Add(item);
                    }
                }
                if (stream.Read())
                {
                    int nBits = input.ReadBits(8);
                    es.lateNonCriticalExtension = input.readOctetString(nBits);
                }
                if (stream.Read())
                {
                    es.nonCriticalExtension = nonCriticalExtension_Type.PerDecoder.Instance.Decode(input);
                }
                return(es);
            }
Example #2
0
 public MBMSCountingResponse_r10_IEs Decode(BitArrayInputStream input)
 {
     MBMSCountingResponse_r10_IEs es = new MBMSCountingResponse_r10_IEs();
     es.InitDefaults();
     BitMaskStream stream = new BitMaskStream(input, 4);
     if (stream.Read())
     {
         es.mbsfn_AreaIndex_r10 = input.readBits(3);
     }
     if (stream.Read())
     {
         es.countingResponseList_r10 = new List<CountingResponseInfo_r10>();
         const int num2 = 4;
         int num3 = input.readBits(num2) + 1;
         for (int i = 0; i < num3; i++)
         {
             CountingResponseInfo_r10 item = CountingResponseInfo_r10.PerDecoder.Instance.Decode(input);
             es.countingResponseList_r10.Add(item);
         }
     }
     if (stream.Read())
     {
         int nBits = input.readBits(8);
         es.lateNonCriticalExtension = input.readOctetString(nBits);
     }
     if (stream.Read())
     {
         es.nonCriticalExtension = nonCriticalExtension_Type.PerDecoder.Instance.Decode(input);
     }
     return es;
 }