public MeasObjectUTRA Decode(BitArrayInputStream input) { MeasObjectUTRA tutra = new MeasObjectUTRA(); tutra.InitDefaults(); bool flag = input.ReadBit() != 0; BitMaskStream stream = new BitMaskStream(input, 1); BitMaskStream stream2 = new BitMaskStream(input, 3); tutra.carrierFreq = input.ReadBits(14); if (stream.Read()) { tutra.offsetFreq = input.ReadBits(5) + -15; } if (stream2.Read()) { tutra.cellsToRemoveList = new List <long>(); int nBits = 5; int num3 = input.ReadBits(nBits) + 1; for (int i = 0; i < num3; i++) { long item = input.ReadBits(5) + 1; tutra.cellsToRemoveList.Add(item); } } if (stream2.Read()) { tutra.cellsToAddModList = cellsToAddModList_Type.PerDecoder.Instance.Decode(input); } if (stream2.Read()) { tutra.cellForWhichToReportCGI = cellForWhichToReportCGI_Type.PerDecoder.Instance.Decode(input); } if (flag) { BitMaskStream stream3 = new BitMaskStream(input, 1); if (stream3.Read()) { tutra.csg_allowedReportingCells_v930 = CSG_AllowedReportingCells_r9.PerDecoder.Instance.Decode(input); } } return(tutra); }
public MeasObjectUTRA Decode(BitArrayInputStream input) { MeasObjectUTRA tutra = new MeasObjectUTRA(); tutra.InitDefaults(); bool flag = input.ReadBit() != 0; BitMaskStream stream = new BitMaskStream(input, 1); BitMaskStream stream2 = new BitMaskStream(input, 3); tutra.carrierFreq = input.ReadBits(14); if (stream.Read()) { tutra.offsetFreq = input.ReadBits(5) + -15; } if (stream2.Read()) { tutra.cellsToRemoveList = new List<long>(); int nBits = 5; int num3 = input.ReadBits(nBits) + 1; for (int i = 0; i < num3; i++) { long item = input.ReadBits(5) + 1; tutra.cellsToRemoveList.Add(item); } } if (stream2.Read()) { tutra.cellsToAddModList = cellsToAddModList_Type.PerDecoder.Instance.Decode(input); } if (stream2.Read()) { tutra.cellForWhichToReportCGI = cellForWhichToReportCGI_Type.PerDecoder.Instance.Decode(input); } if (flag) { BitMaskStream stream3 = new BitMaskStream(input, 1); if (stream3.Read()) { tutra.csg_allowedReportingCells_v930 = CSG_AllowedReportingCells_r9.PerDecoder.Instance.Decode(input); } } return tutra; }