public measResultNeighCells_r10_Type Decode(BitArrayInputStream input) { int num2; measResultNeighCells_r10_Type type = new measResultNeighCells_r10_Type(); type.InitDefaults(); BitMaskStream stream = new BitMaskStream(input, 4); if (stream.Read()) { type.measResultListEUTRA_r10 = new List <MeasResult2EUTRA_r9>(); num2 = 3; int num3 = input.ReadBits(num2) + 1; for (int i = 0; i < num3; i++) { MeasResult2EUTRA_r9 item = MeasResult2EUTRA_r9.PerDecoder.Instance.Decode(input); type.measResultListEUTRA_r10.Add(item); } } if (stream.Read()) { type.measResultListUTRA_r10 = new List <MeasResult2UTRA_r9>(); num2 = 3; int num5 = input.ReadBits(num2) + 1; for (int j = 0; j < num5; j++) { MeasResult2UTRA_r9 _r2 = MeasResult2UTRA_r9.PerDecoder.Instance.Decode(input); type.measResultListUTRA_r10.Add(_r2); } } if (stream.Read()) { type.measResultListGERAN_r10 = new List <List <MeasResultGERAN> >(); num2 = 2; int num7 = input.ReadBits(num2) + 1; for (int k = 0; k < num7; k++) { List <MeasResultGERAN> list = new List <MeasResultGERAN>(); num2 = 3; int num9 = input.ReadBits(num2) + 1; for (int m = 0; m < num9; m++) { MeasResultGERAN tgeran = MeasResultGERAN.PerDecoder.Instance.Decode(input); list.Add(tgeran); } type.measResultListGERAN_r10.Add(list); } } if (stream.Read()) { type.measResultListCDMA2000_r10 = new List <MeasResult2CDMA2000_r9>(); num2 = 3; int num11 = input.ReadBits(num2) + 1; for (int n = 0; n < num11; n++) { MeasResult2CDMA2000_r9 _r3 = MeasResult2CDMA2000_r9.PerDecoder.Instance.Decode(input); type.measResultListCDMA2000_r10.Add(_r3); } } return(type); }
public measResultNeighCells_r10_Type Decode(BitArrayInputStream input) { int num2; measResultNeighCells_r10_Type type = new measResultNeighCells_r10_Type(); type.InitDefaults(); BitMaskStream stream = new BitMaskStream(input, 4); if (stream.Read()) { type.measResultListEUTRA_r10 = new List<MeasResult2EUTRA_r9>(); num2 = 3; int num3 = input.ReadBits(num2) + 1; for (int i = 0; i < num3; i++) { MeasResult2EUTRA_r9 item = MeasResult2EUTRA_r9.PerDecoder.Instance.Decode(input); type.measResultListEUTRA_r10.Add(item); } } if (stream.Read()) { type.measResultListUTRA_r10 = new List<MeasResult2UTRA_r9>(); num2 = 3; int num5 = input.ReadBits(num2) + 1; for (int j = 0; j < num5; j++) { MeasResult2UTRA_r9 _r2 = MeasResult2UTRA_r9.PerDecoder.Instance.Decode(input); type.measResultListUTRA_r10.Add(_r2); } } if (stream.Read()) { type.measResultListGERAN_r10 = new List<List<MeasResultGERAN>>(); num2 = 2; int num7 = input.ReadBits(num2) + 1; for (int k = 0; k < num7; k++) { List<MeasResultGERAN> list = new List<MeasResultGERAN>(); num2 = 3; int num9 = input.ReadBits(num2) + 1; for (int m = 0; m < num9; m++) { MeasResultGERAN tgeran = MeasResultGERAN.PerDecoder.Instance.Decode(input); list.Add(tgeran); } type.measResultListGERAN_r10.Add(list); } } if (stream.Read()) { type.measResultListCDMA2000_r10 = new List<MeasResult2CDMA2000_r9>(); num2 = 3; int num11 = input.ReadBits(num2) + 1; for (int n = 0; n < num11; n++) { MeasResult2CDMA2000_r9 _r3 = MeasResult2CDMA2000_r9.PerDecoder.Instance.Decode(input); type.measResultListCDMA2000_r10.Add(_r3); } } return type; }