/*
* Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
* From ASN.1 module "X2AP-Containers"
- * found in "Spec/e2ap-v031ex.asn"
- * `asn1c -fcompound-names -fno-include-deps -findirect-choice -gen-PER`
+ * found in "X2AP-15-4-0.asn1"
+ * `asn1c -D ./asn1_n1 -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example`
*/
#include "ProtocolIE-Field.h"
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdate_IEs, id));
+ const int indexToPresence[4] = {
+ RICserviceUpdate_IEs__value_PR_NOTHING,
+ RICserviceUpdate_IEs__value_PR_RANfunctions_List,
+ RICserviceUpdate_IEs__value_PR_RANfunctions_List,
+ RICserviceUpdate_IEs__value_PR_RANfunctionsID_List
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct HandoverRequestAcknowledge_IEs, id));
+ const int indexToPresence[12] = {
+ HandoverRequestAcknowledge_IEs__value_PR_NOTHING,
+ HandoverRequestAcknowledge_IEs__value_PR_UE_X2AP_ID,
+ HandoverRequestAcknowledge_IEs__value_PR_UE_X2AP_ID,
+ HandoverRequestAcknowledge_IEs__value_PR_E_RABs_Admitted_List,
+ HandoverRequestAcknowledge_IEs__value_PR_E_RAB_List,
+ HandoverRequestAcknowledge_IEs__value_PR_TargeteNBtoSource_eNBTransparentContainer,
+ HandoverRequestAcknowledge_IEs__value_PR_CriticalityDiagnostics,
+ HandoverRequestAcknowledge_IEs__value_PR_UE_ContextKeptIndicator,
+ HandoverRequestAcknowledge_IEs__value_PR_UE_X2AP_ID_Extension,
+ HandoverRequestAcknowledge_IEs__value_PR_UE_X2AP_ID_Extension,
+ HandoverRequestAcknowledge_IEs__value_PR_UE_X2AP_ID_Extension,
+ HandoverRequestAcknowledge_IEs__value_PR_UE_ContextKeptIndicator
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct HandoverReport_IEs, id));
+ const int indexToPresence[11] = {
+ HandoverReport_IEs__value_PR_NOTHING,
+ HandoverReport_IEs__value_PR_HandoverReportType,
+ HandoverReport_IEs__value_PR_Cause,
+ HandoverReport_IEs__value_PR_ECGI,
+ HandoverReport_IEs__value_PR_ECGI,
+ HandoverReport_IEs__value_PR_ECGI,
+ HandoverReport_IEs__value_PR_TargetCellInUTRAN,
+ HandoverReport_IEs__value_PR_CRNTI,
+ HandoverReport_IEs__value_PR_MobilityInformation,
+ HandoverReport_IEs__value_PR_UE_RLF_Report_Container,
+ HandoverReport_IEs__value_PR_UE_RLF_Report_Container_for_extended_bands
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SNStatusTransfer_IEs, id));
+ const int indexToPresence[7] = {
+ SNStatusTransfer_IEs__value_PR_NOTHING,
+ SNStatusTransfer_IEs__value_PR_UE_X2AP_ID,
+ SNStatusTransfer_IEs__value_PR_UE_X2AP_ID,
+ SNStatusTransfer_IEs__value_PR_E_RABs_SubjectToStatusTransfer_List,
+ SNStatusTransfer_IEs__value_PR_UE_X2AP_ID_Extension,
+ SNStatusTransfer_IEs__value_PR_UE_X2AP_ID_Extension,
+ SNStatusTransfer_IEs__value_PR_SgNB_UE_X2AP_ID
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct UEContextRelease_IEs, id));
+ const int indexToPresence[7] = {
+ UEContextRelease_IEs__value_PR_NOTHING,
+ UEContextRelease_IEs__value_PR_UE_X2AP_ID,
+ UEContextRelease_IEs__value_PR_UE_X2AP_ID,
+ UEContextRelease_IEs__value_PR_UE_X2AP_ID_Extension,
+ UEContextRelease_IEs__value_PR_UE_X2AP_ID_Extension,
+ UEContextRelease_IEs__value_PR_SIPTOBearerDeactivationIndication,
+ UEContextRelease_IEs__value_PR_SgNB_UE_X2AP_ID
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct HandoverCancel_IEs, id));
+ const int indexToPresence[6] = {
+ HandoverCancel_IEs__value_PR_NOTHING,
+ HandoverCancel_IEs__value_PR_UE_X2AP_ID,
+ HandoverCancel_IEs__value_PR_UE_X2AP_ID,
+ HandoverCancel_IEs__value_PR_Cause,
+ HandoverCancel_IEs__value_PR_UE_X2AP_ID_Extension,
+ HandoverCancel_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ErrorIndication_IEs, id));
+ const int indexToPresence[8] = {
+ ErrorIndication_IEs__value_PR_NOTHING,
+ ErrorIndication_IEs__value_PR_UE_X2AP_ID,
+ ErrorIndication_IEs__value_PR_UE_X2AP_ID,
+ ErrorIndication_IEs__value_PR_Cause,
+ ErrorIndication_IEs__value_PR_CriticalityDiagnostics,
+ ErrorIndication_IEs__value_PR_UE_X2AP_ID_Extension,
+ ErrorIndication_IEs__value_PR_UE_X2AP_ID_Extension,
+ ErrorIndication_IEs__value_PR_SgNB_UE_X2AP_ID
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ENBConfigurationUpdate_IEs, id));
+ const int indexToPresence[7] = {
+ ENBConfigurationUpdate_IEs__value_PR_NOTHING,
+ ENBConfigurationUpdate_IEs__value_PR_ServedCells,
+ ENBConfigurationUpdate_IEs__value_PR_ServedCellsToModify,
+ ENBConfigurationUpdate_IEs__value_PR_Old_ECGIs,
+ ENBConfigurationUpdate_IEs__value_PR_GUGroupIDList,
+ ENBConfigurationUpdate_IEs__value_PR_GUGroupIDList,
+ ENBConfigurationUpdate_IEs__value_PR_CoverageModificationList
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResourceStatusRequest_IEs, id));
+ const int indexToPresence[10] = {
+ ResourceStatusRequest_IEs__value_PR_NOTHING,
+ ResourceStatusRequest_IEs__value_PR_Measurement_ID,
+ ResourceStatusRequest_IEs__value_PR_Measurement_ID,
+ ResourceStatusRequest_IEs__value_PR_Registration_Request,
+ ResourceStatusRequest_IEs__value_PR_ReportCharacteristics,
+ ResourceStatusRequest_IEs__value_PR_CellToReport_List,
+ ResourceStatusRequest_IEs__value_PR_ReportingPeriodicity,
+ ResourceStatusRequest_IEs__value_PR_PartialSuccessIndicator,
+ ResourceStatusRequest_IEs__value_PR_ReportingPeriodicityRSRPMR,
+ ResourceStatusRequest_IEs__value_PR_ReportingPeriodicityCSIR
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResourceStatusResponse_IEs, id));
+ const int indexToPresence[5] = {
+ ResourceStatusResponse_IEs__value_PR_NOTHING,
+ ResourceStatusResponse_IEs__value_PR_Measurement_ID,
+ ResourceStatusResponse_IEs__value_PR_Measurement_ID,
+ ResourceStatusResponse_IEs__value_PR_CriticalityDiagnostics,
+ ResourceStatusResponse_IEs__value_PR_MeasurementInitiationResult_List
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResourceStatusFailure_IEs, id));
+ const int indexToPresence[6] = {
+ ResourceStatusFailure_IEs__value_PR_NOTHING,
+ ResourceStatusFailure_IEs__value_PR_Measurement_ID,
+ ResourceStatusFailure_IEs__value_PR_Measurement_ID,
+ ResourceStatusFailure_IEs__value_PR_Cause,
+ ResourceStatusFailure_IEs__value_PR_CriticalityDiagnostics,
+ ResourceStatusFailure_IEs__value_PR_CompleteFailureCauseInformation_List
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResourceStatusUpdate_IEs, id));
+ const int indexToPresence[4] = {
+ ResourceStatusUpdate_IEs__value_PR_NOTHING,
+ ResourceStatusUpdate_IEs__value_PR_Measurement_ID,
+ ResourceStatusUpdate_IEs__value_PR_Measurement_ID,
+ ResourceStatusUpdate_IEs__value_PR_CellMeasurementResult_List
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct MobilityChangeRequest_IEs, id));
+ const int indexToPresence[6] = {
+ MobilityChangeRequest_IEs__value_PR_NOTHING,
+ MobilityChangeRequest_IEs__value_PR_ECGI,
+ MobilityChangeRequest_IEs__value_PR_ECGI,
+ MobilityChangeRequest_IEs__value_PR_MobilityParametersInformation,
+ MobilityChangeRequest_IEs__value_PR_MobilityParametersInformation,
+ MobilityChangeRequest_IEs__value_PR_Cause
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct MobilityChangeAcknowledge_IEs, id));
+ const int indexToPresence[4] = {
+ MobilityChangeAcknowledge_IEs__value_PR_NOTHING,
+ MobilityChangeAcknowledge_IEs__value_PR_ECGI,
+ MobilityChangeAcknowledge_IEs__value_PR_ECGI,
+ MobilityChangeAcknowledge_IEs__value_PR_CriticalityDiagnostics
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct MobilityChangeFailure_IEs, id));
+ const int indexToPresence[6] = {
+ MobilityChangeFailure_IEs__value_PR_NOTHING,
+ MobilityChangeFailure_IEs__value_PR_ECGI,
+ MobilityChangeFailure_IEs__value_PR_ECGI,
+ MobilityChangeFailure_IEs__value_PR_Cause,
+ MobilityChangeFailure_IEs__value_PR_MobilityParametersModificationRange,
+ MobilityChangeFailure_IEs__value_PR_CriticalityDiagnostics
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBAdditionRequest_IEs, id));
+ const int indexToPresence[13] = {
+ SeNBAdditionRequest_IEs__value_PR_NOTHING,
+ SeNBAdditionRequest_IEs__value_PR_UE_X2AP_ID,
+ SeNBAdditionRequest_IEs__value_PR_UESecurityCapabilities,
+ SeNBAdditionRequest_IEs__value_PR_SeNBSecurityKey,
+ SeNBAdditionRequest_IEs__value_PR_UEAggregateMaximumBitRate,
+ SeNBAdditionRequest_IEs__value_PR_PLMN_Identity,
+ SeNBAdditionRequest_IEs__value_PR_E_RABs_ToBeAdded_List,
+ SeNBAdditionRequest_IEs__value_PR_MeNBtoSeNBContainer,
+ SeNBAdditionRequest_IEs__value_PR_CSGMembershipStatus,
+ SeNBAdditionRequest_IEs__value_PR_UE_X2AP_ID,
+ SeNBAdditionRequest_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBAdditionRequest_IEs__value_PR_ExpectedUEBehaviour,
+ SeNBAdditionRequest_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBAdditionRequestAcknowledge_IEs, id));
+ const int indexToPresence[12] = {
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_NOTHING,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_UE_X2AP_ID,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_UE_X2AP_ID,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_E_RABs_Admitted_ToBeAdded_List,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_E_RAB_List,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_SeNBtoMeNBContainer,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_CriticalityDiagnostics,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_TransportLayerAddress,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_TransportLayerAddress,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBAdditionRequestAcknowledge_IEs__value_PR_TunnelInformation
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBAdditionRequestReject_IEs, id));
+ const int indexToPresence[7] = {
+ SeNBAdditionRequestReject_IEs__value_PR_NOTHING,
+ SeNBAdditionRequestReject_IEs__value_PR_UE_X2AP_ID,
+ SeNBAdditionRequestReject_IEs__value_PR_UE_X2AP_ID,
+ SeNBAdditionRequestReject_IEs__value_PR_Cause,
+ SeNBAdditionRequestReject_IEs__value_PR_CriticalityDiagnostics,
+ SeNBAdditionRequestReject_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBAdditionRequestReject_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBReconfigurationComplete_IEs, id));
+ const int indexToPresence[6] = {
+ SeNBReconfigurationComplete_IEs__value_PR_NOTHING,
+ SeNBReconfigurationComplete_IEs__value_PR_UE_X2AP_ID,
+ SeNBReconfigurationComplete_IEs__value_PR_UE_X2AP_ID,
+ SeNBReconfigurationComplete_IEs__value_PR_ResponseInformationSeNBReconfComp,
+ SeNBReconfigurationComplete_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBReconfigurationComplete_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBModificationRequest_IEs, id));
+ const int indexToPresence[11] = {
+ SeNBModificationRequest_IEs__value_PR_NOTHING,
+ SeNBModificationRequest_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationRequest_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationRequest_IEs__value_PR_Cause,
+ SeNBModificationRequest_IEs__value_PR_SCGChangeIndication,
+ SeNBModificationRequest_IEs__value_PR_PLMN_Identity,
+ SeNBModificationRequest_IEs__value_PR_UE_ContextInformationSeNBModReq,
+ SeNBModificationRequest_IEs__value_PR_MeNBtoSeNBContainer,
+ SeNBModificationRequest_IEs__value_PR_CSGMembershipStatus,
+ SeNBModificationRequest_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBModificationRequest_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBModificationRequestAcknowledge_IEs, id));
+ const int indexToPresence[11] = {
+ SeNBModificationRequestAcknowledge_IEs__value_PR_NOTHING,
+ SeNBModificationRequestAcknowledge_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationRequestAcknowledge_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationRequestAcknowledge_IEs__value_PR_E_RABs_Admitted_ToBeAdded_ModAckList,
+ SeNBModificationRequestAcknowledge_IEs__value_PR_E_RABs_Admitted_ToBeModified_ModAckList,
+ SeNBModificationRequestAcknowledge_IEs__value_PR_E_RABs_Admitted_ToBeReleased_ModAckList,
+ SeNBModificationRequestAcknowledge_IEs__value_PR_E_RAB_List,
+ SeNBModificationRequestAcknowledge_IEs__value_PR_SeNBtoMeNBContainer,
+ SeNBModificationRequestAcknowledge_IEs__value_PR_CriticalityDiagnostics,
+ SeNBModificationRequestAcknowledge_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBModificationRequestAcknowledge_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBModificationRequestReject_IEs, id));
+ const int indexToPresence[7] = {
+ SeNBModificationRequestReject_IEs__value_PR_NOTHING,
+ SeNBModificationRequestReject_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationRequestReject_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationRequestReject_IEs__value_PR_Cause,
+ SeNBModificationRequestReject_IEs__value_PR_CriticalityDiagnostics,
+ SeNBModificationRequestReject_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBModificationRequestReject_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBModificationRequired_IEs, id));
+ const int indexToPresence[9] = {
+ SeNBModificationRequired_IEs__value_PR_NOTHING,
+ SeNBModificationRequired_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationRequired_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationRequired_IEs__value_PR_Cause,
+ SeNBModificationRequired_IEs__value_PR_SCGChangeIndication,
+ SeNBModificationRequired_IEs__value_PR_E_RABs_ToBeReleased_ModReqd,
+ SeNBModificationRequired_IEs__value_PR_SeNBtoMeNBContainer,
+ SeNBModificationRequired_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBModificationRequired_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBModificationConfirm_IEs, id));
+ const int indexToPresence[7] = {
+ SeNBModificationConfirm_IEs__value_PR_NOTHING,
+ SeNBModificationConfirm_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationConfirm_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationConfirm_IEs__value_PR_MeNBtoSeNBContainer,
+ SeNBModificationConfirm_IEs__value_PR_CriticalityDiagnostics,
+ SeNBModificationConfirm_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBModificationConfirm_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBModificationRefuse_IEs, id));
+ const int indexToPresence[8] = {
+ SeNBModificationRefuse_IEs__value_PR_NOTHING,
+ SeNBModificationRefuse_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationRefuse_IEs__value_PR_UE_X2AP_ID,
+ SeNBModificationRefuse_IEs__value_PR_Cause,
+ SeNBModificationRefuse_IEs__value_PR_MeNBtoSeNBContainer,
+ SeNBModificationRefuse_IEs__value_PR_CriticalityDiagnostics,
+ SeNBModificationRefuse_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBModificationRefuse_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBReleaseRequest_IEs, id));
+ const int indexToPresence[9] = {
+ SeNBReleaseRequest_IEs__value_PR_NOTHING,
+ SeNBReleaseRequest_IEs__value_PR_UE_X2AP_ID,
+ SeNBReleaseRequest_IEs__value_PR_UE_X2AP_ID,
+ SeNBReleaseRequest_IEs__value_PR_Cause,
+ SeNBReleaseRequest_IEs__value_PR_E_RABs_ToBeReleased_List_RelReq,
+ SeNBReleaseRequest_IEs__value_PR_UE_ContextKeptIndicator,
+ SeNBReleaseRequest_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBReleaseRequest_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBReleaseRequest_IEs__value_PR_MakeBeforeBreakIndicator
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBReleaseRequired_IEs, id));
+ const int indexToPresence[6] = {
+ SeNBReleaseRequired_IEs__value_PR_NOTHING,
+ SeNBReleaseRequired_IEs__value_PR_UE_X2AP_ID,
+ SeNBReleaseRequired_IEs__value_PR_UE_X2AP_ID,
+ SeNBReleaseRequired_IEs__value_PR_Cause,
+ SeNBReleaseRequired_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBReleaseRequired_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBReleaseConfirm_IEs, id));
+ const int indexToPresence[7] = {
+ SeNBReleaseConfirm_IEs__value_PR_NOTHING,
+ SeNBReleaseConfirm_IEs__value_PR_UE_X2AP_ID,
+ SeNBReleaseConfirm_IEs__value_PR_UE_X2AP_ID,
+ SeNBReleaseConfirm_IEs__value_PR_E_RABs_ToBeReleased_List_RelConf,
+ SeNBReleaseConfirm_IEs__value_PR_CriticalityDiagnostics,
+ SeNBReleaseConfirm_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBReleaseConfirm_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SeNBCounterCheckRequest_IEs, id));
+ const int indexToPresence[6] = {
+ SeNBCounterCheckRequest_IEs__value_PR_NOTHING,
+ SeNBCounterCheckRequest_IEs__value_PR_UE_X2AP_ID,
+ SeNBCounterCheckRequest_IEs__value_PR_UE_X2AP_ID,
+ SeNBCounterCheckRequest_IEs__value_PR_E_RABs_SubjectToCounterCheck_List,
+ SeNBCounterCheckRequest_IEs__value_PR_UE_X2AP_ID_Extension,
+ SeNBCounterCheckRequest_IEs__value_PR_UE_X2AP_ID_Extension
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RetrieveUEContextResponse_IEs, id));
+ const int indexToPresence[16] = {
+ RetrieveUEContextResponse_IEs__value_PR_NOTHING,
+ RetrieveUEContextResponse_IEs__value_PR_UE_X2AP_ID,
+ RetrieveUEContextResponse_IEs__value_PR_UE_X2AP_ID_Extension,
+ RetrieveUEContextResponse_IEs__value_PR_UE_X2AP_ID,
+ RetrieveUEContextResponse_IEs__value_PR_UE_X2AP_ID_Extension,
+ RetrieveUEContextResponse_IEs__value_PR_GUMMEI,
+ RetrieveUEContextResponse_IEs__value_PR_UE_ContextInformationRetrieve,
+ RetrieveUEContextResponse_IEs__value_PR_TraceActivation,
+ RetrieveUEContextResponse_IEs__value_PR_SRVCCOperationPossible,
+ RetrieveUEContextResponse_IEs__value_PR_Masked_IMEISV,
+ RetrieveUEContextResponse_IEs__value_PR_ExpectedUEBehaviour,
+ RetrieveUEContextResponse_IEs__value_PR_ProSeAuthorized,
+ RetrieveUEContextResponse_IEs__value_PR_CriticalityDiagnostics,
+ RetrieveUEContextResponse_IEs__value_PR_V2XServicesAuthorized,
+ RetrieveUEContextResponse_IEs__value_PR_AerialUEsubscriptionInformation,
+ RetrieveUEContextResponse_IEs__value_PR_Subscription_Based_UE_DifferentiationInfo
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SgNBModificationRequest_IEs, id));
+ const int indexToPresence[13] = {
+ SgNBModificationRequest_IEs__value_PR_NOTHING,
+ SgNBModificationRequest_IEs__value_PR_UE_X2AP_ID,
+ SgNBModificationRequest_IEs__value_PR_SgNB_UE_X2AP_ID,
+ SgNBModificationRequest_IEs__value_PR_Cause,
+ SgNBModificationRequest_IEs__value_PR_PLMN_Identity,
+ SgNBModificationRequest_IEs__value_PR_HandoverRestrictionList,
+ SgNBModificationRequest_IEs__value_PR_SCGConfigurationQuery,
+ SgNBModificationRequest_IEs__value_PR_UE_ContextInformation_SgNBModReq,
+ SgNBModificationRequest_IEs__value_PR_MeNBtoSgNBContainer,
+ SgNBModificationRequest_IEs__value_PR_UE_X2AP_ID_Extension,
+ SgNBModificationRequest_IEs__value_PR_MeNBResourceCoordinationInformation,
+ SgNBModificationRequest_IEs__value_PR_SplitSRBs,
+ SgNBModificationRequest_IEs__value_PR_SplitSRBs
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct SgNBModificationRequestAcknowledge_IEs, id));
+ const int indexToPresence[14] = {
+ SgNBModificationRequestAcknowledge_IEs__value_PR_NOTHING,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_UE_X2AP_ID,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_SgNB_UE_X2AP_ID,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_E_RABs_Admitted_ToBeAdded_SgNBModAckList,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_E_RABs_Admitted_ToBeModified_SgNBModAckList,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_E_RABs_Admitted_ToBeReleased_SgNBModAckList,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_E_RAB_List,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_SgNBtoMeNBContainer,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_CriticalityDiagnostics,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_UE_X2AP_ID_Extension,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_SgNBResourceCoordinationInformation,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_SplitSRBs,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_SplitSRBs,
+ SgNBModificationRequestAcknowledge_IEs__value_PR_RRC_Config_Ind
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}
size_t for_column = 2; /* &Value */
size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct DataForwardingAddressIndication_IEs, id));
+ const int indexToPresence[5] = {
+ DataForwardingAddressIndication_IEs__value_PR_NOTHING,
+ DataForwardingAddressIndication_IEs__value_PR_UE_X2AP_ID_Extension,
+ DataForwardingAddressIndication_IEs__value_PR_UE_X2AP_ID,
+ DataForwardingAddressIndication_IEs__value_PR_UE_X2AP_ID_Extension,
+ DataForwardingAddressIndication_IEs__value_PR_E_RABs_DataForwardingAddress_List
+ };
for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor;
- result.presence_index = presence_index;
+ result.presence_index = indexToPresence[presence_index];
break;
}
}