--- /dev/null
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ricgeomessages_pcmdreport.proto */
+
+#ifndef PROTOBUF_C_ricgeomessages_5fpcmdreport_2eproto__INCLUDED
+#define PROTOBUF_C_ricgeomessages_5fpcmdreport_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003002 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _PcmdReport PcmdReport;
+typedef struct _PcmdReport__TpUlRadioBearerRlcThroughputRecord PcmdReport__TpUlRadioBearerRlcThroughputRecord;
+typedef struct _PcmdReport__TpDlRadioBearerRlcThroughputRecord PcmdReport__TpDlRadioBearerRlcThroughputRecord;
+typedef struct _PcmdReport__TpDlRadioBearerPdcpThroughputRecord PcmdReport__TpDlRadioBearerPdcpThroughputRecord;
+typedef struct _PcmdReport__StartRecordingSession PcmdReport__StartRecordingSession;
+typedef struct _PcmdReport__StopRecordingSession PcmdReport__StopRecordingSession;
+typedef struct _PcmdReport__SessionInfo PcmdReport__SessionInfo;
+typedef struct _PcmdReport__TpCaRlcThroughputTrace PcmdReport__TpCaRlcThroughputTrace;
+typedef struct _PcmdReport__TpDlRadioBearerPdcpThroughputData PcmdReport__TpDlRadioBearerPdcpThroughputData;
+typedef struct _PcmdReport__TpUlRadioBearerRlcThroughputData PcmdReport__TpUlRadioBearerRlcThroughputData;
+typedef struct _PcmdReport__TpDlRadioBearerRlcThroughputData PcmdReport__TpDlRadioBearerRlcThroughputData;
+typedef struct _PcmdReport__TpCaConfigurationTraceRecord PcmdReport__TpCaConfigurationTraceRecord;
+typedef struct _PcmdReport__TpSCellConfigured PcmdReport__TpSCellConfigured;
+typedef struct _PcmdReport__TpSCellDeconfigured PcmdReport__TpSCellDeconfigured;
+typedef struct _PcmdReport__TpUlSchedulingTraceRecord PcmdReport__TpUlSchedulingTraceRecord;
+typedef struct _PcmdReport__TpDlSchedulingTraceRecord PcmdReport__TpDlSchedulingTraceRecord;
+typedef struct _PcmdReport__TpUeMeasTraceRecord PcmdReport__TpUeMeasTraceRecord;
+typedef struct _PcmdReport__TpMeasResultPCell PcmdReport__TpMeasResultPCell;
+typedef struct _PcmdReport__TpMeasResultEUTRA PcmdReport__TpMeasResultEUTRA;
+typedef struct _PcmdReport__TpDlCaSCellSchedulingTraceRecord PcmdReport__TpDlCaSCellSchedulingTraceRecord;
+typedef struct _PcmdReport__SgNBTraceRecordList PcmdReport__SgNBTraceRecordList;
+typedef struct _PcmdReport__TpUlUeThroughputMeasurements PcmdReport__TpUlUeThroughputMeasurements;
+typedef struct _PcmdReport__TpDlUeThroughputMeasurements PcmdReport__TpDlUeThroughputMeasurements;
+typedef struct _PcmdReport__CellGlobalIdEUTRA PcmdReport__CellGlobalIdEUTRA;
+typedef struct _PcmdReport__GlobalGnbId PcmdReport__GlobalGnbId;
+typedef struct _PcmdReport__AvgWbCqi PcmdReport__AvgWbCqi;
+typedef struct _PcmdReport__AvgSINR PcmdReport__AvgSINR;
+typedef struct _PcmdReport__AvgPhr PcmdReport__AvgPhr;
+typedef struct _PcmdReport__NullableSint32 PcmdReport__NullableSint32;
+typedef struct _PcmdReport__NullableUint32 PcmdReport__NullableUint32;
+typedef struct _PcmdReport__NullableUint64 PcmdReport__NullableUint64;
+
+
+/* --- enums --- */
+
+typedef enum _PcmdReport__Direction {
+ PCMD_REPORT__DIRECTION__UL = 0,
+ PCMD_REPORT__DIRECTION__DL = 1,
+ PCMD_REPORT__DIRECTION__NONE = 2
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PCMD_REPORT__DIRECTION)
+} PcmdReport__Direction;
+typedef enum _PcmdReport__SgNBTraceRecordType {
+ /*
+ * SgNBAdditionTraceRecord
+ */
+ PCMD_REPORT__SG_NBTRACE_RECORD_TYPE__SGNB_ADDITION = 0,
+ /*
+ * MeNBInitiatedSgNBModificationTraceRecord
+ */
+ PCMD_REPORT__SG_NBTRACE_RECORD_TYPE__MENB_INITIATED_SGNB_MODIFICATION = 1,
+ /*
+ * SgNBInitiatedSgNBModificationTraceRecord
+ */
+ PCMD_REPORT__SG_NBTRACE_RECORD_TYPE__SGNB_INITIATED_SGNB_MODIFICATION = 2,
+ /*
+ * MeNBInitiatedSgNBReleaseTraceRecord
+ */
+ PCMD_REPORT__SG_NBTRACE_RECORD_TYPE__MENB_INITIATED_SGNB_RELEASE = 3,
+ /*
+ * SgNBInitiatedSgNBReleaseTraceRecord
+ */
+ PCMD_REPORT__SG_NBTRACE_RECORD_TYPE__SGNB_INITIATED_SGNB_RELEASE = 4
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PCMD_REPORT__SG_NBTRACE_RECORD_TYPE)
+} PcmdReport__SgNBTraceRecordType;
+
+/* --- messages --- */
+
+/*
+ * start of report records
+ */
+struct _PcmdReport__TpUlRadioBearerRlcThroughputRecord
+{
+ ProtobufCMessage base;
+ size_t n_ulrbrlcthroughputlist;
+ PcmdReport__TpUlRadioBearerRlcThroughputData **ulrbrlcthroughputlist;
+};
+#define PCMD_REPORT__TP_UL_RADIO_BEARER_RLC_THROUGHPUT_RECORD__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_ul_radio_bearer_rlc_throughput_record__descriptor) \
+ , 0,NULL }
+
+
+struct _PcmdReport__TpDlRadioBearerRlcThroughputRecord
+{
+ ProtobufCMessage base;
+ size_t n_dlrbrlcthroughputlist;
+ PcmdReport__TpDlRadioBearerRlcThroughputData **dlrbrlcthroughputlist;
+};
+#define PCMD_REPORT__TP_DL_RADIO_BEARER_RLC_THROUGHPUT_RECORD__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_dl_radio_bearer_rlc_throughput_record__descriptor) \
+ , 0,NULL }
+
+
+struct _PcmdReport__TpDlRadioBearerPdcpThroughputRecord
+{
+ ProtobufCMessage base;
+ size_t n_dlradiobearerpdcpthroughputlist;
+ PcmdReport__TpDlRadioBearerPdcpThroughputData **dlradiobearerpdcpthroughputlist;
+};
+#define PCMD_REPORT__TP_DL_RADIO_BEARER_PDCP_THROUGHPUT_RECORD__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_dl_radio_bearer_pdcp_throughput_record__descriptor) \
+ , 0,NULL }
+
+
+struct _PcmdReport__StartRecordingSession
+{
+ ProtobufCMessage base;
+ uint64_t timestamp;
+};
+#define PCMD_REPORT__START_RECORDING_SESSION__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__start_recording_session__descriptor) \
+ , 0 }
+
+
+struct _PcmdReport__StopRecordingSession
+{
+ ProtobufCMessage base;
+ uint64_t timestamp;
+};
+#define PCMD_REPORT__STOP_RECORDING_SESSION__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__stop_recording_session__descriptor) \
+ , 0 }
+
+
+struct _PcmdReport__SessionInfo
+{
+ ProtobufCMessage base;
+ uint64_t timestamp;
+ uint64_t licenseinfo;
+ ProtobufCBinaryData enbipaddress;
+ /*
+ * PLMN for GUMMEI
+ */
+ uint32_t plmn;
+ /*
+ * MMEGI for GUMMEI
+ */
+ uint32_t mmegi;
+ /*
+ * MMEC for GUMMEI
+ */
+ uint32_t mmec;
+ uint64_t imsi;
+ uint64_t imei;
+ /*
+ * no V3 licence
+ */
+ uint32_t nolicenseinfo;
+ PcmdReport__NullableUint64 *licenseinfov5;
+ PcmdReport__NullableUint32 *enbues1apid;
+ PcmdReport__NullableUint32 *mmeues1apid;
+ PcmdReport__NullableUint32 *s1apcause;
+};
+#define PCMD_REPORT__SESSION_INFO__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__session_info__descriptor) \
+ , 0, 0, {0,NULL}, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL }
+
+
+struct _PcmdReport__TpCaRlcThroughputTrace
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean endmarker;
+ uint32_t recordcollectionduration;
+ uint64_t caactivationrlctxbytes2cc;
+ uint64_t caactivationrlctxbytes3cc;
+ uint64_t caactivationrlctxbytes4cc;
+ uint64_t caactivationrlcretxbytes2cc;
+ uint64_t caactivationrlcretxbytes3cc;
+ uint64_t caactivationrlcretxbytes4cc;
+ PcmdReport__NullableUint64 *caactivationrlctxbytes5cc;
+ PcmdReport__NullableUint64 *caactivationrlcretxbytes5cc;
+ PcmdReport__NullableUint64 *caactivationrlctxbytes6cc;
+ PcmdReport__NullableUint64 *caactivationrlcretxbytes6cc;
+ PcmdReport__NullableUint64 *caactivationrlctxbytes7cc;
+ PcmdReport__NullableUint64 *caactivationrlcretxbytes7cc;
+};
+#define PCMD_REPORT__TP_CA_RLC_THROUGHPUT_TRACE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_ca_rlc_throughput_trace__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL }
+
+
+struct _PcmdReport__TpDlRadioBearerPdcpThroughputData
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean endmarker;
+ uint32_t drb_id;
+ uint32_t datacollectionduration;
+ uint64_t numofpdcppdurcvdfortx;
+ uint64_t numofpdcppdudiscarded;
+};
+#define PCMD_REPORT__TP_DL_RADIO_BEARER_PDCP_THROUGHPUT_DATA__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_dl_radio_bearer_pdcp_throughput_data__descriptor) \
+ , 0, 0, 0, 0, 0 }
+
+
+struct _PcmdReport__TpUlRadioBearerRlcThroughputData
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean endmarker;
+ uint32_t drb_id;
+ uint32_t datacollectionduration;
+ uint32_t numofttiuepdurcvd;
+ uint64_t sumofrlcpdutxbytes;
+ uint64_t sumofrlcsdutxbytes;
+ /*
+ * TpRadioBearerResidualBlerData
+ */
+ PcmdReport__NullableUint32 *numofbadrlcpdutx;
+ PcmdReport__NullableUint32 *numofrlcpdutx;
+ /*
+ * TpUlRadioBearerDelayHistogram
+ */
+ PcmdReport__NullableUint32 *numofpacketsgap1;
+ PcmdReport__NullableUint32 *numofpacketsgap2;
+ PcmdReport__NullableUint32 *numofpacketsgap3;
+ PcmdReport__NullableUint32 *numofpacketsgap4;
+};
+#define PCMD_REPORT__TP_UL_RADIO_BEARER_RLC_THROUGHPUT_DATA__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_ul_radio_bearer_rlc_throughput_data__descriptor) \
+ , 0, 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL }
+
+
+struct _PcmdReport__TpDlRadioBearerRlcThroughputData
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean endmarker;
+ uint32_t drb_id;
+ uint32_t datacollectionduration;
+ uint64_t sumof1strlcpdutxbytes;
+ uint64_t sumofrlcretxbytes;
+ uint32_t numofttirlctx;
+ /*
+ * TpDlRadioBearerDelayHistogram
+ */
+ PcmdReport__NullableUint32 *numofpacketsgap1;
+ PcmdReport__NullableUint32 *numofpacketsgap2;
+ PcmdReport__NullableUint32 *numofpacketsgap3;
+ PcmdReport__NullableUint32 *numofpacketsgap4;
+};
+#define PCMD_REPORT__TP_DL_RADIO_BEARER_RLC_THROUGHPUT_DATA__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_dl_radio_bearer_rlc_throughput_data__descriptor) \
+ , 0, 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL }
+
+
+struct _PcmdReport__TpCaConfigurationTraceRecord
+{
+ ProtobufCMessage base;
+ size_t n_scellsconfiguredlist;
+ PcmdReport__TpSCellConfigured **scellsconfiguredlist;
+ size_t n_scellsdeconfiguredlist;
+ PcmdReport__TpSCellDeconfigured **scellsdeconfiguredlist;
+};
+#define PCMD_REPORT__TP_CA_CONFIGURATION_TRACE_RECORD__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_ca_configuration_trace_record__descriptor) \
+ , 0,NULL, 0,NULL }
+
+
+struct _PcmdReport__TpSCellConfigured
+{
+ ProtobufCMessage base;
+ uint32_t scellindex;
+ uint64_t eci;
+ PcmdReport__CellGlobalIdEUTRA *ecgi;
+};
+#define PCMD_REPORT__TP_SCELL_CONFIGURED__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_scell_configured__descriptor) \
+ , 0, 0, NULL }
+
+
+struct _PcmdReport__TpSCellDeconfigured
+{
+ ProtobufCMessage base;
+ uint32_t scellindex;
+ uint64_t eci;
+ PcmdReport__CellGlobalIdEUTRA *ecgi;
+ uint32_t cause;
+};
+#define PCMD_REPORT__TP_SCELL_DECONFIGURED__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_scell_deconfigured__descriptor) \
+ , 0, 0, NULL, 0 }
+
+
+struct _PcmdReport__TpUlSchedulingTraceRecord
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean endmarker;
+ uint32_t recordcollectionduration;
+ uint32_t numofttiuesched;
+ uint64_t numofprbused;
+ uint32_t numofharq1sttx;
+ uint32_t numofharqretx;
+ uint32_t numofbad1stmacpdutx;
+ uint32_t numofbadlastmacpdutx;
+ PcmdReport__AvgSINR *avgsinr;
+ PcmdReport__AvgPhr *avgphr;
+};
+#define PCMD_REPORT__TP_UL_SCHEDULING_TRACE_RECORD__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_ul_scheduling_trace_record__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL }
+
+
+struct _PcmdReport__TpDlSchedulingTraceRecord
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean endmarker;
+ uint32_t recordcollectionduration;
+ uint32_t numofttiuesched;
+ uint64_t numofprbused;
+ uint32_t numofharq1sttx;
+ PcmdReport__AvgWbCqi *avgcodeword0mimowbcqi;
+ PcmdReport__AvgWbCqi *avgcodeword1mimowbcqi;
+ PcmdReport__AvgWbCqi *avgcodeword0nonmimowbcqi;
+ PcmdReport__AvgSINR *avgsinrnonabs;
+ PcmdReport__AvgSINR *avgsinrabs;
+ PcmdReport__NullableUint32 *numofttiueschedmimo;
+ PcmdReport__NullableUint32 *numofttiindrxoff;
+ PcmdReport__NullableUint32 *numofttiueschedabs;
+ PcmdReport__NullableUint32 *numofharqretx;
+ PcmdReport__NullableUint32 *numofbad1stmacpdutx;
+ PcmdReport__NullableUint32 *numofbadlastmacpdutx;
+};
+#define PCMD_REPORT__TP_DL_SCHEDULING_TRACE_RECORD__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_dl_scheduling_trace_record__descriptor) \
+ , 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL }
+
+
+struct _PcmdReport__TpUeMeasTraceRecord
+{
+ ProtobufCMessage base;
+ PcmdReport__NullableUint32 *dl_carrierfreq;
+ /*
+ * typedef EXTENSIBLE_ENUMERATED TpMeasTriggerTypeEUTRA;
+ */
+ uint32_t triggertype;
+ /*
+ * typedef EXTENSIBLE_ENUMERATED TpMeasPurposeEUTRA;
+ */
+ uint32_t purpose;
+ PcmdReport__TpMeasResultPCell *measresultpcell;
+ size_t n_measresultneighcellseutralist;
+ PcmdReport__TpMeasResultEUTRA **measresultneighcellseutralist;
+};
+#define PCMD_REPORT__TP_UE_MEAS_TRACE_RECORD__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_ue_meas_trace_record__descriptor) \
+ , NULL, 0, 0, NULL, 0,NULL }
+
+
+struct _PcmdReport__TpMeasResultPCell
+{
+ ProtobufCMessage base;
+ uint32_t pci;
+ uint32_t rsrp;
+ int32_t rsrq;
+};
+#define PCMD_REPORT__TP_MEAS_RESULT_PCELL__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_meas_result_pcell__descriptor) \
+ , 0, 0, 0 }
+
+
+struct _PcmdReport__TpMeasResultEUTRA
+{
+ ProtobufCMessage base;
+ uint32_t pci;
+ PcmdReport__NullableUint32 *rsrp;
+ PcmdReport__NullableSint32 *rsrq;
+ PcmdReport__CellGlobalIdEUTRA *cellid;
+};
+#define PCMD_REPORT__TP_MEAS_RESULT_EUTRA__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_meas_result_eutra__descriptor) \
+ , 0, NULL, NULL, NULL }
+
+
+struct _PcmdReport__TpDlCaSCellSchedulingTraceRecord
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean endmarker;
+ uint64_t eci;
+ PcmdReport__CellGlobalIdEUTRA *ecgi;
+ uint32_t recordcollectionduration;
+ uint32_t numofttiuesched;
+ uint32_t numofttiueschedmimo;
+ uint64_t numofprbused;
+ uint32_t numofharq1sttx;
+ uint32_t numofharqretx;
+ uint32_t numofbad1stmacpdutx;
+ uint32_t numofbadlastmacpdutx;
+ PcmdReport__AvgWbCqi *avgcodeword0mimowbcqi;
+ PcmdReport__AvgWbCqi *avgcodeword1mimowbcqi;
+ PcmdReport__AvgWbCqi *avgcodeword0nonmimowbcqi;
+};
+#define PCMD_REPORT__TP_DL_CA_SCELL_SCHEDULING_TRACE_RECORD__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_dl_ca_scell_scheduling_trace_record__descriptor) \
+ , 0, 0, NULL, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL }
+
+
+struct _PcmdReport__SgNBTraceRecordList
+{
+ ProtobufCMessage base;
+ PcmdReport__SgNBTraceRecordType endcrecordtype;
+ PcmdReport__GlobalGnbId *globalgnbid;
+ /*
+ * MeNB UE X2AP ID (0..4095)
+ */
+ uint32_t menbuex2apid;
+ /*
+ * MeNB UE X2AP ID extension
+ */
+ PcmdReport__NullableUint32 *menbuex2apidext;
+ /*
+ * SgNB UE X2AP ID
+ */
+ PcmdReport__NullableUint32 *sgnbuex2apid;
+ /*
+ * Generic timestamp - milliseconds since epoch 1970-01-01
+ */
+ uint64_t timestamp;
+ /*
+ * Generic result - 0 (success)
+ */
+ PcmdReport__NullableUint32 *result;
+};
+#define PCMD_REPORT__SG_NBTRACE_RECORD_LIST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__sg_nbtrace_record_list__descriptor) \
+ , PCMD_REPORT__SG_NBTRACE_RECORD_TYPE__SGNB_ADDITION, NULL, 0, NULL, NULL, 0, NULL }
+
+
+struct _PcmdReport__TpUlUeThroughputMeasurements
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean endmarker;
+ uint32_t datacollectionduration;
+ uint64_t sumofreceivednongbrbytes;
+ uint64_t sumofreceivedgbrbytes;
+ uint32_t maxgbrdelay;
+ uint32_t numofreceivedtx;
+ uint32_t numofreceived1sttx;
+ uint32_t numoffailed1sttx;
+ uint32_t numoffailedlasttx;
+ uint32_t numofttipositiveulbuf;
+ uint32_t meanmcs;
+ int32_t meanpuschrssi;
+ int32_t meanpuschsinr;
+ int32_t meanphr;
+ int32_t meanpucchrssi;
+ uint32_t meanpdcchaggul;
+ uint32_t meanpdcchaggdl;
+};
+#define PCMD_REPORT__TP_UL_UE_THROUGHPUT_MEASUREMENTS__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_ul_ue_throughput_measurements__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+struct _PcmdReport__TpDlUeThroughputMeasurements
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean endmarker;
+ uint32_t datacollectionduration;
+ uint64_t sumofsentnongbrbytes;
+ uint64_t sumofsentgbrbytes;
+ uint32_t maxgbrdelay;
+ uint32_t numofsinglecwtx;
+ uint32_t numofsinglecw1sttx;
+ uint32_t numofsinglecw1sttxfailed;
+ uint32_t numofsinglecwlasttxfailed;
+ uint32_t numofdualcwtx;
+ uint32_t numofdualcw1sttx;
+ uint32_t numofdualcw1sttxfailed;
+ uint32_t numofdualcwlasttxfailed;
+ uint32_t pdcchdtx;
+ uint32_t numofttipositivedlbuf;
+ uint32_t meandeltacqi;
+ uint32_t meanlawbcqi;
+};
+#define PCMD_REPORT__TP_DL_UE_THROUGHPUT_MEASUREMENTS__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__tp_dl_ue_throughput_measurements__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+struct _PcmdReport__CellGlobalIdEUTRA
+{
+ ProtobufCMessage base;
+ uint64_t plmn_identity;
+ uint64_t cell_identity;
+};
+#define PCMD_REPORT__CELL_GLOBAL_ID_EUTRA__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__cell_global_id_eutra__descriptor) \
+ , 0, 0 }
+
+
+struct _PcmdReport__GlobalGnbId
+{
+ ProtobufCMessage base;
+ uint32_t plmn_identity;
+ uint32_t gnb_id;
+};
+#define PCMD_REPORT__GLOBAL_GNB_ID__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__global_gnb_id__descriptor) \
+ , 0, 0 }
+
+
+struct _PcmdReport__AvgWbCqi
+{
+ ProtobufCMessage base;
+ uint32_t sumofwbcqi;
+ uint32_t numofwbcqisamples;
+};
+#define PCMD_REPORT__AVG_WB_CQI__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__avg_wb_cqi__descriptor) \
+ , 0, 0 }
+
+
+struct _PcmdReport__AvgSINR
+{
+ ProtobufCMessage base;
+ uint64_t sumofsinrsamples;
+ uint32_t numofsinrsamples;
+};
+#define PCMD_REPORT__AVG_SINR__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__avg_sinr__descriptor) \
+ , 0, 0 }
+
+
+struct _PcmdReport__AvgPhr
+{
+ ProtobufCMessage base;
+ int32_t sumofnormalizedphrsamples;
+ uint32_t numofphrsamples;
+};
+#define PCMD_REPORT__AVG_PHR__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__avg_phr__descriptor) \
+ , 0, 0 }
+
+
+struct _PcmdReport__NullableSint32
+{
+ ProtobufCMessage base;
+ int32_t value;
+};
+#define PCMD_REPORT__NULLABLE_SINT32__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__nullable_sint32__descriptor) \
+ , 0 }
+
+
+struct _PcmdReport__NullableUint32
+{
+ ProtobufCMessage base;
+ uint32_t value;
+};
+#define PCMD_REPORT__NULLABLE_UINT32__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__nullable_uint32__descriptor) \
+ , 0 }
+
+
+struct _PcmdReport__NullableUint64
+{
+ ProtobufCMessage base;
+ uint64_t value;
+};
+#define PCMD_REPORT__NULLABLE_UINT64__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__nullable_uint64__descriptor) \
+ , 0 }
+
+
+struct _PcmdReport
+{
+ ProtobufCMessage base;
+ uint32_t reportversion;
+ uint32_t seqnum;
+ PcmdReport__Direction direction;
+ PcmdReport__StartRecordingSession *startsession;
+ PcmdReport__StopRecordingSession *stopsession;
+ PcmdReport__SessionInfo *sessioninfo;
+ /*
+ * For PDCP uplink estimation
+ */
+ PcmdReport__TpUlRadioBearerRlcThroughputRecord *ulrbrlcthroughputrecord;
+ PcmdReport__TpDlRadioBearerRlcThroughputRecord *dlrbrlcthroughputrecord;
+ /*
+ * For PDCP downlink
+ */
+ PcmdReport__TpDlRadioBearerPdcpThroughputRecord *dlrbpdcpthroughputrecord;
+ PcmdReport__TpCaRlcThroughputTrace *carlcthroughputrecord;
+ /*
+ * PRB Usage
+ */
+ PcmdReport__TpUlSchedulingTraceRecord *ulschedulingrecord;
+ PcmdReport__TpDlSchedulingTraceRecord *dlschedulingrecord;
+ PcmdReport__TpUeMeasTraceRecord *uemeastracerecord;
+ PcmdReport__TpCaConfigurationTraceRecord *caconfigurationrecord;
+ PcmdReport__TpDlCaSCellSchedulingTraceRecord *dlcascellschedulingrecord;
+ /*
+ * to get the gNB ID and details
+ */
+ PcmdReport__SgNBTraceRecordList *sgnbtracerecord;
+ PcmdReport__TpUlUeThroughputMeasurements *uluethroughputmeasurementsrecord;
+ PcmdReport__TpDlUeThroughputMeasurements *dluethroughputmeasurementsrecord;
+};
+#define PCMD_REPORT__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&pcmd_report__descriptor) \
+ , 0, 0, PCMD_REPORT__DIRECTION__UL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL }
+
+
+/* PcmdReport__TpUlRadioBearerRlcThroughputRecord methods */
+void pcmd_report__tp_ul_radio_bearer_rlc_throughput_record__init
+ (PcmdReport__TpUlRadioBearerRlcThroughputRecord *message);
+/* PcmdReport__TpDlRadioBearerRlcThroughputRecord methods */
+void pcmd_report__tp_dl_radio_bearer_rlc_throughput_record__init
+ (PcmdReport__TpDlRadioBearerRlcThroughputRecord *message);
+/* PcmdReport__TpDlRadioBearerPdcpThroughputRecord methods */
+void pcmd_report__tp_dl_radio_bearer_pdcp_throughput_record__init
+ (PcmdReport__TpDlRadioBearerPdcpThroughputRecord *message);
+/* PcmdReport__StartRecordingSession methods */
+void pcmd_report__start_recording_session__init
+ (PcmdReport__StartRecordingSession *message);
+/* PcmdReport__StopRecordingSession methods */
+void pcmd_report__stop_recording_session__init
+ (PcmdReport__StopRecordingSession *message);
+/* PcmdReport__SessionInfo methods */
+void pcmd_report__session_info__init
+ (PcmdReport__SessionInfo *message);
+/* PcmdReport__TpCaRlcThroughputTrace methods */
+void pcmd_report__tp_ca_rlc_throughput_trace__init
+ (PcmdReport__TpCaRlcThroughputTrace *message);
+/* PcmdReport__TpDlRadioBearerPdcpThroughputData methods */
+void pcmd_report__tp_dl_radio_bearer_pdcp_throughput_data__init
+ (PcmdReport__TpDlRadioBearerPdcpThroughputData *message);
+/* PcmdReport__TpUlRadioBearerRlcThroughputData methods */
+void pcmd_report__tp_ul_radio_bearer_rlc_throughput_data__init
+ (PcmdReport__TpUlRadioBearerRlcThroughputData *message);
+/* PcmdReport__TpDlRadioBearerRlcThroughputData methods */
+void pcmd_report__tp_dl_radio_bearer_rlc_throughput_data__init
+ (PcmdReport__TpDlRadioBearerRlcThroughputData *message);
+/* PcmdReport__TpCaConfigurationTraceRecord methods */
+void pcmd_report__tp_ca_configuration_trace_record__init
+ (PcmdReport__TpCaConfigurationTraceRecord *message);
+/* PcmdReport__TpSCellConfigured methods */
+void pcmd_report__tp_scell_configured__init
+ (PcmdReport__TpSCellConfigured *message);
+/* PcmdReport__TpSCellDeconfigured methods */
+void pcmd_report__tp_scell_deconfigured__init
+ (PcmdReport__TpSCellDeconfigured *message);
+/* PcmdReport__TpUlSchedulingTraceRecord methods */
+void pcmd_report__tp_ul_scheduling_trace_record__init
+ (PcmdReport__TpUlSchedulingTraceRecord *message);
+/* PcmdReport__TpDlSchedulingTraceRecord methods */
+void pcmd_report__tp_dl_scheduling_trace_record__init
+ (PcmdReport__TpDlSchedulingTraceRecord *message);
+/* PcmdReport__TpUeMeasTraceRecord methods */
+void pcmd_report__tp_ue_meas_trace_record__init
+ (PcmdReport__TpUeMeasTraceRecord *message);
+/* PcmdReport__TpMeasResultPCell methods */
+void pcmd_report__tp_meas_result_pcell__init
+ (PcmdReport__TpMeasResultPCell *message);
+/* PcmdReport__TpMeasResultEUTRA methods */
+void pcmd_report__tp_meas_result_eutra__init
+ (PcmdReport__TpMeasResultEUTRA *message);
+/* PcmdReport__TpDlCaSCellSchedulingTraceRecord methods */
+void pcmd_report__tp_dl_ca_scell_scheduling_trace_record__init
+ (PcmdReport__TpDlCaSCellSchedulingTraceRecord *message);
+/* PcmdReport__SgNBTraceRecordList methods */
+void pcmd_report__sg_nbtrace_record_list__init
+ (PcmdReport__SgNBTraceRecordList *message);
+/* PcmdReport__TpUlUeThroughputMeasurements methods */
+void pcmd_report__tp_ul_ue_throughput_measurements__init
+ (PcmdReport__TpUlUeThroughputMeasurements *message);
+/* PcmdReport__TpDlUeThroughputMeasurements methods */
+void pcmd_report__tp_dl_ue_throughput_measurements__init
+ (PcmdReport__TpDlUeThroughputMeasurements *message);
+/* PcmdReport__CellGlobalIdEUTRA methods */
+void pcmd_report__cell_global_id_eutra__init
+ (PcmdReport__CellGlobalIdEUTRA *message);
+/* PcmdReport__GlobalGnbId methods */
+void pcmd_report__global_gnb_id__init
+ (PcmdReport__GlobalGnbId *message);
+/* PcmdReport__AvgWbCqi methods */
+void pcmd_report__avg_wb_cqi__init
+ (PcmdReport__AvgWbCqi *message);
+/* PcmdReport__AvgSINR methods */
+void pcmd_report__avg_sinr__init
+ (PcmdReport__AvgSINR *message);
+/* PcmdReport__AvgPhr methods */
+void pcmd_report__avg_phr__init
+ (PcmdReport__AvgPhr *message);
+/* PcmdReport__NullableSint32 methods */
+void pcmd_report__nullable_sint32__init
+ (PcmdReport__NullableSint32 *message);
+/* PcmdReport__NullableUint32 methods */
+void pcmd_report__nullable_uint32__init
+ (PcmdReport__NullableUint32 *message);
+/* PcmdReport__NullableUint64 methods */
+void pcmd_report__nullable_uint64__init
+ (PcmdReport__NullableUint64 *message);
+/* PcmdReport methods */
+void pcmd_report__init
+ (PcmdReport *message);
+size_t pcmd_report__get_packed_size
+ (const PcmdReport *message);
+size_t pcmd_report__pack
+ (const PcmdReport *message,
+ uint8_t *out);
+size_t pcmd_report__pack_to_buffer
+ (const PcmdReport *message,
+ ProtobufCBuffer *buffer);
+PcmdReport *
+ pcmd_report__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void pcmd_report__free_unpacked
+ (PcmdReport *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*PcmdReport__TpUlRadioBearerRlcThroughputRecord_Closure)
+ (const PcmdReport__TpUlRadioBearerRlcThroughputRecord *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpDlRadioBearerRlcThroughputRecord_Closure)
+ (const PcmdReport__TpDlRadioBearerRlcThroughputRecord *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpDlRadioBearerPdcpThroughputRecord_Closure)
+ (const PcmdReport__TpDlRadioBearerPdcpThroughputRecord *message,
+ void *closure_data);
+typedef void (*PcmdReport__StartRecordingSession_Closure)
+ (const PcmdReport__StartRecordingSession *message,
+ void *closure_data);
+typedef void (*PcmdReport__StopRecordingSession_Closure)
+ (const PcmdReport__StopRecordingSession *message,
+ void *closure_data);
+typedef void (*PcmdReport__SessionInfo_Closure)
+ (const PcmdReport__SessionInfo *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpCaRlcThroughputTrace_Closure)
+ (const PcmdReport__TpCaRlcThroughputTrace *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpDlRadioBearerPdcpThroughputData_Closure)
+ (const PcmdReport__TpDlRadioBearerPdcpThroughputData *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpUlRadioBearerRlcThroughputData_Closure)
+ (const PcmdReport__TpUlRadioBearerRlcThroughputData *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpDlRadioBearerRlcThroughputData_Closure)
+ (const PcmdReport__TpDlRadioBearerRlcThroughputData *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpCaConfigurationTraceRecord_Closure)
+ (const PcmdReport__TpCaConfigurationTraceRecord *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpSCellConfigured_Closure)
+ (const PcmdReport__TpSCellConfigured *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpSCellDeconfigured_Closure)
+ (const PcmdReport__TpSCellDeconfigured *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpUlSchedulingTraceRecord_Closure)
+ (const PcmdReport__TpUlSchedulingTraceRecord *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpDlSchedulingTraceRecord_Closure)
+ (const PcmdReport__TpDlSchedulingTraceRecord *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpUeMeasTraceRecord_Closure)
+ (const PcmdReport__TpUeMeasTraceRecord *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpMeasResultPCell_Closure)
+ (const PcmdReport__TpMeasResultPCell *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpMeasResultEUTRA_Closure)
+ (const PcmdReport__TpMeasResultEUTRA *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpDlCaSCellSchedulingTraceRecord_Closure)
+ (const PcmdReport__TpDlCaSCellSchedulingTraceRecord *message,
+ void *closure_data);
+typedef void (*PcmdReport__SgNBTraceRecordList_Closure)
+ (const PcmdReport__SgNBTraceRecordList *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpUlUeThroughputMeasurements_Closure)
+ (const PcmdReport__TpUlUeThroughputMeasurements *message,
+ void *closure_data);
+typedef void (*PcmdReport__TpDlUeThroughputMeasurements_Closure)
+ (const PcmdReport__TpDlUeThroughputMeasurements *message,
+ void *closure_data);
+typedef void (*PcmdReport__CellGlobalIdEUTRA_Closure)
+ (const PcmdReport__CellGlobalIdEUTRA *message,
+ void *closure_data);
+typedef void (*PcmdReport__GlobalGnbId_Closure)
+ (const PcmdReport__GlobalGnbId *message,
+ void *closure_data);
+typedef void (*PcmdReport__AvgWbCqi_Closure)
+ (const PcmdReport__AvgWbCqi *message,
+ void *closure_data);
+typedef void (*PcmdReport__AvgSINR_Closure)
+ (const PcmdReport__AvgSINR *message,
+ void *closure_data);
+typedef void (*PcmdReport__AvgPhr_Closure)
+ (const PcmdReport__AvgPhr *message,
+ void *closure_data);
+typedef void (*PcmdReport__NullableSint32_Closure)
+ (const PcmdReport__NullableSint32 *message,
+ void *closure_data);
+typedef void (*PcmdReport__NullableUint32_Closure)
+ (const PcmdReport__NullableUint32 *message,
+ void *closure_data);
+typedef void (*PcmdReport__NullableUint64_Closure)
+ (const PcmdReport__NullableUint64 *message,
+ void *closure_data);
+typedef void (*PcmdReport_Closure)
+ (const PcmdReport *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor pcmd_report__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_ul_radio_bearer_rlc_throughput_record__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_dl_radio_bearer_rlc_throughput_record__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_dl_radio_bearer_pdcp_throughput_record__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__start_recording_session__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__stop_recording_session__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__session_info__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_ca_rlc_throughput_trace__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_dl_radio_bearer_pdcp_throughput_data__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_ul_radio_bearer_rlc_throughput_data__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_dl_radio_bearer_rlc_throughput_data__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_ca_configuration_trace_record__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_scell_configured__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_scell_deconfigured__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_ul_scheduling_trace_record__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_dl_scheduling_trace_record__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_ue_meas_trace_record__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_meas_result_pcell__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_meas_result_eutra__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_dl_ca_scell_scheduling_trace_record__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__sg_nbtrace_record_list__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_ul_ue_throughput_measurements__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__tp_dl_ue_throughput_measurements__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__cell_global_id_eutra__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__global_gnb_id__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__avg_wb_cqi__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__avg_sinr__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__avg_phr__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__nullable_sint32__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__nullable_uint32__descriptor;
+extern const ProtobufCMessageDescriptor pcmd_report__nullable_uint64__descriptor;
+extern const ProtobufCEnumDescriptor pcmd_report__direction__descriptor;
+extern const ProtobufCEnumDescriptor pcmd_report__sg_nbtrace_record_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ricgeomessages_5fpcmdreport_2eproto__INCLUDED */