[Epic-ID: ODUHIGH-488][Task-ID: ODUHIGH-492] WG8 Alignment [DCI Information]
[o-du/l2.git] / src / codec_utils / E2AP / E2nodeComponentID.c
1 /*
2  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3  * From ASN.1 module "E2AP-IEs"
4  *      found in "2022_E2AP.asn1"
5  *      `asn1c -D ./E2AP/ -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
6  */
7
8 #include "E2nodeComponentID.h"
9
10 #include "E2nodeComponentInterfaceNG.h"
11 #include "E2nodeComponentInterfaceXn.h"
12 #include "E2nodeComponentInterfaceE1.h"
13 #include "E2nodeComponentInterfaceF1.h"
14 #include "E2nodeComponentInterfaceW1.h"
15 #include "E2nodeComponentInterfaceS1.h"
16 #include "E2nodeComponentInterfaceX2.h"
17 static asn_oer_constraints_t asn_OER_type_E2nodeComponentID_constr_1 CC_NOTUSED = {
18         { 0, 0 },
19         -1};
20 asn_per_constraints_t asn_PER_type_E2nodeComponentID_constr_1 CC_NOTUSED = {
21         { APC_CONSTRAINED | APC_EXTENSIBLE,  3,  3,  0,  6 }    /* (0..6,...) */,
22         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
23         0, 0    /* No PER value map */
24 };
25 asn_TYPE_member_t asn_MBR_E2nodeComponentID_1[] = {
26         { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeNG),
27                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
28                 -1,     /* IMPLICIT tag at current level */
29                 &asn_DEF_E2nodeComponentInterfaceNG,
30                 0,
31                 { 0, 0, 0 },
32                 0, 0, /* No default value */
33                 "e2nodeComponentInterfaceTypeNG"
34                 },
35         { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeXn),
36                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
37                 -1,     /* IMPLICIT tag at current level */
38                 &asn_DEF_E2nodeComponentInterfaceXn,
39                 0,
40                 { 0, 0, 0 },
41                 0, 0, /* No default value */
42                 "e2nodeComponentInterfaceTypeXn"
43                 },
44         { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeE1),
45                 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
46                 -1,     /* IMPLICIT tag at current level */
47                 &asn_DEF_E2nodeComponentInterfaceE1,
48                 0,
49                 { 0, 0, 0 },
50                 0, 0, /* No default value */
51                 "e2nodeComponentInterfaceTypeE1"
52                 },
53         { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeF1),
54                 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
55                 -1,     /* IMPLICIT tag at current level */
56                 &asn_DEF_E2nodeComponentInterfaceF1,
57                 0,
58                 { 0, 0, 0 },
59                 0, 0, /* No default value */
60                 "e2nodeComponentInterfaceTypeF1"
61                 },
62         { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeW1),
63                 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
64                 -1,     /* IMPLICIT tag at current level */
65                 &asn_DEF_E2nodeComponentInterfaceW1,
66                 0,
67                 { 0, 0, 0 },
68                 0, 0, /* No default value */
69                 "e2nodeComponentInterfaceTypeW1"
70                 },
71         { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeS1),
72                 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
73                 -1,     /* IMPLICIT tag at current level */
74                 &asn_DEF_E2nodeComponentInterfaceS1,
75                 0,
76                 { 0, 0, 0 },
77                 0, 0, /* No default value */
78                 "e2nodeComponentInterfaceTypeS1"
79                 },
80         { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeX2),
81                 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
82                 -1,     /* IMPLICIT tag at current level */
83                 &asn_DEF_E2nodeComponentInterfaceX2,
84                 0,
85                 { 0, 0, 0 },
86                 0, 0, /* No default value */
87                 "e2nodeComponentInterfaceTypeX2"
88                 },
89 };
90 static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentID_tag2el_1[] = {
91     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceTypeNG */
92     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentInterfaceTypeXn */
93     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* e2nodeComponentInterfaceTypeE1 */
94     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* e2nodeComponentInterfaceTypeF1 */
95     { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* e2nodeComponentInterfaceTypeW1 */
96     { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* e2nodeComponentInterfaceTypeS1 */
97     { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* e2nodeComponentInterfaceTypeX2 */
98 };
99 asn_CHOICE_specifics_t asn_SPC_E2nodeComponentID_specs_1 = {
100         sizeof(struct E2nodeComponentID),
101         offsetof(struct E2nodeComponentID, _asn_ctx),
102         offsetof(struct E2nodeComponentID, present),
103         sizeof(((struct E2nodeComponentID *)0)->present),
104         asn_MAP_E2nodeComponentID_tag2el_1,
105         7,      /* Count of tags in the map */
106         0, 0,
107         7       /* Extensions start */
108 };
109 asn_TYPE_descriptor_t asn_DEF_E2nodeComponentID = {
110         "E2nodeComponentID",
111         "E2nodeComponentID",
112         &asn_OP_CHOICE,
113         0,      /* No effective tags (pointer) */
114         0,      /* No effective tags (count) */
115         0,      /* No tags (pointer) */
116         0,      /* No tags (count) */
117         { &asn_OER_type_E2nodeComponentID_constr_1, &asn_PER_type_E2nodeComponentID_constr_1, CHOICE_constraint },
118         asn_MBR_E2nodeComponentID_1,
119         7,      /* Elements count */
120         &asn_SPC_E2nodeComponentID_specs_1      /* Additional specs */
121 };
122