/* automatically generated by pepsy 8.0 #4 (purplet), do not edit! */

#ifndef	_module_ACS_defined_
#define	_module_ACS_defined_

#ifndef	PEPSY_VERSION
#define	PEPSY_VERSION		2
#endif

#ifndef	PEPYPATH
#include <isode/psap.h>
#include <isode/pepsy.h>
#include <isode/pepsy/UNIV-types.h>
#else
#include "psap.h"
#include "pepsy.h"
#include "UNIV-types.h"
#endif



extern modtyp	_ZACS_mod;
#define _ZAE_invocation_idACS	11
#define _ZAssociate_source_diagnosticACS	14
#define _ZAARQ_apduACS	1
#define _ZABRT_sourceACS	6
#define _ZRelease_response_reasonACS	18
#define _ZAssociate_resultACS	13
#define _ZAP_titleACS	8
#define _ZAssociation_informationACS	15
#define _ZRLRQ_apduACS	3
#define _ZAARE_apduACS	2
#define _ZRelease_request_reasonACS	17
#define _ZApplication_context_nameACS	7
#define _ZABRT_apduACS	5
#define _ZAE_titleACS	10
#define _ZACSE_apduACS	0
#define _ZAP_invocation_idACS	12
#define _ZImplementation_dataACS	16
#define _ZRLRE_apduACS	4
#define _ZAE_qualifierACS	9

#ifndef	lint
#define encode_ACS_ACSE__apdu(pe, top, len, buffer, parm) \
    enc_f(_ZACSE_apduACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_ACSE__apdu(pe, top, len, buffer, parm) \
    dec_f(_ZACSE_apduACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_ACSE__apdu(pe, top, len, buffer, parm) \
    prnt_f(_ZACSE_apduACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_ACSE__apdu_P    _ZACSE_apduACS, &_ZACS_mod

#define encode_ACS_AARQ__apdu(pe, top, len, buffer, parm) \
    enc_f(_ZAARQ_apduACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_AARQ__apdu(pe, top, len, buffer, parm) \
    dec_f(_ZAARQ_apduACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_AARQ__apdu(pe, top, len, buffer, parm) \
    prnt_f(_ZAARQ_apduACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_AARQ__apdu_P    _ZAARQ_apduACS, &_ZACS_mod

#define encode_ACS_AARE__apdu(pe, top, len, buffer, parm) \
    enc_f(_ZAARE_apduACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_AARE__apdu(pe, top, len, buffer, parm) \
    dec_f(_ZAARE_apduACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_AARE__apdu(pe, top, len, buffer, parm) \
    prnt_f(_ZAARE_apduACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_AARE__apdu_P    _ZAARE_apduACS, &_ZACS_mod

#define encode_ACS_RLRQ__apdu(pe, top, len, buffer, parm) \
    enc_f(_ZRLRQ_apduACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_RLRQ__apdu(pe, top, len, buffer, parm) \
    dec_f(_ZRLRQ_apduACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_RLRQ__apdu(pe, top, len, buffer, parm) \
    prnt_f(_ZRLRQ_apduACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_RLRQ__apdu_P    _ZRLRQ_apduACS, &_ZACS_mod

#define encode_ACS_RLRE__apdu(pe, top, len, buffer, parm) \
    enc_f(_ZRLRE_apduACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_RLRE__apdu(pe, top, len, buffer, parm) \
    dec_f(_ZRLRE_apduACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_RLRE__apdu(pe, top, len, buffer, parm) \
    prnt_f(_ZRLRE_apduACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_RLRE__apdu_P    _ZRLRE_apduACS, &_ZACS_mod

#define encode_ACS_ABRT__apdu(pe, top, len, buffer, parm) \
    enc_f(_ZABRT_apduACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_ABRT__apdu(pe, top, len, buffer, parm) \
    dec_f(_ZABRT_apduACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_ABRT__apdu(pe, top, len, buffer, parm) \
    prnt_f(_ZABRT_apduACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_ABRT__apdu_P    _ZABRT_apduACS, &_ZACS_mod

#define encode_ACS_ABRT__source(pe, top, len, buffer, parm) \
    enc_f(_ZABRT_sourceACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_ABRT__source(pe, top, len, buffer, parm) \
    dec_f(_ZABRT_sourceACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_ABRT__source(pe, top, len, buffer, parm) \
    prnt_f(_ZABRT_sourceACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_ABRT__source_P    _ZABRT_sourceACS, &_ZACS_mod

#define encode_ACS_Application__context__name(pe, top, len, buffer, parm) \
    enc_f(_ZApplication_context_nameACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_Application__context__name(pe, top, len, buffer, parm) \
    dec_f(_ZApplication_context_nameACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_Application__context__name(pe, top, len, buffer, parm) \
    prnt_f(_ZApplication_context_nameACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_Application__context__name_P    _ZApplication_context_nameACS, &_ZACS_mod

#define encode_ACS_AP__title(pe, top, len, buffer, parm) \
    enc_f(_ZAP_titleACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_AP__title(pe, top, len, buffer, parm) \
    dec_f(_ZAP_titleACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_AP__title(pe, top, len, buffer, parm) \
    prnt_f(_ZAP_titleACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_AP__title_P    _ZAP_titleACS, &_ZACS_mod

#define encode_ACS_AE__qualifier(pe, top, len, buffer, parm) \
    enc_f(_ZAE_qualifierACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_AE__qualifier(pe, top, len, buffer, parm) \
    dec_f(_ZAE_qualifierACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_AE__qualifier(pe, top, len, buffer, parm) \
    prnt_f(_ZAE_qualifierACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_AE__qualifier_P    _ZAE_qualifierACS, &_ZACS_mod

#define encode_ACS_AE__title(pe, top, len, buffer, parm) \
    enc_f(_ZAE_titleACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_AE__title(pe, top, len, buffer, parm) \
    dec_f(_ZAE_titleACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_AE__title(pe, top, len, buffer, parm) \
    prnt_f(_ZAE_titleACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_AE__title_P    _ZAE_titleACS, &_ZACS_mod

#define encode_ACS_AE__invocation__id(pe, top, len, buffer, parm) \
    enc_f(_ZAE_invocation_idACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_AE__invocation__id(pe, top, len, buffer, parm) \
    dec_f(_ZAE_invocation_idACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_AE__invocation__id(pe, top, len, buffer, parm) \
    prnt_f(_ZAE_invocation_idACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_AE__invocation__id_P    _ZAE_invocation_idACS, &_ZACS_mod

#define encode_ACS_AP__invocation__id(pe, top, len, buffer, parm) \
    enc_f(_ZAP_invocation_idACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_AP__invocation__id(pe, top, len, buffer, parm) \
    dec_f(_ZAP_invocation_idACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_AP__invocation__id(pe, top, len, buffer, parm) \
    prnt_f(_ZAP_invocation_idACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_AP__invocation__id_P    _ZAP_invocation_idACS, &_ZACS_mod

#define encode_ACS_Associate__result(pe, top, len, buffer, parm) \
    enc_f(_ZAssociate_resultACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_Associate__result(pe, top, len, buffer, parm) \
    dec_f(_ZAssociate_resultACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_Associate__result(pe, top, len, buffer, parm) \
    prnt_f(_ZAssociate_resultACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_Associate__result_P    _ZAssociate_resultACS, &_ZACS_mod

#define encode_ACS_Associate__source__diagnostic(pe, top, len, buffer, parm) \
    enc_f(_ZAssociate_source_diagnosticACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_Associate__source__diagnostic(pe, top, len, buffer, parm) \
    dec_f(_ZAssociate_source_diagnosticACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_Associate__source__diagnostic(pe, top, len, buffer, parm) \
    prnt_f(_ZAssociate_source_diagnosticACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_Associate__source__diagnostic_P    _ZAssociate_source_diagnosticACS, &_ZACS_mod

#define encode_ACS_Association__information(pe, top, len, buffer, parm) \
    enc_f(_ZAssociation_informationACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_Association__information(pe, top, len, buffer, parm) \
    dec_f(_ZAssociation_informationACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_Association__information(pe, top, len, buffer, parm) \
    prnt_f(_ZAssociation_informationACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_Association__information_P    _ZAssociation_informationACS, &_ZACS_mod

#define encode_ACS_Implementation__data(pe, top, len, buffer, parm) \
    enc_f(_ZImplementation_dataACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_Implementation__data(pe, top, len, buffer, parm) \
    dec_f(_ZImplementation_dataACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_Implementation__data(pe, top, len, buffer, parm) \
    prnt_f(_ZImplementation_dataACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_Implementation__data_P    _ZImplementation_dataACS, &_ZACS_mod

#define encode_ACS_Release__request__reason(pe, top, len, buffer, parm) \
    enc_f(_ZRelease_request_reasonACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_Release__request__reason(pe, top, len, buffer, parm) \
    dec_f(_ZRelease_request_reasonACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_Release__request__reason(pe, top, len, buffer, parm) \
    prnt_f(_ZRelease_request_reasonACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_Release__request__reason_P    _ZRelease_request_reasonACS, &_ZACS_mod

#define encode_ACS_Release__response__reason(pe, top, len, buffer, parm) \
    enc_f(_ZRelease_response_reasonACS, &_ZACS_mod, pe, top, len, buffer, (char *) parm)

#define decode_ACS_Release__response__reason(pe, top, len, buffer, parm) \
    dec_f(_ZRelease_response_reasonACS, &_ZACS_mod, pe, top, len, buffer, (char **) parm)

#define print_ACS_Release__response__reason(pe, top, len, buffer, parm) \
    prnt_f(_ZRelease_response_reasonACS, &_ZACS_mod, pe, top, len, buffer)
#define print_ACS_Release__response__reason_P    _ZRelease_response_reasonACS, &_ZACS_mod


#endif   /* lint */

#define	type_ACS_Application__context__name	OIDentifier
#define	free_ACS_Application__context__name	oid_free

#define	type_ACS_AP__title	PElement
#define	free_ACS_AP__title	pe_free

#define	type_ACS_AE__qualifier	PElement
#define	free_ACS_AE__qualifier	pe_free

#define	type_ACS_Implementation__data	type_UNIV_GraphicString
#define	free_ACS_Implementation__data	free_UNIV_GraphicString

struct type_ACS_ACSE__apdu {
    int         offset;
#define	type_ACS_ACSE__apdu_aarq	1
#define	type_ACS_ACSE__apdu_aare	2
#define	type_ACS_ACSE__apdu_rlrq	3
#define	type_ACS_ACSE__apdu_rlre	4
#define	type_ACS_ACSE__apdu_abrt	5

    union {
        struct type_ACS_AARQ__apdu *aarq;

        struct type_ACS_AARE__apdu *aare;

        struct type_ACS_RLRQ__apdu *rlrq;

        struct type_ACS_RLRE__apdu *rlre;

        struct type_ACS_ABRT__apdu *abrt;
    }       un;
};
#define	free_ACS_ACSE__apdu(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZACSE_apduACS], &_ZACS_mod, 1)

struct type_ACS_AARQ__apdu {
    PE      protocol__version;
#define	bits_ACS_protocol__version	"\020\01version1"
#define	bit_ACS_protocol__version_version1	0

    struct type_ACS_Application__context__name *application__context__name;

    struct type_ACS_AP__title *called__AP__title;

    struct type_ACS_AE__qualifier *called__AE__qualifier;

    struct type_ACS_AP__invocation__id *called__AP__invocation__id;

    struct type_ACS_AE__invocation__id *called__AE__invocation__id;

    struct type_ACS_AP__title *calling__AP__title;

    struct type_ACS_AE__qualifier *calling__AE__qualifier;

    struct type_ACS_AP__invocation__id *calling__AP__invocation__id;

    struct type_ACS_AE__invocation__id *calling__AE__invocation__id;

    struct type_ACS_Implementation__data *implementation__information;

    struct type_ACS_Association__information *user__information;
};
#define	free_ACS_AARQ__apdu(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZAARQ_apduACS], &_ZACS_mod, 1)

struct type_ACS_AARE__apdu {
    PE      protocol__version;
#define	bits_ACS_protocol__version	"\020\01version1"
#define	bit_ACS_protocol__version_version1	0

    struct type_ACS_Application__context__name *application__context__name;

    integer     result;
#define	int_ACS_result_accepted	0
#define	int_ACS_result_rejected__permanent	1
#define	int_ACS_result_rejected__transient	2

    struct type_ACS_Associate__source__diagnostic *result__source__diagnostic;

    struct type_ACS_AP__title *responding__AP__title;

    struct type_ACS_AE__qualifier *responding__AE__qualifier;

    struct type_ACS_AP__invocation__id *responding__AP__invocation__id;

    struct type_ACS_AE__invocation__id *responding__AE__invocation__id;

    struct type_ACS_Implementation__data *implementation__information;

    struct type_ACS_Association__information *user__information;
};
#define	free_ACS_AARE__apdu(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZAARE_apduACS], &_ZACS_mod, 1)

struct type_ACS_RLRQ__apdu {
    integer     optionals;
#define	opt_ACS_RLRQ__apdu_reason (000000001)

    integer     reason;
#define	int_ACS_reason_normal	0
#define	int_ACS_reason_urgent	1
#define	int_ACS_reason_user__defined	30

    struct type_ACS_Association__information *user__information;
};
#define	free_ACS_RLRQ__apdu(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZRLRQ_apduACS], &_ZACS_mod, 1)

struct type_ACS_RLRE__apdu {
    integer     optionals;
#define	opt_ACS_RLRE__apdu_reason (000000001)

    integer     reason;
#define	int_ACS_reason_normal	0
#define	int_ACS_reason_not__finished	1
#define	int_ACS_reason_user__defined	30

    struct type_ACS_Association__information *user__information;
};
#define	free_ACS_RLRE__apdu(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZRLRE_apduACS], &_ZACS_mod, 1)

struct type_ACS_ABRT__apdu {
    integer     abort__source;
#define	int_ACS_abort__source_acse__service__user	0
#define	int_ACS_abort__source_acse__service__provider	1

    struct type_ACS_Association__information *user__information;
};
#define	free_ACS_ABRT__apdu(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZABRT_apduACS], &_ZACS_mod, 1)

struct type_ACS_ABRT__source {
    integer     parm;
#define	int_ACS_ABRT__source_acse__service__user	0
#define	int_ACS_ABRT__source_acse__service__provider	1
};
#define	free_ACS_ABRT__source(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZABRT_sourceACS], &_ZACS_mod, 1)

struct type_ACS_AE__title {
    struct type_ACS_AP__title *title;

    struct type_ACS_AE__qualifier *qualifier;
};
#define	free_ACS_AE__title(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZAE_titleACS], &_ZACS_mod, 1)

struct type_ACS_AE__invocation__id {
    integer     parm;
};
#define	free_ACS_AE__invocation__id(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZAE_invocation_idACS], &_ZACS_mod, 1)

struct type_ACS_AP__invocation__id {
    integer     parm;
};
#define	free_ACS_AP__invocation__id(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZAP_invocation_idACS], &_ZACS_mod, 1)

struct type_ACS_Associate__result {
    integer     parm;
#define	int_ACS_Associate__result_accepted	0
#define	int_ACS_Associate__result_rejected__permanent	1
#define	int_ACS_Associate__result_rejected__transient	2
};
#define	free_ACS_Associate__result(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZAssociate_resultACS], &_ZACS_mod, 1)

struct type_ACS_Associate__source__diagnostic {
    int         offset;
#define	type_ACS_Associate__source__diagnostic_acse__service__user	1
#define	type_ACS_Associate__source__diagnostic_acse__service__provider	2

    union {
        integer     acse__service__user;
#define	int_ACS_acse__service__user_null	0
#define	int_ACS_acse__service__user_no__reason__given	1
#define	int_ACS_acse__service__user_application__context__name__not__supported	2
#define	int_ACS_acse__service__user_calling__AP__title__not__recognized	3
#define	int_ACS_acse__service__user_calling__AP__invocation__identifier__not__recognized	4
#define	int_ACS_acse__service__user_calling__AE__qualifier__not__recognized	5
#define	int_ACS_acse__service__user_calling__AE__invocation__id__not__recognized	6
#define	int_ACS_acse__service__user_called__AP__title__not__recognized	7
#define	int_ACS_acse__service__user_called__AP__invocation__identifier__not__recognized	8
#define	int_ACS_acse__service__user_called__AE__qualifier__not__recognized	9
#define	int_ACS_acse__service__user_called__AE__invocation__id__not__recognized	10

        integer     acse__service__provider;
#define	int_ACS_acse__service__provider_null	0
#define	int_ACS_acse__service__provider_no__reason__given	1
#define	int_ACS_acse__service__provider_no__common__acse__version	2
    }       un;
};
#define	free_ACS_Associate__source__diagnostic(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZAssociate_source_diagnosticACS], &_ZACS_mod, 1)

struct type_ACS_Association__information {
        struct	type_UNIV_EXTERNAL	*EXTERNAL;

        struct type_ACS_Association__information *next;
};
#define	free_ACS_Association__information(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZAssociation_informationACS], &_ZACS_mod, 1)

struct type_ACS_Release__request__reason {
    integer     parm;
#define	int_ACS_Release__request__reason_normal	0
#define	int_ACS_Release__request__reason_urgent	1
#define	int_ACS_Release__request__reason_user__defined	30
};
#define	free_ACS_Release__request__reason(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZRelease_request_reasonACS], &_ZACS_mod, 1)

struct type_ACS_Release__response__reason {
    integer     parm;
#define	int_ACS_Release__response__reason_normal	0
#define	int_ACS_Release__response__reason_not__finished	1
#define	int_ACS_Release__response__reason_user__defined	30
};
#define	free_ACS_Release__response__reason(parm)\
	(void) fre_obj((char *) parm, _ZACS_mod.md_dtab[_ZRelease_response_reasonACS], &_ZACS_mod, 1)
#endif
