public PhysCellIdRange Decode(BitArrayInputStream input) { PhysCellIdRange range = new PhysCellIdRange(); range.InitDefaults(); BitMaskStream stream = new BitMaskStream(input, 1); range.start = input.ReadBits(9); if (stream.Read()) { const int nBits = 4; range.range = (range_Enum)input.ReadBits(nBits); } return range; }
public PhysCellIdRange Decode(BitArrayInputStream input) { PhysCellIdRange range = new PhysCellIdRange(); range.InitDefaults(); BitMaskStream stream = new BitMaskStream(input, 1); range.start = input.ReadBits(9); if (stream.Read()) { const int nBits = 4; range.range = (range_Enum)input.ReadBits(nBits); } return(range); }
public setup_Type Decode(BitArrayInputStream input) { setup_Type type = new setup_Type(); type.InitDefaults(); BitMaskStream stream = new BitMaskStream(input, 1); type.measSubframePatternNeigh_r10 = MeasSubframePattern_r10.PerDecoder.Instance.Decode(input); if (stream.Read()) { type.measSubframeCellList_r10 = new List<PhysCellIdRange>(); const int nBits = 5; int num3 = input.readBits(nBits) + 1; for (int i = 0; i < num3; i++) { PhysCellIdRange item = PhysCellIdRange.PerDecoder.Instance.Decode(input); type.measSubframeCellList_r10.Add(item); } } return type; }
public InterFreqCarrierFreqInfo Decode(BitArrayInputStream input) { BitMaskStream stream3; InterFreqCarrierFreqInfo info = new InterFreqCarrierFreqInfo(); info.InitDefaults(); bool flag = input.readBit() != 0; BitMaskStream stream = new BitMaskStream(input, 1); BitMaskStream stream2 = new BitMaskStream(input, 5); info.dl_CarrierFreq = input.readBits(0x10); info.q_RxLevMin = input.readBits(6) + -70; if (stream2.Read()) { info.p_Max = input.readBits(6) + -30; } info.t_ReselectionEUTRA = input.readBits(3); if (stream2.Read()) { info.t_ReselectionEUTRA_SF = SpeedStateScaleFactors.PerDecoder.Instance.Decode(input); } info.threshX_High = input.readBits(5); info.threshX_Low = input.readBits(5); int nBits = 3; info.allowedMeasBandwidth = (AllowedMeasBandwidth)input.readBits(nBits); info.presenceAntennaPort1 = input.readBit() == 1; if (stream2.Read()) { info.cellReselectionPriority = input.readBits(3); } info.neighCellConfig = input.readBitString(2); if (stream.Read()) { nBits = 5; info.q_OffsetFreq = (Q_OffsetRange)input.readBits(nBits); } if (stream2.Read()) { info.interFreqNeighCellList = new List <InterFreqNeighCellInfo>(); nBits = 4; int num3 = input.readBits(nBits) + 1; for (int i = 0; i < num3; i++) { InterFreqNeighCellInfo item = InterFreqNeighCellInfo.PerDecoder.Instance.Decode(input); info.interFreqNeighCellList.Add(item); } } if (stream2.Read()) { info.interFreqBlackCellList = new List <PhysCellIdRange>(); nBits = 4; int num5 = input.readBits(nBits) + 1; for (int j = 0; j < num5; j++) { PhysCellIdRange range = PhysCellIdRange.PerDecoder.Instance.Decode(input); info.interFreqBlackCellList.Add(range); } } if (flag) { stream3 = new BitMaskStream(input, 2); if (stream3.Read()) { info.q_QualMin_r9 = input.readBits(5) + -34; } if (stream3.Read()) { info.threshX_Q_r9 = threshX_Q_r9_Type.PerDecoder.Instance.Decode(input); } } if (flag) { stream3 = new BitMaskStream(input, 1); if (stream3.Read()) { info.q_QualMinWB_r11 = input.readBits(5) + -34; } } return(info); }