public P_C_AndCBSR_r11 Decode(BitArrayInputStream input) { P_C_AndCBSR_r11 _r = new P_C_AndCBSR_r11(); _r.InitDefaults(); _r.p_C_r11 = input.ReadBits(5) + -8; int nBits = input.ReadBits(8); _r.codebookSubsetRestriction_r11 = input.ReadBitString(nBits); return _r; }
public P_C_AndCBSR_r11 Decode(BitArrayInputStream input) { P_C_AndCBSR_r11 _r = new P_C_AndCBSR_r11(); _r.InitDefaults(); _r.p_C_r11 = input.ReadBits(5) + -8; int nBits = input.ReadBits(8); _r.codebookSubsetRestriction_r11 = input.ReadBitString(nBits); return(_r); }
public CSI_Process_r11 Decode(BitArrayInputStream input) { CSI_Process_r11 _r = new CSI_Process_r11(); _r.InitDefaults(); bool flag = input.ReadBit() != 0; BitMaskStream stream = new BitMaskStream(input, 3); _r.csi_ProcessId_r11 = input.ReadBits(2) + 1; _r.csi_RS_ConfigNZPId_r11 = input.ReadBits(2) + 1; _r.csi_IM_ConfigId_r11 = input.ReadBits(2) + 1; _r.p_C_AndCBSRList_r11 = new List <P_C_AndCBSR_r11>(); int nBits = 1; int num3 = input.ReadBits(nBits) + 1; for (int i = 0; i < num3; i++) { P_C_AndCBSR_r11 item = P_C_AndCBSR_r11.PerDecoder.Instance.Decode(input); _r.p_C_AndCBSRList_r11.Add(item); } if (stream.Read()) { _r.cqi_ReportBothProc_r11 = CQI_ReportBothProc_r11.PerDecoder.Instance.Decode(input); } if (stream.Read()) { _r.cqi_ReportPeriodicProcId_r11 = input.ReadBits(2); } if (stream.Read()) { _r.cqi_ReportAperiodicProc_r11 = CQI_ReportAperiodicProc_r11.PerDecoder.Instance.Decode(input); } if (flag) { BitMaskStream stream2 = new BitMaskStream(input, 1); if (stream2.Read()) { nBits = 1; _r.alternativeCodebookEnabledFor4TXProc_r12 = (alternativeCodebookEnabledFor4TXProc_r12_Enum)input.ReadBits(nBits); } } return(_r); }