2 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3 * From ASN.1 module "NR-RRC-Definitions"
4 * found in "./22April22_Paging/rrc_15.3_asn.asn1"
5 * `asn1c -D ./22April22_Paging -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
8 #include "RRCRelease.h"
10 #include "RRCRelease-IEs.h"
11 static asn_oer_constraints_t asn_OER_type_criticalExtensions_constr_3 CC_NOTUSED = {
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 */
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))
23 static asn_SEQUENCE_specifics_t asn_SPC_criticalExtensionsFuture_specs_5 = {
24 sizeof(struct RRCRelease__criticalExtensions__criticalExtensionsFuture),
25 offsetof(struct RRCRelease__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 */
31 static /* Use -fall-defs-global to expose */
32 asn_TYPE_descriptor_t asn_DEF_criticalExtensionsFuture_5 = {
33 "criticalExtensionsFuture",
34 "criticalExtensionsFuture",
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 */
47 static asn_TYPE_member_t asn_MBR_criticalExtensions_3[] = {
48 { ATF_POINTER, 0, offsetof(struct RRCRelease__criticalExtensions, choice.rrcRelease),
49 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
50 -1, /* IMPLICIT tag at current level */
51 &asn_DEF_RRCRelease_IEs,
54 0, 0, /* No default value */
57 { ATF_POINTER, 0, offsetof(struct RRCRelease__criticalExtensions, choice.criticalExtensionsFuture),
58 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
60 &asn_DEF_criticalExtensionsFuture_5,
63 0, 0, /* No default value */
64 "criticalExtensionsFuture"
67 static const asn_TYPE_tag2member_t asn_MAP_criticalExtensions_tag2el_3[] = {
68 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rrcRelease */
69 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* criticalExtensionsFuture */
71 static asn_CHOICE_specifics_t asn_SPC_criticalExtensions_specs_3 = {
72 sizeof(struct RRCRelease__criticalExtensions),
73 offsetof(struct RRCRelease__criticalExtensions, _asn_ctx),
74 offsetof(struct RRCRelease__criticalExtensions, present),
75 sizeof(((struct RRCRelease__criticalExtensions *)0)->present),
76 asn_MAP_criticalExtensions_tag2el_3,
77 2, /* Count of tags in the map */
79 -1 /* Extensions start */
81 static /* Use -fall-defs-global to expose */
82 asn_TYPE_descriptor_t asn_DEF_criticalExtensions_3 = {
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 */
96 asn_TYPE_member_t asn_MBR_RRCRelease_1[] = {
97 { ATF_NOFLAGS, 0, offsetof(struct RRCRelease, rrc_TransactionIdentifier),
98 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
99 -1, /* IMPLICIT tag at current level */
100 &asn_DEF_RRC_TransactionIdentifier,
103 0, 0, /* No default value */
104 "rrc-TransactionIdentifier"
106 { ATF_NOFLAGS, 0, offsetof(struct RRCRelease, criticalExtensions),
107 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
108 +1, /* EXPLICIT tag at current level */
109 &asn_DEF_criticalExtensions_3,
112 0, 0, /* No default value */
116 static const ber_tlv_tag_t asn_DEF_RRCRelease_tags_1[] = {
117 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
119 static const asn_TYPE_tag2member_t asn_MAP_RRCRelease_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 */
123 asn_SEQUENCE_specifics_t asn_SPC_RRCRelease_specs_1 = {
124 sizeof(struct RRCRelease),
125 offsetof(struct RRCRelease, _asn_ctx),
126 asn_MAP_RRCRelease_tag2el_1,
127 2, /* Count of tags in the map */
128 0, 0, 0, /* Optional elements (not needed) */
129 -1, /* First extension addition */
131 asn_TYPE_descriptor_t asn_DEF_RRCRelease = {
135 asn_DEF_RRCRelease_tags_1,
136 sizeof(asn_DEF_RRCRelease_tags_1)
137 /sizeof(asn_DEF_RRCRelease_tags_1[0]), /* 1 */
138 asn_DEF_RRCRelease_tags_1, /* Same as above */
139 sizeof(asn_DEF_RRCRelease_tags_1)
140 /sizeof(asn_DEF_RRCRelease_tags_1[0]), /* 1 */
141 { 0, 0, SEQUENCE_constraint },
142 asn_MBR_RRCRelease_1,
143 2, /* Elements count */
144 &asn_SPC_RRCRelease_specs_1 /* Additional specs */