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 "MeasGapConfig.h"
10 #include "GapConfig.h"
11 static asn_oer_constraints_t asn_OER_type_gapFR2_constr_2 CC_NOTUSED = {
14 static asn_per_constraints_t asn_PER_type_gapFR2_constr_2 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 asn_oer_constraints_t asn_OER_type_gapFR1_constr_7 CC_NOTUSED = {
22 static asn_per_constraints_t asn_PER_type_gapFR1_constr_7 CC_NOTUSED = {
23 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
24 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
25 0, 0 /* No PER value map */
27 static asn_oer_constraints_t asn_OER_type_gapUE_constr_10 CC_NOTUSED = {
30 static asn_per_constraints_t asn_PER_type_gapUE_constr_10 CC_NOTUSED = {
31 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
32 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
33 0, 0 /* No PER value map */
35 static asn_TYPE_member_t asn_MBR_gapFR2_2[] = {
36 { ATF_NOFLAGS, 0, offsetof(struct MeasGapConfig__gapFR2, choice.release),
37 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
38 -1, /* IMPLICIT tag at current level */
42 0, 0, /* No default value */
45 { ATF_POINTER, 0, offsetof(struct MeasGapConfig__gapFR2, choice.setup),
46 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
47 -1, /* IMPLICIT tag at current level */
51 0, 0, /* No default value */
55 static const asn_TYPE_tag2member_t asn_MAP_gapFR2_tag2el_2[] = {
56 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
57 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
59 static asn_CHOICE_specifics_t asn_SPC_gapFR2_specs_2 = {
60 sizeof(struct MeasGapConfig__gapFR2),
61 offsetof(struct MeasGapConfig__gapFR2, _asn_ctx),
62 offsetof(struct MeasGapConfig__gapFR2, present),
63 sizeof(((struct MeasGapConfig__gapFR2 *)0)->present),
64 asn_MAP_gapFR2_tag2el_2,
65 2, /* Count of tags in the map */
67 -1 /* Extensions start */
69 static /* Use -fall-defs-global to expose */
70 asn_TYPE_descriptor_t asn_DEF_gapFR2_2 = {
74 0, /* No effective tags (pointer) */
75 0, /* No effective tags (count) */
76 0, /* No tags (pointer) */
77 0, /* No tags (count) */
78 { &asn_OER_type_gapFR2_constr_2, &asn_PER_type_gapFR2_constr_2, CHOICE_constraint },
80 2, /* Elements count */
81 &asn_SPC_gapFR2_specs_2 /* Additional specs */
84 static asn_TYPE_member_t asn_MBR_gapFR1_7[] = {
85 { ATF_NOFLAGS, 0, offsetof(struct MeasGapConfig__ext1__gapFR1, choice.release),
86 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
87 -1, /* IMPLICIT tag at current level */
91 0, 0, /* No default value */
94 { ATF_POINTER, 0, offsetof(struct MeasGapConfig__ext1__gapFR1, choice.setup),
95 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
96 -1, /* IMPLICIT tag at current level */
100 0, 0, /* No default value */
104 static const asn_TYPE_tag2member_t asn_MAP_gapFR1_tag2el_7[] = {
105 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
106 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
108 static asn_CHOICE_specifics_t asn_SPC_gapFR1_specs_7 = {
109 sizeof(struct MeasGapConfig__ext1__gapFR1),
110 offsetof(struct MeasGapConfig__ext1__gapFR1, _asn_ctx),
111 offsetof(struct MeasGapConfig__ext1__gapFR1, present),
112 sizeof(((struct MeasGapConfig__ext1__gapFR1 *)0)->present),
113 asn_MAP_gapFR1_tag2el_7,
114 2, /* Count of tags in the map */
116 -1 /* Extensions start */
118 static /* Use -fall-defs-global to expose */
119 asn_TYPE_descriptor_t asn_DEF_gapFR1_7 = {
123 0, /* No effective tags (pointer) */
124 0, /* No effective tags (count) */
125 0, /* No tags (pointer) */
126 0, /* No tags (count) */
127 { &asn_OER_type_gapFR1_constr_7, &asn_PER_type_gapFR1_constr_7, CHOICE_constraint },
129 2, /* Elements count */
130 &asn_SPC_gapFR1_specs_7 /* Additional specs */
133 static asn_TYPE_member_t asn_MBR_gapUE_10[] = {
134 { ATF_NOFLAGS, 0, offsetof(struct MeasGapConfig__ext1__gapUE, choice.release),
135 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
136 -1, /* IMPLICIT tag at current level */
140 0, 0, /* No default value */
143 { ATF_POINTER, 0, offsetof(struct MeasGapConfig__ext1__gapUE, choice.setup),
144 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
145 -1, /* IMPLICIT tag at current level */
149 0, 0, /* No default value */
153 static const asn_TYPE_tag2member_t asn_MAP_gapUE_tag2el_10[] = {
154 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
155 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
157 static asn_CHOICE_specifics_t asn_SPC_gapUE_specs_10 = {
158 sizeof(struct MeasGapConfig__ext1__gapUE),
159 offsetof(struct MeasGapConfig__ext1__gapUE, _asn_ctx),
160 offsetof(struct MeasGapConfig__ext1__gapUE, present),
161 sizeof(((struct MeasGapConfig__ext1__gapUE *)0)->present),
162 asn_MAP_gapUE_tag2el_10,
163 2, /* Count of tags in the map */
165 -1 /* Extensions start */
167 static /* Use -fall-defs-global to expose */
168 asn_TYPE_descriptor_t asn_DEF_gapUE_10 = {
172 0, /* No effective tags (pointer) */
173 0, /* No effective tags (count) */
174 0, /* No tags (pointer) */
175 0, /* No tags (count) */
176 { &asn_OER_type_gapUE_constr_10, &asn_PER_type_gapUE_constr_10, CHOICE_constraint },
178 2, /* Elements count */
179 &asn_SPC_gapUE_specs_10 /* Additional specs */
182 static asn_TYPE_member_t asn_MBR_ext1_6[] = {
183 { ATF_POINTER, 2, offsetof(struct MeasGapConfig__ext1, gapFR1),
184 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
185 +1, /* EXPLICIT tag at current level */
189 0, 0, /* No default value */
192 { ATF_POINTER, 1, offsetof(struct MeasGapConfig__ext1, gapUE),
193 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
194 +1, /* EXPLICIT tag at current level */
198 0, 0, /* No default value */
202 static const int asn_MAP_ext1_oms_6[] = { 0, 1 };
203 static const ber_tlv_tag_t asn_DEF_ext1_tags_6[] = {
204 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
205 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
207 static const asn_TYPE_tag2member_t asn_MAP_ext1_tag2el_6[] = {
208 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gapFR1 */
209 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* gapUE */
211 static asn_SEQUENCE_specifics_t asn_SPC_ext1_specs_6 = {
212 sizeof(struct MeasGapConfig__ext1),
213 offsetof(struct MeasGapConfig__ext1, _asn_ctx),
214 asn_MAP_ext1_tag2el_6,
215 2, /* Count of tags in the map */
216 asn_MAP_ext1_oms_6, /* Optional members */
217 2, 0, /* Root/Additions */
218 -1, /* First extension addition */
220 static /* Use -fall-defs-global to expose */
221 asn_TYPE_descriptor_t asn_DEF_ext1_6 = {
226 sizeof(asn_DEF_ext1_tags_6)
227 /sizeof(asn_DEF_ext1_tags_6[0]) - 1, /* 1 */
228 asn_DEF_ext1_tags_6, /* Same as above */
229 sizeof(asn_DEF_ext1_tags_6)
230 /sizeof(asn_DEF_ext1_tags_6[0]), /* 2 */
231 { 0, 0, SEQUENCE_constraint },
233 2, /* Elements count */
234 &asn_SPC_ext1_specs_6 /* Additional specs */
237 asn_TYPE_member_t asn_MBR_MeasGapConfig_1[] = {
238 { ATF_POINTER, 2, offsetof(struct MeasGapConfig, gapFR2),
239 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
240 +1, /* EXPLICIT tag at current level */
244 0, 0, /* No default value */
247 { ATF_POINTER, 1, offsetof(struct MeasGapConfig, ext1),
248 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
253 0, 0, /* No default value */
257 static const int asn_MAP_MeasGapConfig_oms_1[] = { 0, 1 };
258 static const ber_tlv_tag_t asn_DEF_MeasGapConfig_tags_1[] = {
259 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
261 static const asn_TYPE_tag2member_t asn_MAP_MeasGapConfig_tag2el_1[] = {
262 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gapFR2 */
263 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ext1 */
265 asn_SEQUENCE_specifics_t asn_SPC_MeasGapConfig_specs_1 = {
266 sizeof(struct MeasGapConfig),
267 offsetof(struct MeasGapConfig, _asn_ctx),
268 asn_MAP_MeasGapConfig_tag2el_1,
269 2, /* Count of tags in the map */
270 asn_MAP_MeasGapConfig_oms_1, /* Optional members */
271 1, 1, /* Root/Additions */
272 1, /* First extension addition */
274 asn_TYPE_descriptor_t asn_DEF_MeasGapConfig = {
278 asn_DEF_MeasGapConfig_tags_1,
279 sizeof(asn_DEF_MeasGapConfig_tags_1)
280 /sizeof(asn_DEF_MeasGapConfig_tags_1[0]), /* 1 */
281 asn_DEF_MeasGapConfig_tags_1, /* Same as above */
282 sizeof(asn_DEF_MeasGapConfig_tags_1)
283 /sizeof(asn_DEF_MeasGapConfig_tags_1[0]), /* 1 */
284 { 0, 0, SEQUENCE_constraint },
285 asn_MBR_MeasGapConfig_1,
286 2, /* Elements count */
287 &asn_SPC_MeasGapConfig_specs_1 /* Additional specs */