public RadioResourceConfigDedicated Decode(BitArrayInputStream input) { int num2; BitMaskStream stream2; RadioResourceConfigDedicated dedicated = new RadioResourceConfigDedicated(); dedicated.InitDefaults(); bool flag = input.readBit() != 0; BitMaskStream stream = new BitMaskStream(input, 6); if (stream.Read()) { dedicated.srb_ToAddModList = new List <SRB_ToAddMod>(); num2 = 1; int num3 = input.readBits(num2) + 1; for (int i = 0; i < num3; i++) { SRB_ToAddMod item = SRB_ToAddMod.PerDecoder.Instance.Decode(input); dedicated.srb_ToAddModList.Add(item); } } if (stream.Read()) { dedicated.drb_ToAddModList = new List <DRB_ToAddMod>(); num2 = 4; int num5 = input.readBits(num2) + 1; for (int j = 0; j < num5; j++) { DRB_ToAddMod mod2 = DRB_ToAddMod.PerDecoder.Instance.Decode(input); dedicated.drb_ToAddModList.Add(mod2); } } if (stream.Read()) { dedicated.drb_ToReleaseList = new List <long>(); num2 = 4; int num7 = input.readBits(num2) + 1; for (int k = 0; k < num7; k++) { long num9 = input.readBits(5) + 1; dedicated.drb_ToReleaseList.Add(num9); } } if (stream.Read()) { dedicated.mac_MainConfig = mac_MainConfig_Type.PerDecoder.Instance.Decode(input); } if (stream.Read()) { dedicated.sps_Config = SPS_Config.PerDecoder.Instance.Decode(input); } if (stream.Read()) { dedicated.physicalConfigDedicated = PhysicalConfigDedicated.PerDecoder.Instance.Decode(input); } if (flag) { stream2 = new BitMaskStream(input, 1); if (stream2.Read()) { dedicated.rlf_TimersAndConstants_r9 = RLF_TimersAndConstants_r9.PerDecoder.Instance.Decode(input); } } if (flag) { stream2 = new BitMaskStream(input, 1); if (stream2.Read()) { dedicated.measSubframePatternPCell_r10 = MeasSubframePatternPCell_r10.PerDecoder.Instance.Decode(input); } } if (flag) { stream2 = new BitMaskStream(input, 1); if (stream2.Read()) { dedicated.neighCellsCRS_Info_r11 = NeighCellsCRS_Info_r11.PerDecoder.Instance.Decode(input); } } return(dedicated); }
public RadioResourceConfigDedicated Decode(BitArrayInputStream input) { int num2; BitMaskStream stream2; RadioResourceConfigDedicated dedicated = new RadioResourceConfigDedicated(); dedicated.InitDefaults(); bool flag = input.ReadBit() != 0; BitMaskStream stream = new BitMaskStream(input, 6); if (stream.Read()) { dedicated.srb_ToAddModList = new List<SRB_ToAddMod>(); num2 = 1; int num3 = input.ReadBits(num2) + 1; for (int i = 0; i < num3; i++) { SRB_ToAddMod item = SRB_ToAddMod.PerDecoder.Instance.Decode(input); dedicated.srb_ToAddModList.Add(item); } } if (stream.Read()) { dedicated.drb_ToAddModList = new List<DRB_ToAddMod>(); num2 = 4; int num5 = input.ReadBits(num2) + 1; for (int j = 0; j < num5; j++) { DRB_ToAddMod mod2 = DRB_ToAddMod.PerDecoder.Instance.Decode(input); dedicated.drb_ToAddModList.Add(mod2); } } if (stream.Read()) { dedicated.drb_ToReleaseList = new List<long>(); num2 = 4; int num7 = input.ReadBits(num2) + 1; for (int k = 0; k < num7; k++) { long num9 = input.ReadBits(5) + 1; dedicated.drb_ToReleaseList.Add(num9); } } if (stream.Read()) { dedicated.mac_MainConfig = mac_MainConfig_Type.PerDecoder.Instance.Decode(input); } if (stream.Read()) { dedicated.sps_Config = SPS_Config.PerDecoder.Instance.Decode(input); } if (stream.Read()) { dedicated.physicalConfigDedicated = PhysicalConfigDedicated.PerDecoder.Instance.Decode(input); } if (flag) { stream2 = new BitMaskStream(input, 1); if (stream2.Read()) { dedicated.rlf_TimersAndConstants_r9 = RLF_TimersAndConstants_r9.PerDecoder.Instance.Decode(input); } } if (flag) { stream2 = new BitMaskStream(input, 1); if (stream2.Read()) { dedicated.measSubframePatternPCell_r10 = MeasSubframePatternPCell_r10.PerDecoder.Instance.Decode(input); } } if (flag) { stream2 = new BitMaskStream(input, 1); if (stream2.Read()) { dedicated.neighCellsCRS_Info_r11 = NeighCellsCRS_Info_r11.PerDecoder.Instance.Decode(input); } } return dedicated; }