[Epic-ID: ODUHIGH-405][Task-ID: ODUHIGH-437] Establishing communication between Sourc...
[o-du/l2.git] / src / codec_utils / RRC / UECapabilityInformation.c
1 /*
2  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3  * From ASN.1 module "NR-RRC-Definitions"
4  *      found in "../../../rrc_15.3_asn.asn1"
5  *      `asn1c -D ./25_02_2022_RRC/ -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
6  */
7
8 #include "UECapabilityInformation.h"
9
10 #include "UECapabilityInformation-IEs.h"
11 static asn_oer_constraints_t asn_OER_type_criticalExtensions_constr_3 CC_NOTUSED = {
12         { 0, 0 },
13         -1};
14 static asn_per_constraints_t asn_PER_type_criticalExtensions_constr_3 CC_NOTUSED = {
15         { APC_CONSTRAINED,       1,  1,  0,  1 }        /* (0..1) */,
16         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
17         0, 0    /* No PER value map */
18 };
19 static const ber_tlv_tag_t asn_DEF_criticalExtensionsFuture_tags_5[] = {
20         (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
21         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
22 };
23 static asn_SEQUENCE_specifics_t asn_SPC_criticalExtensionsFuture_specs_5 = {
24         sizeof(struct UECapabilityInformation__criticalExtensions__criticalExtensionsFuture),
25         offsetof(struct UECapabilityInformation__criticalExtensions__criticalExtensionsFuture, _asn_ctx),
26         0,      /* No top level tags */
27         0,      /* No tags in the map */
28         0, 0, 0,        /* Optional elements (not needed) */
29         -1,     /* First extension addition */
30 };
31 static /* Use -fall-defs-global to expose */
32 asn_TYPE_descriptor_t asn_DEF_criticalExtensionsFuture_5 = {
33         "criticalExtensionsFuture",
34         "criticalExtensionsFuture",
35         &asn_OP_SEQUENCE,
36         asn_DEF_criticalExtensionsFuture_tags_5,
37         sizeof(asn_DEF_criticalExtensionsFuture_tags_5)
38                 /sizeof(asn_DEF_criticalExtensionsFuture_tags_5[0]) - 1, /* 1 */
39         asn_DEF_criticalExtensionsFuture_tags_5,        /* Same as above */
40         sizeof(asn_DEF_criticalExtensionsFuture_tags_5)
41                 /sizeof(asn_DEF_criticalExtensionsFuture_tags_5[0]), /* 2 */
42         { 0, 0, SEQUENCE_constraint },
43         0, 0,   /* No members */
44         &asn_SPC_criticalExtensionsFuture_specs_5       /* Additional specs */
45 };
46
47 static asn_TYPE_member_t asn_MBR_criticalExtensions_3[] = {
48         { ATF_POINTER, 0, offsetof(struct UECapabilityInformation__criticalExtensions, choice.ueCapabilityInformation),
49                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
50                 -1,     /* IMPLICIT tag at current level */
51                 &asn_DEF_UECapabilityInformation_IEs,
52                 0,
53                 { 0, 0, 0 },
54                 0, 0, /* No default value */
55                 "ueCapabilityInformation"
56                 },
57         { ATF_POINTER, 0, offsetof(struct UECapabilityInformation__criticalExtensions, choice.criticalExtensionsFuture),
58                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
59                 0,
60                 &asn_DEF_criticalExtensionsFuture_5,
61                 0,
62                 { 0, 0, 0 },
63                 0, 0, /* No default value */
64                 "criticalExtensionsFuture"
65                 },
66 };
67 static const asn_TYPE_tag2member_t asn_MAP_criticalExtensions_tag2el_3[] = {
68     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueCapabilityInformation */
69     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* criticalExtensionsFuture */
70 };
71 static asn_CHOICE_specifics_t asn_SPC_criticalExtensions_specs_3 = {
72         sizeof(struct UECapabilityInformation__criticalExtensions),
73         offsetof(struct UECapabilityInformation__criticalExtensions, _asn_ctx),
74         offsetof(struct UECapabilityInformation__criticalExtensions, present),
75         sizeof(((struct UECapabilityInformation__criticalExtensions *)0)->present),
76         asn_MAP_criticalExtensions_tag2el_3,
77         2,      /* Count of tags in the map */
78         0, 0,
79         -1      /* Extensions start */
80 };
81 static /* Use -fall-defs-global to expose */
82 asn_TYPE_descriptor_t asn_DEF_criticalExtensions_3 = {
83         "criticalExtensions",
84         "criticalExtensions",
85         &asn_OP_CHOICE,
86         0,      /* No effective tags (pointer) */
87         0,      /* No effective tags (count) */
88         0,      /* No tags (pointer) */
89         0,      /* No tags (count) */
90         { &asn_OER_type_criticalExtensions_constr_3, &asn_PER_type_criticalExtensions_constr_3, CHOICE_constraint },
91         asn_MBR_criticalExtensions_3,
92         2,      /* Elements count */
93         &asn_SPC_criticalExtensions_specs_3     /* Additional specs */
94 };
95
96 asn_TYPE_member_t asn_MBR_UECapabilityInformation_1[] = {
97         { ATF_NOFLAGS, 0, offsetof(struct UECapabilityInformation, rrc_TransactionIdentifier),
98                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
99                 -1,     /* IMPLICIT tag at current level */
100                 &asn_DEF_RRC_TransactionIdentifier,
101                 0,
102                 { 0, 0, 0 },
103                 0, 0, /* No default value */
104                 "rrc-TransactionIdentifier"
105                 },
106         { ATF_NOFLAGS, 0, offsetof(struct UECapabilityInformation, criticalExtensions),
107                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
108                 +1,     /* EXPLICIT tag at current level */
109                 &asn_DEF_criticalExtensions_3,
110                 0,
111                 { 0, 0, 0 },
112                 0, 0, /* No default value */
113                 "criticalExtensions"
114                 },
115 };
116 static const ber_tlv_tag_t asn_DEF_UECapabilityInformation_tags_1[] = {
117         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
118 };
119 static const asn_TYPE_tag2member_t asn_MAP_UECapabilityInformation_tag2el_1[] = {
120     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rrc-TransactionIdentifier */
121     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* criticalExtensions */
122 };
123 asn_SEQUENCE_specifics_t asn_SPC_UECapabilityInformation_specs_1 = {
124         sizeof(struct UECapabilityInformation),
125         offsetof(struct UECapabilityInformation, _asn_ctx),
126         asn_MAP_UECapabilityInformation_tag2el_1,
127         2,      /* Count of tags in the map */
128         0, 0, 0,        /* Optional elements (not needed) */
129         -1,     /* First extension addition */
130 };
131 asn_TYPE_descriptor_t asn_DEF_UECapabilityInformation = {
132         "UECapabilityInformation",
133         "UECapabilityInformation",
134         &asn_OP_SEQUENCE,
135         asn_DEF_UECapabilityInformation_tags_1,
136         sizeof(asn_DEF_UECapabilityInformation_tags_1)
137                 /sizeof(asn_DEF_UECapabilityInformation_tags_1[0]), /* 1 */
138         asn_DEF_UECapabilityInformation_tags_1, /* Same as above */
139         sizeof(asn_DEF_UECapabilityInformation_tags_1)
140                 /sizeof(asn_DEF_UECapabilityInformation_tags_1[0]), /* 1 */
141         { 0, 0, SEQUENCE_constraint },
142         asn_MBR_UECapabilityInformation_1,
143         2,      /* Elements count */
144         &asn_SPC_UECapabilityInformation_specs_1        /* Additional specs */
145 };
146