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); }
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); }
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; }