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

#ifndef	_module_FADU_defined_
#define	_module_FADU_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	_ZFADU_mod;
#define _ZStructuring_Data_ElementFADU	8
#define _ZSubtreeFADU	0
#define _ZNode_Descriptor_Data_ElementFADU	3
#define _ZDUFADU	2
#define _ZEnter_Subtree_Data_ElementFADU	5
#define _ZNode_NameFADU	4
#define _ZFADUFADU	7
#define _ZExit_Subtree_Data_ElementFADU	6
#define _ZChildrenFADU	1

#ifndef	lint
#define encode_FADU_Subtree(pe, top, len, buffer, parm) \
    enc_f(_ZSubtreeFADU, &_ZFADU_mod, pe, top, len, buffer, (char *) parm)

#define decode_FADU_Subtree(pe, top, len, buffer, parm) \
    dec_f(_ZSubtreeFADU, &_ZFADU_mod, pe, top, len, buffer, (char **) parm)

#define print_FADU_Subtree(pe, top, len, buffer, parm) \
    prnt_f(_ZSubtreeFADU, &_ZFADU_mod, pe, top, len, buffer)
#define print_FADU_Subtree_P    _ZSubtreeFADU, &_ZFADU_mod

#define encode_FADU_Children(pe, top, len, buffer, parm) \
    enc_f(_ZChildrenFADU, &_ZFADU_mod, pe, top, len, buffer, (char *) parm)

#define decode_FADU_Children(pe, top, len, buffer, parm) \
    dec_f(_ZChildrenFADU, &_ZFADU_mod, pe, top, len, buffer, (char **) parm)

#define print_FADU_Children(pe, top, len, buffer, parm) \
    prnt_f(_ZChildrenFADU, &_ZFADU_mod, pe, top, len, buffer)
#define print_FADU_Children_P    _ZChildrenFADU, &_ZFADU_mod

#define encode_FADU_DU(pe, top, len, buffer, parm) \
    enc_f(_ZDUFADU, &_ZFADU_mod, pe, top, len, buffer, (char *) parm)

#define decode_FADU_DU(pe, top, len, buffer, parm) \
    dec_f(_ZDUFADU, &_ZFADU_mod, pe, top, len, buffer, (char **) parm)

#define print_FADU_DU(pe, top, len, buffer, parm) \
    prnt_f(_ZDUFADU, &_ZFADU_mod, pe, top, len, buffer)
#define print_FADU_DU_P    _ZDUFADU, &_ZFADU_mod

#define encode_FADU_Node__Descriptor__Data__Element(pe, top, len, buffer, parm) \
    enc_f(_ZNode_Descriptor_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer, (char *) parm)

#define decode_FADU_Node__Descriptor__Data__Element(pe, top, len, buffer, parm) \
    dec_f(_ZNode_Descriptor_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer, (char **) parm)

#define print_FADU_Node__Descriptor__Data__Element(pe, top, len, buffer, parm) \
    prnt_f(_ZNode_Descriptor_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer)
#define print_FADU_Node__Descriptor__Data__Element_P    _ZNode_Descriptor_Data_ElementFADU, &_ZFADU_mod

#define encode_FADU_Node__Name(pe, top, len, buffer, parm) \
    enc_f(_ZNode_NameFADU, &_ZFADU_mod, pe, top, len, buffer, (char *) parm)

#define decode_FADU_Node__Name(pe, top, len, buffer, parm) \
    dec_f(_ZNode_NameFADU, &_ZFADU_mod, pe, top, len, buffer, (char **) parm)

#define print_FADU_Node__Name(pe, top, len, buffer, parm) \
    prnt_f(_ZNode_NameFADU, &_ZFADU_mod, pe, top, len, buffer)
#define print_FADU_Node__Name_P    _ZNode_NameFADU, &_ZFADU_mod

#define encode_FADU_Enter__Subtree__Data__Element(pe, top, len, buffer, parm) \
    enc_f(_ZEnter_Subtree_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer, (char *) parm)

#define decode_FADU_Enter__Subtree__Data__Element(pe, top, len, buffer, parm) \
    dec_f(_ZEnter_Subtree_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer, (char **) parm)

#define print_FADU_Enter__Subtree__Data__Element(pe, top, len, buffer, parm) \
    prnt_f(_ZEnter_Subtree_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer)
#define print_FADU_Enter__Subtree__Data__Element_P    _ZEnter_Subtree_Data_ElementFADU, &_ZFADU_mod

#define encode_FADU_Exit__Subtree__Data__Element(pe, top, len, buffer, parm) \
    enc_f(_ZExit_Subtree_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer, (char *) parm)

#define decode_FADU_Exit__Subtree__Data__Element(pe, top, len, buffer, parm) \
    dec_f(_ZExit_Subtree_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer, (char **) parm)

#define print_FADU_Exit__Subtree__Data__Element(pe, top, len, buffer, parm) \
    prnt_f(_ZExit_Subtree_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer)
#define print_FADU_Exit__Subtree__Data__Element_P    _ZExit_Subtree_Data_ElementFADU, &_ZFADU_mod

#define encode_FADU_FADU(pe, top, len, buffer, parm) \
    enc_f(_ZFADUFADU, &_ZFADU_mod, pe, top, len, buffer, (char *) parm)

#define decode_FADU_FADU(pe, top, len, buffer, parm) \
    dec_f(_ZFADUFADU, &_ZFADU_mod, pe, top, len, buffer, (char **) parm)

#define print_FADU_FADU(pe, top, len, buffer, parm) \
    prnt_f(_ZFADUFADU, &_ZFADU_mod, pe, top, len, buffer)
#define print_FADU_FADU_P    _ZFADUFADU, &_ZFADU_mod

#define encode_FADU_Structuring__Data__Element(pe, top, len, buffer, parm) \
    enc_f(_ZStructuring_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer, (char *) parm)

#define decode_FADU_Structuring__Data__Element(pe, top, len, buffer, parm) \
    dec_f(_ZStructuring_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer, (char **) parm)

#define print_FADU_Structuring__Data__Element(pe, top, len, buffer, parm) \
    prnt_f(_ZStructuring_Data_ElementFADU, &_ZFADU_mod, pe, top, len, buffer)
#define print_FADU_Structuring__Data__Element_P    _ZStructuring_Data_ElementFADU, &_ZFADU_mod


#endif   /* lint */
#ifndef	PEPYPATH
#include "CONT-types.h"
#else
#include "CONT-types.h"
#endif



#define	type_FADU_Node__Name	type_UNIV_GraphicString
#define	free_FADU_Node__Name	free_UNIV_GraphicString

#define	type_FADU_FADU	type_FADU_Subtree
#define	free_FADU_FADU	free_FADU_Subtree

struct type_FADU_Subtree {
    struct type_FADU_Node__Descriptor__Data__Element *node;

    struct type_FADU_DU *data;

    struct type_FADU_Children *children;
};
#define	free_FADU_Subtree(parm)\
	(void) fre_obj((char *) parm, _ZFADU_mod.md_dtab[_ZSubtreeFADU], &_ZFADU_mod, 1)

struct type_FADU_Children {
    struct type_FADU_Enter__Subtree__Data__Element *enter__subtree;

    struct element_FADU_0 {
        struct type_FADU_Subtree *Subtree;

        struct element_FADU_0 *next;
    } *subtree;

    struct type_FADU_Exit__Subtree__Data__Element *exit__subtree;
};
#define	free_FADU_Children(parm)\
	(void) fre_obj((char *) parm, _ZFADU_mod.md_dtab[_ZChildrenFADU], &_ZFADU_mod, 1)

struct type_FADU_DU {
        struct type_CONT_File__Contents__Data__Element *File__Contents__Data__Element;

        struct type_FADU_DU *next;
};
#define	free_FADU_DU(parm)\
	(void) fre_obj((char *) parm, _ZFADU_mod.md_dtab[_ZDUFADU], &_ZFADU_mod, 1)

struct type_FADU_Node__Descriptor__Data__Element {
    struct type_FADU_Node__Name *name;

    integer     arc__length;

    char    data__exists;
};
#define	free_FADU_Node__Descriptor__Data__Element(parm)\
	(void) fre_obj((char *) parm, _ZFADU_mod.md_dtab[_ZNode_Descriptor_Data_ElementFADU], &_ZFADU_mod, 1)

struct type_FADU_Enter__Subtree__Data__Element {
    char    parm;
};
#define	free_FADU_Enter__Subtree__Data__Element(parm)\
	(void) fre_obj((char *) parm, _ZFADU_mod.md_dtab[_ZEnter_Subtree_Data_ElementFADU], &_ZFADU_mod, 1)

struct type_FADU_Exit__Subtree__Data__Element {
    char    parm;
};
#define	free_FADU_Exit__Subtree__Data__Element(parm)\
	(void) fre_obj((char *) parm, _ZFADU_mod.md_dtab[_ZExit_Subtree_Data_ElementFADU], &_ZFADU_mod, 1)

struct type_FADU_Structuring__Data__Element {
    int         offset;
#define	type_FADU_Structuring__Data__Element_node__descriptor	1
#define	type_FADU_Structuring__Data__Element_enter__subtree	2
#define	type_FADU_Structuring__Data__Element_exit__subtree	3

    union {
        struct type_FADU_Node__Descriptor__Data__Element *node__descriptor;

        struct type_FADU_Enter__Subtree__Data__Element *enter__subtree;

        struct type_FADU_Exit__Subtree__Data__Element *exit__subtree;
    }       un;
};
#define	free_FADU_Structuring__Data__Element(parm)\
	(void) fre_obj((char *) parm, _ZFADU_mod.md_dtab[_ZStructuring_Data_ElementFADU], &_ZFADU_mod, 1)
#endif
