/*** <<< INCLUDES [Everything] >>> ***/ #include "Set.h" #include "Alpha.h" #include "Beta.h" #include "Gamma.h" #include "OneTwo.h" #include "TwoThree.h" #include "ThreeOne.h" #include /*** <<< FWD-DECLS [Everything] >>> ***/ struct Choice1; struct Choice2; struct Choice3; /*** <<< TYPE-DECLS [Everything] >>> ***/ typedef struct Everything { struct Choice1 *ch1; struct Choice2 *ch2; struct Choice3 *ch3; Set_t set; Alpha_t a; Beta_t b; Gamma_t g; OneTwo_t ot; TwoThree_t tt; ThreeOne_t to; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } Everything_t; /*** <<< FUNC-DECLS [Everything] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_Everything; /*** <<< POST-INCLUDE [Everything] >>> ***/ #include "Choice1.h" #include "Choice2.h" #include "Choice3.h" /*** <<< STAT-DEFS [Everything] >>> ***/ static asn_TYPE_member_t asn_MBR_Everything_1[] = { { ATF_POINTER, 0, offsetof(struct Everything, ch1), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = +1, /* EXPLICIT tag at current level */ .type = &asn_DEF_Choice1, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "ch1" }, { ATF_POINTER, 0, offsetof(struct Everything, ch2), .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)), .tag_mode = +1, /* EXPLICIT tag at current level */ .type = &asn_DEF_Choice2, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "ch2" }, { ATF_POINTER, 0, offsetof(struct Everything, ch3), .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)), .tag_mode = +1, /* EXPLICIT tag at current level */ .type = &asn_DEF_Choice3, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "ch3" }, { ATF_NOFLAGS, 0, offsetof(struct Everything, set), .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Set, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "set" }, { ATF_NOFLAGS, 0, offsetof(struct Everything, a), .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Alpha, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "a" }, { ATF_NOFLAGS, 0, offsetof(struct Everything, b), .tag = (ASN_TAG_CLASS_CONTEXT | (5 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Beta, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "b" }, { ATF_NOFLAGS, 0, offsetof(struct Everything, g), .tag = (ASN_TAG_CLASS_CONTEXT | (6 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Gamma, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "g" }, { ATF_NOFLAGS, 0, offsetof(struct Everything, ot), .tag = (ASN_TAG_CLASS_CONTEXT | (7 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_OneTwo, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "ot" }, { ATF_NOFLAGS, 0, offsetof(struct Everything, tt), .tag = (ASN_TAG_CLASS_CONTEXT | (8 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_TwoThree, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "tt" }, { ATF_NOFLAGS, 0, offsetof(struct Everything, to), .tag = (ASN_TAG_CLASS_CONTEXT | (9 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_ThreeOne, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "to" }, }; static ber_tlv_tag_t asn_DEF_Everything_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_Everything_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ch1 at 15 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ch2 at 16 */ { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ch3 at 17 */ { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* set at 18 */ { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* a at 19 */ { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* b at 20 */ { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* g at 21 */ { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* ot at 22 */ { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* tt at 23 */ { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* to at 25 */ }; static asn_SEQUENCE_specifics_t asn_SPC_Everything_specs_1 = { sizeof(struct Everything), offsetof(struct Everything, _asn_ctx), asn_MAP_Everything_tag2el_1, 10, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* Start extensions */ -1 /* Stop extensions */ }; asn_TYPE_descriptor_t asn_DEF_Everything = { "Everything", "Everything", SEQUENCE_free, SEQUENCE_print, SEQUENCE_constraint, SEQUENCE_decode_ber, SEQUENCE_encode_der, SEQUENCE_decode_xer, SEQUENCE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_Everything_tags_1, sizeof(asn_DEF_Everything_tags_1) /sizeof(asn_DEF_Everything_tags_1[0]), /* 1 */ asn_DEF_Everything_tags_1, /* Same as above */ sizeof(asn_DEF_Everything_tags_1) /sizeof(asn_DEF_Everything_tags_1[0]), /* 1 */ 0, /* No PER visible constraints */ asn_MBR_Everything_1, 10, /* Elements count */ &asn_SPC_Everything_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [Choice1] >>> ***/ #include /*** <<< DEPS [Choice1] >>> ***/ typedef enum Choice1_PR { Choice1_PR_NOTHING, /* No components present */ Choice1_PR_something, /* Extensions may appear below */ Choice1_PR_some2 } Choice1_PR; /*** <<< FWD-DECLS [Choice1] >>> ***/ struct Everything; /*** <<< TYPE-DECLS [Choice1] >>> ***/ typedef struct Choice1 { Choice1_PR present; union Choice1_u { struct Everything *something; /* * This type is extensible, * possible extensions are below. */ struct Everything *some2; } choice; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } Choice1_t; /*** <<< FUNC-DECLS [Choice1] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_Choice1; /*** <<< POST-INCLUDE [Choice1] >>> ***/ #include "Everything.h" /*** <<< STAT-DEFS [Choice1] >>> ***/ static asn_TYPE_member_t asn_MBR_Choice1_1[] = { { ATF_POINTER, 0, offsetof(struct Choice1, choice.something), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Everything, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "something" }, { ATF_POINTER, 0, offsetof(struct Choice1, choice.some2), .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Everything, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "some2" }, }; static asn_TYPE_tag2member_t asn_MAP_Choice1_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* something at 29 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* some2 at 32 */ }; static asn_CHOICE_specifics_t asn_SPC_Choice1_specs_1 = { sizeof(struct Choice1), offsetof(struct Choice1, _asn_ctx), offsetof(struct Choice1, present), sizeof(((struct Choice1 *)0)->present), asn_MAP_Choice1_tag2el_1, 2, /* Count of tags in the map */ .canonical_order = 0, .ext_start = 1 /* Extensions start */ }; asn_TYPE_descriptor_t asn_DEF_Choice1 = { "Choice1", "Choice1", CHOICE_free, CHOICE_print, CHOICE_constraint, CHOICE_decode_ber, CHOICE_encode_der, CHOICE_decode_xer, CHOICE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ CHOICE_outmost_tag, 0, /* No effective tags (pointer) */ 0, /* No effective tags (count) */ 0, /* No tags (pointer) */ 0, /* No tags (count) */ 0, /* No PER visible constraints */ asn_MBR_Choice1_1, 2, /* Elements count */ &asn_SPC_Choice1_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [Choice2] >>> ***/ #include /*** <<< DEPS [Choice2] >>> ***/ typedef enum Choice2_PR { Choice2_PR_NOTHING, /* No components present */ Choice2_PR_typeref, /* Extensions may appear below */ Choice2_PR_some3 } Choice2_PR; /*** <<< FWD-DECLS [Choice2] >>> ***/ struct Sequence; struct Everything; /*** <<< TYPE-DECLS [Choice2] >>> ***/ typedef struct Choice2 { Choice2_PR present; union Choice2_u { struct Sequence *typeref; /* * This type is extensible, * possible extensions are below. */ struct Everything *some3; } choice; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } Choice2_t; /*** <<< FUNC-DECLS [Choice2] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_Choice2; /*** <<< POST-INCLUDE [Choice2] >>> ***/ #include "TypeRef.h" #include "Everything.h" /*** <<< STAT-DEFS [Choice2] >>> ***/ static asn_TYPE_member_t asn_MBR_Choice2_1[] = { { ATF_POINTER, 0, offsetof(struct Choice2, choice.typeref), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_TypeRef, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "typeref" }, { ATF_POINTER, 0, offsetof(struct Choice2, choice.some3), .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Everything, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "some3" }, }; static asn_TYPE_tag2member_t asn_MAP_Choice2_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* typeref at 35 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* some3 at 38 */ }; static asn_CHOICE_specifics_t asn_SPC_Choice2_specs_1 = { sizeof(struct Choice2), offsetof(struct Choice2, _asn_ctx), offsetof(struct Choice2, present), sizeof(((struct Choice2 *)0)->present), asn_MAP_Choice2_tag2el_1, 2, /* Count of tags in the map */ .canonical_order = 0, .ext_start = 1 /* Extensions start */ }; asn_TYPE_descriptor_t asn_DEF_Choice2 = { "Choice2", "Choice2", CHOICE_free, CHOICE_print, CHOICE_constraint, CHOICE_decode_ber, CHOICE_encode_der, CHOICE_decode_xer, CHOICE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ CHOICE_outmost_tag, 0, /* No effective tags (pointer) */ 0, /* No effective tags (count) */ 0, /* No tags (pointer) */ 0, /* No tags (count) */ 0, /* No PER visible constraints */ asn_MBR_Choice2_1, 2, /* Elements count */ &asn_SPC_Choice2_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [Choice3] >>> ***/ #include #include #include #include /*** <<< DEPS [Choice3] >>> ***/ typedef enum Choice3_PR { Choice3_PR_NOTHING, /* No components present */ Choice3_PR_a, Choice3_PR_b, Choice3_PR_c } Choice3_PR; /*** <<< FWD-DECLS [Choice3] >>> ***/ struct Everything; struct Choice3; /*** <<< TYPE-DECLS [Choice3] >>> ***/ typedef struct Choice3 { Choice3_PR present; union Choice3_u { struct a { struct Everything *aa; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } *a; struct Everything *b; struct c { A_SEQUENCE_OF(struct Choice3) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } *c; } choice; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } Choice3_t; /*** <<< FUNC-DECLS [Choice3] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_Choice3; /*** <<< POST-INCLUDE [Choice3] >>> ***/ #include "Everything.h" #include "Choice3.h" /*** <<< STAT-DEFS [Choice3] >>> ***/ static asn_TYPE_member_t asn_MBR_a_2[] = { { ATF_POINTER, 0, offsetof(struct a, aa), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Everything, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "aa" }, }; static ber_tlv_tag_t asn_DEF_a_tags_2[] = { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_a_tag2el_2[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* aa at 43 */ }; static asn_SEQUENCE_specifics_t asn_SPC_a_specs_2 = { sizeof(struct a), offsetof(struct a, _asn_ctx), asn_MAP_a_tag2el_2, 1, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* Start extensions */ -1 /* Stop extensions */ }; static /* Use -fall-defs-global to expose */ asn_TYPE_descriptor_t asn_DEF_a_2 = { "a", "a", SEQUENCE_free, SEQUENCE_print, SEQUENCE_constraint, SEQUENCE_decode_ber, SEQUENCE_encode_der, SEQUENCE_decode_xer, SEQUENCE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_a_tags_2, sizeof(asn_DEF_a_tags_2) /sizeof(asn_DEF_a_tags_2[0]) - 1, /* 1 */ asn_DEF_a_tags_2, /* Same as above */ sizeof(asn_DEF_a_tags_2) /sizeof(asn_DEF_a_tags_2[0]), /* 2 */ 0, /* No PER visible constraints */ asn_MBR_a_2, 1, /* Elements count */ &asn_SPC_a_specs_2 /* Additional specs */ }; static asn_TYPE_member_t asn_MBR_c_5[] = { { ATF_POINTER, 0, 0, .tag = -1 /* Ambiguous tag (CHOICE?) */, .tag_mode = 0, .type = &asn_DEF_Choice3, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "" }, }; static ber_tlv_tag_t asn_DEF_c_tags_5[] = { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_SET_OF_specifics_t asn_SPC_c_specs_5 = { sizeof(struct c), offsetof(struct c, _asn_ctx), 2, /* XER encoding is XMLValueList */ }; static /* Use -fall-defs-global to expose */ asn_TYPE_descriptor_t asn_DEF_c_5 = { "c", "c", SEQUENCE_OF_free, SEQUENCE_OF_print, SEQUENCE_OF_constraint, SEQUENCE_OF_decode_ber, SEQUENCE_OF_encode_der, SEQUENCE_OF_decode_xer, SEQUENCE_OF_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_c_tags_5, sizeof(asn_DEF_c_tags_5) /sizeof(asn_DEF_c_tags_5[0]) - 1, /* 1 */ asn_DEF_c_tags_5, /* Same as above */ sizeof(asn_DEF_c_tags_5) /sizeof(asn_DEF_c_tags_5[0]), /* 2 */ 0, /* No PER visible constraints */ asn_MBR_c_5, 1, /* Single element */ &asn_SPC_c_specs_5 /* Additional specs */ }; static asn_TYPE_member_t asn_MBR_Choice3_1[] = { { ATF_POINTER, 0, offsetof(struct Choice3, choice.a), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = 0, .type = &asn_DEF_a_2, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "a" }, { ATF_POINTER, 0, offsetof(struct Choice3, choice.b), .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Everything, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "b" }, { ATF_POINTER, 0, offsetof(struct Choice3, choice.c), .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)), .tag_mode = 0, .type = &asn_DEF_c_5, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "c" }, }; static asn_TYPE_tag2member_t asn_MAP_Choice3_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a at 43 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* b at 44 */ { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* c at 46 */ }; static asn_CHOICE_specifics_t asn_SPC_Choice3_specs_1 = { sizeof(struct Choice3), offsetof(struct Choice3, _asn_ctx), offsetof(struct Choice3, present), sizeof(((struct Choice3 *)0)->present), asn_MAP_Choice3_tag2el_1, 3, /* Count of tags in the map */ .canonical_order = 0, .ext_start = -1 /* Extensions start */ }; asn_TYPE_descriptor_t asn_DEF_Choice3 = { "Choice3", "Choice3", CHOICE_free, CHOICE_print, CHOICE_constraint, CHOICE_decode_ber, CHOICE_encode_der, CHOICE_decode_xer, CHOICE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ CHOICE_outmost_tag, 0, /* No effective tags (pointer) */ 0, /* No effective tags (count) */ 0, /* No tags (pointer) */ 0, /* No tags (count) */ 0, /* No PER visible constraints */ asn_MBR_Choice3_1, 3, /* Elements count */ &asn_SPC_Choice3_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [Set] >>> ***/ #include #include #include #include /*** <<< FWD-DECLS [Set] >>> ***/ struct Set; struct Sequence; /*** <<< TYPE-DECLS [Set] >>> ***/ typedef struct Set { A_SET_OF(struct Member { INTEGER_t Int; struct Set *set; struct Sequence *seq; struct Set *set2 /* OPTIONAL */; /* * This type is extensible, * possible extensions are below. */ struct Set *set3; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } ) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } Set_t; /*** <<< FUNC-DECLS [Set] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_Set; /*** <<< POST-INCLUDE [Set] >>> ***/ #include "Set.h" #include "Sequence.h" /*** <<< STAT-DEFS [Set] >>> ***/ static asn_TYPE_member_t asn_MBR_Member_2[] = { { ATF_NOFLAGS, 0, offsetof(struct Member, Int), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_INTEGER, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "int" }, { ATF_POINTER, 0, offsetof(struct Member, set), .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Set, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "set" }, { ATF_POINTER, 0, offsetof(struct Member, seq), .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Sequence, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "seq" }, { ATF_POINTER, 2, offsetof(struct Member, set2), .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Set, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "set2" }, { ATF_POINTER, 1, offsetof(struct Member, set3), .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Set, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "set3" }, }; static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* int at 49 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* set at 50 */ { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* seq at 51 */ { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* set2 at 52 */ { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* set3 at 55 */ }; static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { sizeof(struct Member), offsetof(struct Member, _asn_ctx), asn_MAP_Member_tag2el_2, 5, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ 3, /* Start extensions */ 6 /* Stop extensions */ }; static /* Use -fall-defs-global to expose */ asn_TYPE_descriptor_t asn_DEF_Member_2 = { "SEQUENCE", "SEQUENCE", SEQUENCE_free, SEQUENCE_print, SEQUENCE_constraint, SEQUENCE_decode_ber, SEQUENCE_encode_der, SEQUENCE_decode_xer, SEQUENCE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_Member_tags_2, sizeof(asn_DEF_Member_tags_2) /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ asn_DEF_Member_tags_2, /* Same as above */ sizeof(asn_DEF_Member_tags_2) /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ 0, /* No PER visible constraints */ asn_MBR_Member_2, 5, /* Elements count */ &asn_SPC_Member_specs_2 /* Additional specs */ }; static asn_TYPE_member_t asn_MBR_Set_1[] = { { ATF_POINTER, 0, 0, .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), .tag_mode = 0, .type = &asn_DEF_Member_2, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "" }, }; static ber_tlv_tag_t asn_DEF_Set_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)) }; static asn_SET_OF_specifics_t asn_SPC_Set_specs_1 = { sizeof(struct Set), offsetof(struct Set, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; asn_TYPE_descriptor_t asn_DEF_Set = { "Set", "Set", SET_OF_free, SET_OF_print, SET_OF_constraint, SET_OF_decode_ber, SET_OF_encode_der, SET_OF_decode_xer, SET_OF_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_Set_tags_1, sizeof(asn_DEF_Set_tags_1) /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */ asn_DEF_Set_tags_1, /* Same as above */ sizeof(asn_DEF_Set_tags_1) /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */ 0, /* No PER visible constraints */ asn_MBR_Set_1, 1, /* Single element */ &asn_SPC_Set_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [Sequence] >>> ***/ #include #include /*** <<< FWD-DECLS [Sequence] >>> ***/ struct Sequence; struct Set; /*** <<< TYPE-DECLS [Sequence] >>> ***/ typedef struct Sequence { INTEGER_t a; struct Sequence *seq /* OPTIONAL */; /* * This type is extensible, * possible extensions are below. */ INTEGER_t *b; struct Set *set /* OPTIONAL */; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } Sequence_t; /*** <<< FUNC-DECLS [Sequence] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_Sequence; /*** <<< POST-INCLUDE [Sequence] >>> ***/ #include "Sequence.h" #include "Set.h" /*** <<< STAT-DEFS [Sequence] >>> ***/ static asn_TYPE_member_t asn_MBR_Sequence_1[] = { { ATF_NOFLAGS, 0, offsetof(struct Sequence, a), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_INTEGER, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "a" }, { ATF_POINTER, 3, offsetof(struct Sequence, seq), .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Sequence, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "seq" }, { ATF_POINTER, 2, offsetof(struct Sequence, b), .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_INTEGER, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "b" }, { ATF_POINTER, 1, offsetof(struct Sequence, set), .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Set, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "set" }, }; static ber_tlv_tag_t asn_DEF_Sequence_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_Sequence_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a at 58 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* seq at 59 */ { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* b at 61 */ { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* set at 62 */ }; static asn_SEQUENCE_specifics_t asn_SPC_Sequence_specs_1 = { sizeof(struct Sequence), offsetof(struct Sequence, _asn_ctx), asn_MAP_Sequence_tag2el_1, 4, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ 1, /* Start extensions */ 5 /* Stop extensions */ }; asn_TYPE_descriptor_t asn_DEF_Sequence = { "Sequence", "Sequence", SEQUENCE_free, SEQUENCE_print, SEQUENCE_constraint, SEQUENCE_decode_ber, SEQUENCE_encode_der, SEQUENCE_decode_xer, SEQUENCE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_Sequence_tags_1, sizeof(asn_DEF_Sequence_tags_1) /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */ asn_DEF_Sequence_tags_1, /* Same as above */ sizeof(asn_DEF_Sequence_tags_1) /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */ 0, /* No PER visible constraints */ asn_MBR_Sequence_1, 4, /* Elements count */ &asn_SPC_Sequence_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [TypeRef] >>> ***/ #include "Sequence.h" /*** <<< TYPE-DECLS [TypeRef] >>> ***/ typedef Sequence_t TypeRef_t; /*** <<< FUNC-DECLS [TypeRef] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_TypeRef; asn_struct_free_f TypeRef_free; asn_struct_print_f TypeRef_print; asn_constr_check_f TypeRef_constraint; ber_type_decoder_f TypeRef_decode_ber; der_type_encoder_f TypeRef_encode_der; xer_type_decoder_f TypeRef_decode_xer; xer_type_encoder_f TypeRef_encode_xer; /*** <<< CODE [TypeRef] >>> ***/ int TypeRef_constraint(asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { /* Replace with underlying type checker */ td->check_constraints = asn_DEF_Sequence.check_constraints; return td->check_constraints(td, sptr, ctfailcb, app_key); } /* * This type is implemented using Sequence, * so here we adjust the DEF accordingly. */ static void TypeRef_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { td->free_struct = asn_DEF_Sequence.free_struct; td->print_struct = asn_DEF_Sequence.print_struct; td->ber_decoder = asn_DEF_Sequence.ber_decoder; td->der_encoder = asn_DEF_Sequence.der_encoder; td->xer_decoder = asn_DEF_Sequence.xer_decoder; td->xer_encoder = asn_DEF_Sequence.xer_encoder; td->uper_decoder = asn_DEF_Sequence.uper_decoder; td->uper_encoder = asn_DEF_Sequence.uper_encoder; if(!td->per_constraints) td->per_constraints = asn_DEF_Sequence.per_constraints; td->elements = asn_DEF_Sequence.elements; td->elements_count = asn_DEF_Sequence.elements_count; td->specifics = asn_DEF_Sequence.specifics; } void TypeRef_free(asn_TYPE_descriptor_t *td, void *struct_ptr, int contents_only) { TypeRef_1_inherit_TYPE_descriptor(td); td->free_struct(td, struct_ptr, contents_only); } int TypeRef_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { TypeRef_1_inherit_TYPE_descriptor(td); return td->print_struct(td, struct_ptr, ilevel, cb, app_key); } asn_dec_rval_t TypeRef_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, void **structure, const void *bufptr, size_t size, int tag_mode) { TypeRef_1_inherit_TYPE_descriptor(td); return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); } asn_enc_rval_t TypeRef_encode_der(asn_TYPE_descriptor_t *td, void *structure, int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) { TypeRef_1_inherit_TYPE_descriptor(td); return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); } asn_dec_rval_t TypeRef_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, void **structure, const char *opt_mname, const void *bufptr, size_t size) { TypeRef_1_inherit_TYPE_descriptor(td); return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); } asn_enc_rval_t TypeRef_encode_xer(asn_TYPE_descriptor_t *td, void *structure, int ilevel, enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, void *app_key) { TypeRef_1_inherit_TYPE_descriptor(td); return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); } /*** <<< STAT-DEFS [TypeRef] >>> ***/ static ber_tlv_tag_t asn_DEF_TypeRef_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; asn_TYPE_descriptor_t asn_DEF_TypeRef = { "TypeRef", "TypeRef", TypeRef_free, TypeRef_print, TypeRef_constraint, TypeRef_decode_ber, TypeRef_encode_der, TypeRef_decode_xer, TypeRef_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_TypeRef_tags_1, sizeof(asn_DEF_TypeRef_tags_1) /sizeof(asn_DEF_TypeRef_tags_1[0]), /* 1 */ asn_DEF_TypeRef_tags_1, /* Same as above */ sizeof(asn_DEF_TypeRef_tags_1) /sizeof(asn_DEF_TypeRef_tags_1[0]), /* 1 */ 0, /* No PER visible constraints */ 0, 0, /* Defined elsewhere */ 0 /* No specifics */ }; /*** <<< INCLUDES [Alpha] >>> ***/ #include /*** <<< FWD-DECLS [Alpha] >>> ***/ struct Beta; /*** <<< TYPE-DECLS [Alpha] >>> ***/ typedef struct Alpha { struct Beta *a; struct b { struct Beta *b /* OPTIONAL */; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } b; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } Alpha_t; /*** <<< FUNC-DECLS [Alpha] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_Alpha; /*** <<< POST-INCLUDE [Alpha] >>> ***/ #include "Beta.h" /*** <<< STAT-DEFS [Alpha] >>> ***/ static asn_TYPE_member_t asn_MBR_b_3[] = { { ATF_POINTER, 1, offsetof(struct b, b), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Beta, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "b" }, }; static ber_tlv_tag_t asn_DEF_b_tags_3[] = { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_b_tag2el_3[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* b at 70 */ }; static asn_SEQUENCE_specifics_t asn_SPC_b_specs_3 = { sizeof(struct b), offsetof(struct b, _asn_ctx), asn_MAP_b_tag2el_3, 1, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* Start extensions */ -1 /* Stop extensions */ }; static /* Use -fall-defs-global to expose */ asn_TYPE_descriptor_t asn_DEF_b_3 = { "b", "b", SEQUENCE_free, SEQUENCE_print, SEQUENCE_constraint, SEQUENCE_decode_ber, SEQUENCE_encode_der, SEQUENCE_decode_xer, SEQUENCE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_b_tags_3, sizeof(asn_DEF_b_tags_3) /sizeof(asn_DEF_b_tags_3[0]) - 1, /* 1 */ asn_DEF_b_tags_3, /* Same as above */ sizeof(asn_DEF_b_tags_3) /sizeof(asn_DEF_b_tags_3[0]), /* 2 */ 0, /* No PER visible constraints */ asn_MBR_b_3, 1, /* Elements count */ &asn_SPC_b_specs_3 /* Additional specs */ }; static asn_TYPE_member_t asn_MBR_Alpha_1[] = { { ATF_POINTER, 0, offsetof(struct Alpha, a), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Beta, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "a" }, { ATF_NOFLAGS, 0, offsetof(struct Alpha, b), .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)), .tag_mode = 0, .type = &asn_DEF_b_3, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "b" }, }; static ber_tlv_tag_t asn_DEF_Alpha_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_Alpha_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a at 68 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* b at 70 */ }; static asn_SEQUENCE_specifics_t asn_SPC_Alpha_specs_1 = { sizeof(struct Alpha), offsetof(struct Alpha, _asn_ctx), asn_MAP_Alpha_tag2el_1, 2, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* Start extensions */ -1 /* Stop extensions */ }; asn_TYPE_descriptor_t asn_DEF_Alpha = { "Alpha", "Alpha", SEQUENCE_free, SEQUENCE_print, SEQUENCE_constraint, SEQUENCE_decode_ber, SEQUENCE_encode_der, SEQUENCE_decode_xer, SEQUENCE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_Alpha_tags_1, sizeof(asn_DEF_Alpha_tags_1) /sizeof(asn_DEF_Alpha_tags_1[0]), /* 1 */ asn_DEF_Alpha_tags_1, /* Same as above */ sizeof(asn_DEF_Alpha_tags_1) /sizeof(asn_DEF_Alpha_tags_1[0]), /* 1 */ 0, /* No PER visible constraints */ asn_MBR_Alpha_1, 2, /* Elements count */ &asn_SPC_Alpha_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [Beta] >>> ***/ #include /*** <<< FWD-DECLS [Beta] >>> ***/ struct Alpha; struct Gamma; /*** <<< TYPE-DECLS [Beta] >>> ***/ typedef struct Beta { struct Alpha *b /* OPTIONAL */; struct Gamma *g /* OPTIONAL */; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } Beta_t; /*** <<< FUNC-DECLS [Beta] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_Beta; /*** <<< POST-INCLUDE [Beta] >>> ***/ #include "Alpha.h" #include "Gamma.h" /*** <<< STAT-DEFS [Beta] >>> ***/ static asn_TYPE_member_t asn_MBR_Beta_1[] = { { ATF_POINTER, 2, offsetof(struct Beta, b), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Alpha, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "b" }, { ATF_POINTER, 1, offsetof(struct Beta, g), .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Gamma, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "g" }, }; static ber_tlv_tag_t asn_DEF_Beta_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_Beta_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* b at 75 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* g at 76 */ }; static asn_SEQUENCE_specifics_t asn_SPC_Beta_specs_1 = { sizeof(struct Beta), offsetof(struct Beta, _asn_ctx), asn_MAP_Beta_tag2el_1, 2, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* Start extensions */ -1 /* Stop extensions */ }; asn_TYPE_descriptor_t asn_DEF_Beta = { "Beta", "Beta", SEQUENCE_free, SEQUENCE_print, SEQUENCE_constraint, SEQUENCE_decode_ber, SEQUENCE_encode_der, SEQUENCE_decode_xer, SEQUENCE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_Beta_tags_1, sizeof(asn_DEF_Beta_tags_1) /sizeof(asn_DEF_Beta_tags_1[0]), /* 1 */ asn_DEF_Beta_tags_1, /* Same as above */ sizeof(asn_DEF_Beta_tags_1) /sizeof(asn_DEF_Beta_tags_1[0]), /* 1 */ 0, /* No PER visible constraints */ asn_MBR_Beta_1, 2, /* Elements count */ &asn_SPC_Beta_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [Gamma] >>> ***/ #include /*** <<< FWD-DECLS [Gamma] >>> ***/ struct TwoThree; struct Alpha; struct Beta; /*** <<< TYPE-DECLS [Gamma] >>> ***/ typedef struct Gamma { struct TwoThree *o; struct Alpha *a; struct Beta *b; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } Gamma_t; /*** <<< FUNC-DECLS [Gamma] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_Gamma; /*** <<< POST-INCLUDE [Gamma] >>> ***/ #include "TwoThree.h" #include "Alpha.h" #include "Beta.h" /*** <<< STAT-DEFS [Gamma] >>> ***/ static asn_TYPE_member_t asn_MBR_Gamma_1[] = { { ATF_POINTER, 0, offsetof(struct Gamma, o), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_TwoThree, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "o" }, { ATF_POINTER, 0, offsetof(struct Gamma, a), .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Alpha, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "a" }, { ATF_POINTER, 0, offsetof(struct Gamma, b), .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Beta, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "b" }, }; static ber_tlv_tag_t asn_DEF_Gamma_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_Gamma_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* o at 80 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* a at 81 */ { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* b at 83 */ }; static asn_SEQUENCE_specifics_t asn_SPC_Gamma_specs_1 = { sizeof(struct Gamma), offsetof(struct Gamma, _asn_ctx), asn_MAP_Gamma_tag2el_1, 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* Start extensions */ -1 /* Stop extensions */ }; asn_TYPE_descriptor_t asn_DEF_Gamma = { "Gamma", "Gamma", SEQUENCE_free, SEQUENCE_print, SEQUENCE_constraint, SEQUENCE_decode_ber, SEQUENCE_encode_der, SEQUENCE_decode_xer, SEQUENCE_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_Gamma_tags_1, sizeof(asn_DEF_Gamma_tags_1) /sizeof(asn_DEF_Gamma_tags_1[0]), /* 1 */ asn_DEF_Gamma_tags_1, /* Same as above */ sizeof(asn_DEF_Gamma_tags_1) /sizeof(asn_DEF_Gamma_tags_1[0]), /* 1 */ 0, /* No PER visible constraints */ asn_MBR_Gamma_1, 3, /* Elements count */ &asn_SPC_Gamma_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [OneTwo] >>> ***/ #include /*** <<< DEPS [OneTwo] >>> ***/ /* * Method of determining the components presence */ typedef enum OneTwo_PR { OneTwo_PR_m12, /* Member m12 is present */ } OneTwo_PR; /*** <<< FWD-DECLS [OneTwo] >>> ***/ struct TwoThree; /*** <<< TYPE-DECLS [OneTwo] >>> ***/ typedef struct OneTwo { struct TwoThree *m12; /* Presence bitmask: ASN_SET_ISPRESENT(pOneTwo, OneTwo_PR_x) */ unsigned int _presence_map [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))]; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } OneTwo_t; /*** <<< FUNC-DECLS [OneTwo] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_OneTwo; /*** <<< POST-INCLUDE [OneTwo] >>> ***/ #include "TwoThree.h" /*** <<< STAT-DEFS [OneTwo] >>> ***/ static asn_TYPE_member_t asn_MBR_OneTwo_1[] = { { ATF_POINTER, 0, offsetof(struct OneTwo, m12), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_TwoThree, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "m12" }, }; static ber_tlv_tag_t asn_DEF_OneTwo_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_OneTwo_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* m12 at 86 */ }; static uint8_t asn_MAP_OneTwo_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = { (1 << 7) }; static asn_SET_specifics_t asn_SPC_OneTwo_specs_1 = { sizeof(struct OneTwo), offsetof(struct OneTwo, _asn_ctx), offsetof(struct OneTwo, _presence_map), asn_MAP_OneTwo_tag2el_1, 1, /* Count of tags in the map */ asn_MAP_OneTwo_tag2el_1, /* Same as above */ 1, /* Count of tags in the CXER map */ 0, /* Whether extensible */ (unsigned int *)asn_MAP_OneTwo_mmap_1 /* Mandatory elements map */ }; asn_TYPE_descriptor_t asn_DEF_OneTwo = { "OneTwo", "OneTwo", SET_free, SET_print, SET_constraint, SET_decode_ber, SET_encode_der, SET_decode_xer, SET_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_OneTwo_tags_1, sizeof(asn_DEF_OneTwo_tags_1) /sizeof(asn_DEF_OneTwo_tags_1[0]), /* 1 */ asn_DEF_OneTwo_tags_1, /* Same as above */ sizeof(asn_DEF_OneTwo_tags_1) /sizeof(asn_DEF_OneTwo_tags_1[0]), /* 1 */ 0, /* No PER visible constraints */ asn_MBR_OneTwo_1, 1, /* Elements count */ &asn_SPC_OneTwo_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [TwoThree] >>> ***/ #include /*** <<< DEPS [TwoThree] >>> ***/ /* * Method of determining the components presence */ typedef enum TwoThree_PR { TwoThree_PR_m23, /* Member m23 is present */ } TwoThree_PR; /*** <<< FWD-DECLS [TwoThree] >>> ***/ struct ThreeOne; /*** <<< TYPE-DECLS [TwoThree] >>> ***/ typedef struct TwoThree { struct ThreeOne *m23; /* Presence bitmask: ASN_SET_ISPRESENT(pTwoThree, TwoThree_PR_x) */ unsigned int _presence_map [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))]; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } TwoThree_t; /*** <<< FUNC-DECLS [TwoThree] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_TwoThree; /*** <<< POST-INCLUDE [TwoThree] >>> ***/ #include "ThreeOne.h" /*** <<< STAT-DEFS [TwoThree] >>> ***/ static asn_TYPE_member_t asn_MBR_TwoThree_1[] = { { ATF_POINTER, 0, offsetof(struct TwoThree, m23), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_ThreeOne, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "m23" }, }; static ber_tlv_tag_t asn_DEF_TwoThree_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_TwoThree_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* m23 at 87 */ }; static uint8_t asn_MAP_TwoThree_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = { (1 << 7) }; static asn_SET_specifics_t asn_SPC_TwoThree_specs_1 = { sizeof(struct TwoThree), offsetof(struct TwoThree, _asn_ctx), offsetof(struct TwoThree, _presence_map), asn_MAP_TwoThree_tag2el_1, 1, /* Count of tags in the map */ asn_MAP_TwoThree_tag2el_1, /* Same as above */ 1, /* Count of tags in the CXER map */ 0, /* Whether extensible */ (unsigned int *)asn_MAP_TwoThree_mmap_1 /* Mandatory elements map */ }; asn_TYPE_descriptor_t asn_DEF_TwoThree = { "TwoThree", "TwoThree", SET_free, SET_print, SET_constraint, SET_decode_ber, SET_encode_der, SET_decode_xer, SET_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_TwoThree_tags_1, sizeof(asn_DEF_TwoThree_tags_1) /sizeof(asn_DEF_TwoThree_tags_1[0]), /* 1 */ asn_DEF_TwoThree_tags_1, /* Same as above */ sizeof(asn_DEF_TwoThree_tags_1) /sizeof(asn_DEF_TwoThree_tags_1[0]), /* 1 */ 0, /* No PER visible constraints */ asn_MBR_TwoThree_1, 1, /* Elements count */ &asn_SPC_TwoThree_specs_1 /* Additional specs */ }; /*** <<< INCLUDES [ThreeOne] >>> ***/ #include /*** <<< DEPS [ThreeOne] >>> ***/ /* * Method of determining the components presence */ typedef enum ThreeOne_PR { ThreeOne_PR_m31, /* Member m31 is present */ ThreeOne_PR_g, /* Member g is present */ } ThreeOne_PR; /*** <<< FWD-DECLS [ThreeOne] >>> ***/ struct OneTwo; struct Gamma; /*** <<< TYPE-DECLS [ThreeOne] >>> ***/ typedef struct ThreeOne { struct OneTwo *m31; struct Gamma *g; /* Presence bitmask: ASN_SET_ISPRESENT(pThreeOne, ThreeOne_PR_x) */ unsigned int _presence_map [((2+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))]; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } ThreeOne_t; /*** <<< FUNC-DECLS [ThreeOne] >>> ***/ extern asn_TYPE_descriptor_t asn_DEF_ThreeOne; /*** <<< POST-INCLUDE [ThreeOne] >>> ***/ #include "OneTwo.h" #include "Gamma.h" /*** <<< STAT-DEFS [ThreeOne] >>> ***/ static asn_TYPE_member_t asn_MBR_ThreeOne_1[] = { { ATF_POINTER, 0, offsetof(struct ThreeOne, m31), .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_OneTwo, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "m31" }, { ATF_POINTER, 0, offsetof(struct ThreeOne, g), .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)), .tag_mode = -1, /* IMPLICIT tag at current level */ .type = &asn_DEF_Gamma, .memb_constraints = 0, /* Defer constraints checking to the member type */ .per_constraints = 0, /* PER is not compiled, use -gen-PER */ .default_value = 0, .name = "g" }, }; static ber_tlv_tag_t asn_DEF_ThreeOne_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)) }; static asn_TYPE_tag2member_t asn_MAP_ThreeOne_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* m31 at 88 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* g at 88 */ }; static uint8_t asn_MAP_ThreeOne_mmap_1[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = { (1 << 7) | (1 << 6) }; static asn_SET_specifics_t asn_SPC_ThreeOne_specs_1 = { sizeof(struct ThreeOne), offsetof(struct ThreeOne, _asn_ctx), offsetof(struct ThreeOne, _presence_map), asn_MAP_ThreeOne_tag2el_1, 2, /* Count of tags in the map */ asn_MAP_ThreeOne_tag2el_1, /* Same as above */ 2, /* Count of tags in the CXER map */ 0, /* Whether extensible */ (unsigned int *)asn_MAP_ThreeOne_mmap_1 /* Mandatory elements map */ }; asn_TYPE_descriptor_t asn_DEF_ThreeOne = { "ThreeOne", "ThreeOne", SET_free, SET_print, SET_constraint, SET_decode_ber, SET_encode_der, SET_decode_xer, SET_encode_xer, 0, 0, /* No PER support, use "-gen-PER" to enable */ 0, /* Use generic outmost tag fetcher */ asn_DEF_ThreeOne_tags_1, sizeof(asn_DEF_ThreeOne_tags_1) /sizeof(asn_DEF_ThreeOne_tags_1[0]), /* 1 */ asn_DEF_ThreeOne_tags_1, /* Same as above */ sizeof(asn_DEF_ThreeOne_tags_1) /sizeof(asn_DEF_ThreeOne_tags_1[0]), /* 1 */ 0, /* No PER visible constraints */ asn_MBR_ThreeOne_1, 2, /* Elements count */ &asn_SPC_ThreeOne_specs_1 /* Additional specs */ };