/*
 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
 * From ASN.1 module "E2AP-IEs"
 * 	found in "e2ap-oran-wg3-v01.00.asn"
 * 	`asn1c -fno-include-deps -fcompound-names -findirect-choice -gen-PER -no-gen-OER`
 */

#ifndef	_RANfunctionID_H_
#define	_RANfunctionID_H_


#include <asn_application.h>

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

#ifdef __cplusplus
extern "C" {
#endif

/* RANfunctionID */
typedef long	 RANfunctionID_t;

/* Implementation */
extern asn_per_constraints_t asn_PER_type_RANfunctionID_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_RANfunctionID;
asn_struct_free_f RANfunctionID_free;
asn_struct_print_f RANfunctionID_print;
asn_constr_check_f RANfunctionID_constraint;
ber_type_decoder_f RANfunctionID_decode_ber;
der_type_encoder_f RANfunctionID_encode_der;
xer_type_decoder_f RANfunctionID_decode_xer;
xer_type_encoder_f RANfunctionID_encode_xer;
per_type_decoder_f RANfunctionID_decode_uper;
per_type_encoder_f RANfunctionID_encode_uper;
per_type_decoder_f RANfunctionID_decode_aper;
per_type_encoder_f RANfunctionID_encode_aper;

#ifdef __cplusplus
}
#endif

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