/*
 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
 * From ASN.1 module "S1AP-IEs"
 * 	found in "./asn1c/S1AP-IEs.asn"
 * 	`asn1c -fcompound-names -fno-include-deps -gen-PER -findirect-choice -pdu=S1AP-PDU`
 */

#ifndef	_DataCodingScheme_H_
#define	_DataCodingScheme_H_


#include <asn_application.h>

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

#ifdef __cplusplus
extern "C" {
#endif

/* DataCodingScheme */
typedef BIT_STRING_t	 DataCodingScheme_t;

/* Implementation */
extern asn_per_constraints_t asn_PER_type_DataCodingScheme_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_DataCodingScheme;
asn_struct_free_f DataCodingScheme_free;
asn_struct_print_f DataCodingScheme_print;
asn_constr_check_f DataCodingScheme_constraint;
ber_type_decoder_f DataCodingScheme_decode_ber;
der_type_encoder_f DataCodingScheme_encode_der;
xer_type_decoder_f DataCodingScheme_decode_xer;
xer_type_encoder_f DataCodingScheme_encode_xer;
oer_type_decoder_f DataCodingScheme_decode_oer;
oer_type_encoder_f DataCodingScheme_encode_oer;
per_type_decoder_f DataCodingScheme_decode_uper;
per_type_encoder_f DataCodingScheme_encode_uper;
per_type_decoder_f DataCodingScheme_decode_aper;
per_type_encoder_f DataCodingScheme_encode_aper;

#ifdef __cplusplus
}
#endif

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