/*
 * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
 * From ASN.1 module "RUA-CommonDataTypes"
 * 	found in "../../asn1/rua/RUA-CommonDataTypes.asn"
 */

#ifndef	_RUA_ProtocolIE_ID_H_
#define	_RUA_ProtocolIE_ID_H_


#include <asn_application.h>

/* Including external dependencies */
#include <NativeInteger.h>

#ifdef __cplusplus
extern "C" {
#endif

/* Dependencies */
typedef enum RUA_ProtocolIE_ID {
	RUA_ProtocolIE_ID_id_Cause	= 1,
	RUA_ProtocolIE_ID_id_CriticalityDiagnostics	= 2,
	RUA_ProtocolIE_ID_id_Context_ID	= 3,
	RUA_ProtocolIE_ID_id_RANAP_Message	= 4,
	RUA_ProtocolIE_ID_id_IntraDomainNasNodeSelector	= 5,
	RUA_ProtocolIE_ID_id_Establishment_Cause	= 6,
	RUA_ProtocolIE_ID_id_CN_DomainIndicator	= 7,
	RUA_ProtocolIE_ID_id_CSGMembershipStatus	= 9
} e_RUA_ProtocolIE_ID;

/* RUA_ProtocolIE-ID */
typedef long	 RUA_ProtocolIE_ID_t;

/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RUA_ProtocolIE_ID;
asn_struct_free_f RUA_ProtocolIE_ID_free;
asn_struct_print_f RUA_ProtocolIE_ID_print;
asn_constr_check_f RUA_ProtocolIE_ID_constraint;
ber_type_decoder_f RUA_ProtocolIE_ID_decode_ber;
der_type_encoder_f RUA_ProtocolIE_ID_encode_der;
xer_type_decoder_f RUA_ProtocolIE_ID_decode_xer;
xer_type_encoder_f RUA_ProtocolIE_ID_encode_xer;
per_type_decoder_f RUA_ProtocolIE_ID_decode_uper;
per_type_encoder_f RUA_ProtocolIE_ID_encode_uper;
per_type_decoder_f RUA_ProtocolIE_ID_decode_aper;
per_type_encoder_f RUA_ProtocolIE_ID_encode_aper;

#ifdef __cplusplus
}
#endif

#endif	/* _RUA_ProtocolIE_ID_H_ */
#include <asn_internal.h>
