Пример #1
0
            public LogMeasReport_r10 Decode(BitArrayInputStream input)
            {
                LogMeasReport_r10 _r = new LogMeasReport_r10();

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

                _r.absoluteTimeStamp_r10        = input.ReadBitString(0x30);
                _r.traceReference_r10           = TraceReference_r10.PerDecoder.Instance.Decode(input);
                _r.traceRecordingSessionRef_r10 = input.readOctetString(2);
                _r.tce_Id_r10          = input.readOctetString(1);
                _r.logMeasInfoList_r10 = new List <LogMeasInfo_r10>();
                int nBits = 10;
                int num3  = input.ReadBits(nBits) + 1;

                for (int i = 0; i < num3; i++)
                {
                    LogMeasInfo_r10 item = LogMeasInfo_r10.PerDecoder.Instance.Decode(input);
                    _r.logMeasInfoList_r10.Add(item);
                }
                if (stream.Read())
                {
                    nBits = 1;
                    _r.logMeasAvailable_r10 = (logMeasAvailable_r10_Enum)input.ReadBits(nBits);
                }
                return(_r);
            }
Пример #2
0
            public LogMeasInfo_r10 Decode(BitArrayInputStream input)
            {
                LogMeasInfo_r10 _r = new LogMeasInfo_r10();

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

                if (stream.Read())
                {
                    _r.locationInfo_r10 = LocationInfo_r10.PerDecoder.Instance.Decode(input);
                }
                _r.relativeTimeStamp_r10  = input.ReadBits(13);
                _r.servCellIdentity_r10   = CellGlobalIdEUTRA.PerDecoder.Instance.Decode(input);
                _r.measResultServCell_r10 = measResultServCell_r10_Type.PerDecoder.Instance.Decode(input);
                if (stream.Read())
                {
                    _r.measResultNeighCells_r10 = measResultNeighCells_r10_Type.PerDecoder.Instance.Decode(input);
                }
                if (flag)
                {
                    BitMaskStream stream2 = new BitMaskStream(input, 1);
                    if (!stream2.Read())
                    {
                        return(_r);
                    }
                    _r.measResultListEUTRA_v1090 = new List <MeasResult2EUTRA_v9e0>();
                    int nBits = 3;
                    int num3  = input.ReadBits(nBits) + 1;
                    for (int i = 0; i < num3; i++)
                    {
                        MeasResult2EUTRA_v9e0 item = MeasResult2EUTRA_v9e0.PerDecoder.Instance.Decode(input);
                        _r.measResultListEUTRA_v1090.Add(item);
                    }
                }
                return(_r);
            }
Пример #3
0
 public LogMeasInfo_r10 Decode(BitArrayInputStream input)
 {
     LogMeasInfo_r10 _r = new LogMeasInfo_r10();
     _r.InitDefaults();
     bool flag = input.ReadBit() != 0;
     BitMaskStream stream = new BitMaskStream(input, 2);
     if (stream.Read())
     {
         _r.locationInfo_r10 = LocationInfo_r10.PerDecoder.Instance.Decode(input);
     }
     _r.relativeTimeStamp_r10 = input.ReadBits(13);
     _r.servCellIdentity_r10 = CellGlobalIdEUTRA.PerDecoder.Instance.Decode(input);
     _r.measResultServCell_r10 = measResultServCell_r10_Type.PerDecoder.Instance.Decode(input);
     if (stream.Read())
     {
         _r.measResultNeighCells_r10 = measResultNeighCells_r10_Type.PerDecoder.Instance.Decode(input);
     }
     if (flag)
     {
         BitMaskStream stream2 = new BitMaskStream(input, 1);
         if (!stream2.Read())
         {
             return _r;
         }
         _r.measResultListEUTRA_v1090 = new List<MeasResult2EUTRA_v9e0>();
         int nBits = 3;
         int num3 = input.ReadBits(nBits) + 1;
         for (int i = 0; i < num3; i++)
         {
             MeasResult2EUTRA_v9e0 item = MeasResult2EUTRA_v9e0.PerDecoder.Instance.Decode(input);
             _r.measResultListEUTRA_v1090.Add(item);
         }
     }
     return _r;
 }