[Epic-ID: ODUHIGH-488][Task-ID: ODUHIGH-492] WG8 Alignment [DCI Information]
[o-du/l2.git] / src / codec_utils / E2AP / E2nodeComponentID.h
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 #ifndef _E2nodeComponentID_H_
9 #define _E2nodeComponentID_H_
10
11
12 #include <asn_application.h>
13
14 /* Including external dependencies */
15 #include <constr_CHOICE.h>
16
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20
21 /* Dependencies */
22 typedef enum E2nodeComponentID_PR {
23         E2nodeComponentID_PR_NOTHING,   /* No components present */
24         E2nodeComponentID_PR_e2nodeComponentInterfaceTypeNG,
25         E2nodeComponentID_PR_e2nodeComponentInterfaceTypeXn,
26         E2nodeComponentID_PR_e2nodeComponentInterfaceTypeE1,
27         E2nodeComponentID_PR_e2nodeComponentInterfaceTypeF1,
28         E2nodeComponentID_PR_e2nodeComponentInterfaceTypeW1,
29         E2nodeComponentID_PR_e2nodeComponentInterfaceTypeS1,
30         E2nodeComponentID_PR_e2nodeComponentInterfaceTypeX2
31         /* Extensions may appear below */
32         
33 } E2nodeComponentID_PR;
34
35 /* Forward declarations */
36 struct E2nodeComponentInterfaceNG;
37 struct E2nodeComponentInterfaceXn;
38 struct E2nodeComponentInterfaceE1;
39 struct E2nodeComponentInterfaceF1;
40 struct E2nodeComponentInterfaceW1;
41 struct E2nodeComponentInterfaceS1;
42 struct E2nodeComponentInterfaceX2;
43
44 /* E2nodeComponentID */
45 typedef struct E2nodeComponentID {
46         E2nodeComponentID_PR present;
47         union E2nodeComponentID_u {
48                 struct E2nodeComponentInterfaceNG       *e2nodeComponentInterfaceTypeNG;
49                 struct E2nodeComponentInterfaceXn       *e2nodeComponentInterfaceTypeXn;
50                 struct E2nodeComponentInterfaceE1       *e2nodeComponentInterfaceTypeE1;
51                 struct E2nodeComponentInterfaceF1       *e2nodeComponentInterfaceTypeF1;
52                 struct E2nodeComponentInterfaceW1       *e2nodeComponentInterfaceTypeW1;
53                 struct E2nodeComponentInterfaceS1       *e2nodeComponentInterfaceTypeS1;
54                 struct E2nodeComponentInterfaceX2       *e2nodeComponentInterfaceTypeX2;
55                 /*
56                  * This type is extensible,
57                  * possible extensions are below.
58                  */
59         } choice;
60         
61         /* Context for parsing across buffer boundaries */
62         asn_struct_ctx_t _asn_ctx;
63 } E2nodeComponentID_t;
64
65 /* Implementation */
66 extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentID;
67 extern asn_CHOICE_specifics_t asn_SPC_E2nodeComponentID_specs_1;
68 extern asn_TYPE_member_t asn_MBR_E2nodeComponentID_1[7];
69 extern asn_per_constraints_t asn_PER_type_E2nodeComponentID_constr_1;
70
71 #ifdef __cplusplus
72 }
73 #endif
74
75 #endif  /* _E2nodeComponentID_H_ */
76 #include <asn_internal.h>