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

#ifndef	_ClientId_H_
#define	_ClientId_H_


#include <asn_application.h>

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

#ifdef __cplusplus
extern "C" {
#endif

/* ClientId */
typedef long	 ClientId_t;

/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_ClientId;
asn_struct_free_f ClientId_free;
asn_struct_print_f ClientId_print;
asn_constr_check_f ClientId_constraint;
ber_type_decoder_f ClientId_decode_ber;
der_type_encoder_f ClientId_encode_der;
xer_type_decoder_f ClientId_decode_xer;
xer_type_encoder_f ClientId_encode_xer;

#ifdef __cplusplus
}
#endif

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