2 * Generated by asn1c-0.9.29 n1 (http://lionet.info/asn1c)
3 * From ASN.1 module "E2SM-gNB-X2-IEs"
4 * found in "../../asn_defs/asn1/e2sm-gNB-X2-release-1-v041.asn.txt"
5 * `asn1c -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-OER`
8 #include "E2N_Interface-ID.h"
10 #include "E2N_GlobalENB-ID.h"
11 #include "E2N_GlobalGNB-ID.h"
12 asn_per_constraints_t asn_PER_type_E2N_Interface_ID_constr_1 CC_NOTUSED = {
13 { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */,
14 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
15 0, 0 /* No PER value map */
17 asn_TYPE_member_t asn_MBR_E2N_Interface_ID_1[] = {
18 { ATF_POINTER, 0, offsetof(struct E2N_Interface_ID, choice.global_eNB_ID),
19 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
20 -1, /* IMPLICIT tag at current level */
21 &asn_DEF_E2N_GlobalENB_ID,
24 0, 0, /* No default value */
27 { ATF_POINTER, 0, offsetof(struct E2N_Interface_ID, choice.global_gNB_ID),
28 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
29 -1, /* IMPLICIT tag at current level */
30 &asn_DEF_E2N_GlobalGNB_ID,
33 0, 0, /* No default value */
37 static const asn_TYPE_tag2member_t asn_MAP_E2N_Interface_ID_tag2el_1[] = {
38 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-eNB-ID */
39 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* global-gNB-ID */
41 asn_CHOICE_specifics_t asn_SPC_E2N_Interface_ID_specs_1 = {
42 sizeof(struct E2N_Interface_ID),
43 offsetof(struct E2N_Interface_ID, _asn_ctx),
44 offsetof(struct E2N_Interface_ID, present),
45 sizeof(((struct E2N_Interface_ID *)0)->present),
46 asn_MAP_E2N_Interface_ID_tag2el_1,
47 2, /* Count of tags in the map */
49 2 /* Extensions start */
51 asn_TYPE_descriptor_t asn_DEF_E2N_Interface_ID = {
55 0, /* No effective tags (pointer) */
56 0, /* No effective tags (count) */
57 0, /* No tags (pointer) */
58 0, /* No tags (count) */
59 { 0, &asn_PER_type_E2N_Interface_ID_constr_1, CHOICE_constraint },
60 asn_MBR_E2N_Interface_ID_1,
61 2, /* Elements count */
62 &asn_SPC_E2N_Interface_ID_specs_1 /* Additional specs */