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`
10 #include "CFRA-SSB-Resource.h"
11 #include "CFRA-CSIRS-Resource.h"
13 * This type is implemented using NativeEnumerated,
14 * so here we adjust the DEF accordingly.
17 memb_ssb_ResourceList_constraint_14(const asn_TYPE_descriptor_t *td, const void *sptr,
18 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
22 ASN__CTFAIL(app_key, td, sptr,
23 "%s: value not given (%s:%d)",
24 td->name, __FILE__, __LINE__);
28 /* Determine the number of elements */
29 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
31 if((size >= 1 && size <= 64)) {
32 /* Perform validation of the inner elements */
33 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
35 ASN__CTFAIL(app_key, td, sptr,
36 "%s: constraint failed (%s:%d)",
37 td->name, __FILE__, __LINE__);
43 memb_ra_ssb_OccasionMaskIndex_constraint_14(const asn_TYPE_descriptor_t *td, const void *sptr,
44 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
48 ASN__CTFAIL(app_key, td, sptr,
49 "%s: value not given (%s:%d)",
50 td->name, __FILE__, __LINE__);
54 value = *(const long *)sptr;
56 if((value >= 0 && value <= 15)) {
57 /* Constraint check succeeded */
60 ASN__CTFAIL(app_key, td, sptr,
61 "%s: constraint failed (%s:%d)",
62 td->name, __FILE__, __LINE__);
68 memb_csirs_ResourceList_constraint_18(const asn_TYPE_descriptor_t *td, const void *sptr,
69 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
73 ASN__CTFAIL(app_key, td, sptr,
74 "%s: value not given (%s:%d)",
75 td->name, __FILE__, __LINE__);
79 /* Determine the number of elements */
80 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
82 if((size >= 1 && size <= 96)) {
83 /* Perform validation of the inner elements */
84 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
86 ASN__CTFAIL(app_key, td, sptr,
87 "%s: constraint failed (%s:%d)",
88 td->name, __FILE__, __LINE__);
94 memb_totalNumberOfRA_Preambles_v1530_constraint_23(const asn_TYPE_descriptor_t *td, const void *sptr,
95 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
99 ASN__CTFAIL(app_key, td, sptr,
100 "%s: value not given (%s:%d)",
101 td->name, __FILE__, __LINE__);
105 value = *(const long *)sptr;
107 if((value >= 1 && value <= 63)) {
108 /* Constraint check succeeded */
111 ASN__CTFAIL(app_key, td, sptr,
112 "%s: constraint failed (%s:%d)",
113 td->name, __FILE__, __LINE__);
118 static asn_oer_constraints_t asn_OER_type_ssb_perRACH_Occasion_constr_4 CC_NOTUSED = {
121 static asn_per_constraints_t asn_PER_type_ssb_perRACH_Occasion_constr_4 CC_NOTUSED = {
122 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
123 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
124 0, 0 /* No PER value map */
126 static asn_oer_constraints_t asn_OER_type_ssb_ResourceList_constr_15 CC_NOTUSED = {
128 -1 /* (SIZE(1..64)) */};
129 static asn_per_constraints_t asn_PER_type_ssb_ResourceList_constr_15 CC_NOTUSED = {
130 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
131 { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */,
132 0, 0 /* No PER value map */
134 static asn_oer_constraints_t asn_OER_memb_ssb_ResourceList_constr_15 CC_NOTUSED = {
136 -1 /* (SIZE(1..64)) */};
137 static asn_per_constraints_t asn_PER_memb_ssb_ResourceList_constr_15 CC_NOTUSED = {
138 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
139 { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */,
140 0, 0 /* No PER value map */
142 static asn_oer_constraints_t asn_OER_memb_ra_ssb_OccasionMaskIndex_constr_17 CC_NOTUSED = {
143 { 1, 1 } /* (0..15) */,
145 static asn_per_constraints_t asn_PER_memb_ra_ssb_OccasionMaskIndex_constr_17 CC_NOTUSED = {
146 { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */,
147 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
148 0, 0 /* No PER value map */
150 static asn_oer_constraints_t asn_OER_type_csirs_ResourceList_constr_19 CC_NOTUSED = {
152 -1 /* (SIZE(1..96)) */};
153 static asn_per_constraints_t asn_PER_type_csirs_ResourceList_constr_19 CC_NOTUSED = {
154 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
155 { APC_CONSTRAINED, 7, 7, 1, 96 } /* (SIZE(1..96)) */,
156 0, 0 /* No PER value map */
158 static asn_oer_constraints_t asn_OER_memb_csirs_ResourceList_constr_19 CC_NOTUSED = {
160 -1 /* (SIZE(1..96)) */};
161 static asn_per_constraints_t asn_PER_memb_csirs_ResourceList_constr_19 CC_NOTUSED = {
162 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
163 { APC_CONSTRAINED, 7, 7, 1, 96 } /* (SIZE(1..96)) */,
164 0, 0 /* No PER value map */
166 static asn_oer_constraints_t asn_OER_type_resources_constr_13 CC_NOTUSED = {
169 static asn_per_constraints_t asn_PER_type_resources_constr_13 CC_NOTUSED = {
170 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
171 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
172 0, 0 /* No PER value map */
174 static asn_oer_constraints_t asn_OER_memb_totalNumberOfRA_Preambles_v1530_constr_24 CC_NOTUSED = {
175 { 1, 1 } /* (1..63) */,
177 static asn_per_constraints_t asn_PER_memb_totalNumberOfRA_Preambles_v1530_constr_24 CC_NOTUSED = {
178 { APC_CONSTRAINED, 6, 6, 1, 63 } /* (1..63) */,
179 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
180 0, 0 /* No PER value map */
182 static const asn_INTEGER_enum_map_t asn_MAP_ssb_perRACH_Occasion_value2enum_4[] = {
183 { 0, 9, "oneEighth" },
184 { 1, 9, "oneFourth" },
192 static const unsigned int asn_MAP_ssb_perRACH_Occasion_enum2value_4[] = {
196 0, /* oneEighth(0) */
197 1, /* oneFourth(1) */
202 static const asn_INTEGER_specifics_t asn_SPC_ssb_perRACH_Occasion_specs_4 = {
203 asn_MAP_ssb_perRACH_Occasion_value2enum_4, /* "tag" => N; sorted by tag */
204 asn_MAP_ssb_perRACH_Occasion_enum2value_4, /* N => "tag"; sorted by N */
205 8, /* Number of elements in the maps */
206 0, /* Enumeration is not extensible */
207 1, /* Strict enumeration */
208 0, /* Native long size */
211 static const ber_tlv_tag_t asn_DEF_ssb_perRACH_Occasion_tags_4[] = {
212 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
213 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
215 static /* Use -fall-defs-global to expose */
216 asn_TYPE_descriptor_t asn_DEF_ssb_perRACH_Occasion_4 = {
217 "ssb-perRACH-Occasion",
218 "ssb-perRACH-Occasion",
219 &asn_OP_NativeEnumerated,
220 asn_DEF_ssb_perRACH_Occasion_tags_4,
221 sizeof(asn_DEF_ssb_perRACH_Occasion_tags_4)
222 /sizeof(asn_DEF_ssb_perRACH_Occasion_tags_4[0]) - 1, /* 1 */
223 asn_DEF_ssb_perRACH_Occasion_tags_4, /* Same as above */
224 sizeof(asn_DEF_ssb_perRACH_Occasion_tags_4)
225 /sizeof(asn_DEF_ssb_perRACH_Occasion_tags_4[0]), /* 2 */
226 { &asn_OER_type_ssb_perRACH_Occasion_constr_4, &asn_PER_type_ssb_perRACH_Occasion_constr_4, NativeEnumerated_constraint },
227 0, 0, /* Defined elsewhere */
228 &asn_SPC_ssb_perRACH_Occasion_specs_4 /* Additional specs */
231 static asn_TYPE_member_t asn_MBR_occasions_2[] = {
232 { ATF_NOFLAGS, 0, offsetof(struct CFRA__occasions, rach_ConfigGeneric),
233 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
234 -1, /* IMPLICIT tag at current level */
235 &asn_DEF_RACH_ConfigGeneric,
238 0, 0, /* No default value */
241 { ATF_POINTER, 1, offsetof(struct CFRA__occasions, ssb_perRACH_Occasion),
242 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
243 -1, /* IMPLICIT tag at current level */
244 &asn_DEF_ssb_perRACH_Occasion_4,
247 0, 0, /* No default value */
248 "ssb-perRACH-Occasion"
251 static const int asn_MAP_occasions_oms_2[] = { 1 };
252 static const ber_tlv_tag_t asn_DEF_occasions_tags_2[] = {
253 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
254 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
256 static const asn_TYPE_tag2member_t asn_MAP_occasions_tag2el_2[] = {
257 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rach-ConfigGeneric */
258 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ssb-perRACH-Occasion */
260 static asn_SEQUENCE_specifics_t asn_SPC_occasions_specs_2 = {
261 sizeof(struct CFRA__occasions),
262 offsetof(struct CFRA__occasions, _asn_ctx),
263 asn_MAP_occasions_tag2el_2,
264 2, /* Count of tags in the map */
265 asn_MAP_occasions_oms_2, /* Optional members */
266 1, 0, /* Root/Additions */
267 -1, /* First extension addition */
269 static /* Use -fall-defs-global to expose */
270 asn_TYPE_descriptor_t asn_DEF_occasions_2 = {
274 asn_DEF_occasions_tags_2,
275 sizeof(asn_DEF_occasions_tags_2)
276 /sizeof(asn_DEF_occasions_tags_2[0]) - 1, /* 1 */
277 asn_DEF_occasions_tags_2, /* Same as above */
278 sizeof(asn_DEF_occasions_tags_2)
279 /sizeof(asn_DEF_occasions_tags_2[0]), /* 2 */
280 { 0, 0, SEQUENCE_constraint },
282 2, /* Elements count */
283 &asn_SPC_occasions_specs_2 /* Additional specs */
286 static asn_TYPE_member_t asn_MBR_ssb_ResourceList_15[] = {
288 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
290 &asn_DEF_CFRA_SSB_Resource,
293 0, 0, /* No default value */
297 static const ber_tlv_tag_t asn_DEF_ssb_ResourceList_tags_15[] = {
298 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
299 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
301 static asn_SET_OF_specifics_t asn_SPC_ssb_ResourceList_specs_15 = {
302 sizeof(struct CFRA__resources__ssb__ssb_ResourceList),
303 offsetof(struct CFRA__resources__ssb__ssb_ResourceList, _asn_ctx),
304 0, /* XER encoding is XMLDelimitedItemList */
306 static /* Use -fall-defs-global to expose */
307 asn_TYPE_descriptor_t asn_DEF_ssb_ResourceList_15 = {
311 asn_DEF_ssb_ResourceList_tags_15,
312 sizeof(asn_DEF_ssb_ResourceList_tags_15)
313 /sizeof(asn_DEF_ssb_ResourceList_tags_15[0]) - 1, /* 1 */
314 asn_DEF_ssb_ResourceList_tags_15, /* Same as above */
315 sizeof(asn_DEF_ssb_ResourceList_tags_15)
316 /sizeof(asn_DEF_ssb_ResourceList_tags_15[0]), /* 2 */
317 { &asn_OER_type_ssb_ResourceList_constr_15, &asn_PER_type_ssb_ResourceList_constr_15, SEQUENCE_OF_constraint },
318 asn_MBR_ssb_ResourceList_15,
319 1, /* Single element */
320 &asn_SPC_ssb_ResourceList_specs_15 /* Additional specs */
323 static asn_TYPE_member_t asn_MBR_ssb_14[] = {
324 { ATF_NOFLAGS, 0, offsetof(struct CFRA__resources__ssb, ssb_ResourceList),
325 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
327 &asn_DEF_ssb_ResourceList_15,
329 { &asn_OER_memb_ssb_ResourceList_constr_15, &asn_PER_memb_ssb_ResourceList_constr_15, memb_ssb_ResourceList_constraint_14 },
330 0, 0, /* No default value */
333 { ATF_NOFLAGS, 0, offsetof(struct CFRA__resources__ssb, ra_ssb_OccasionMaskIndex),
334 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
335 -1, /* IMPLICIT tag at current level */
336 &asn_DEF_NativeInteger,
338 { &asn_OER_memb_ra_ssb_OccasionMaskIndex_constr_17, &asn_PER_memb_ra_ssb_OccasionMaskIndex_constr_17, memb_ra_ssb_OccasionMaskIndex_constraint_14 },
339 0, 0, /* No default value */
340 "ra-ssb-OccasionMaskIndex"
343 static const ber_tlv_tag_t asn_DEF_ssb_tags_14[] = {
344 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
345 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
347 static const asn_TYPE_tag2member_t asn_MAP_ssb_tag2el_14[] = {
348 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ssb-ResourceList */
349 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ra-ssb-OccasionMaskIndex */
351 static asn_SEQUENCE_specifics_t asn_SPC_ssb_specs_14 = {
352 sizeof(struct CFRA__resources__ssb),
353 offsetof(struct CFRA__resources__ssb, _asn_ctx),
354 asn_MAP_ssb_tag2el_14,
355 2, /* Count of tags in the map */
356 0, 0, 0, /* Optional elements (not needed) */
357 -1, /* First extension addition */
359 static /* Use -fall-defs-global to expose */
360 asn_TYPE_descriptor_t asn_DEF_ssb_14 = {
365 sizeof(asn_DEF_ssb_tags_14)
366 /sizeof(asn_DEF_ssb_tags_14[0]) - 1, /* 1 */
367 asn_DEF_ssb_tags_14, /* Same as above */
368 sizeof(asn_DEF_ssb_tags_14)
369 /sizeof(asn_DEF_ssb_tags_14[0]), /* 2 */
370 { 0, 0, SEQUENCE_constraint },
372 2, /* Elements count */
373 &asn_SPC_ssb_specs_14 /* Additional specs */
376 static asn_TYPE_member_t asn_MBR_csirs_ResourceList_19[] = {
378 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
380 &asn_DEF_CFRA_CSIRS_Resource,
383 0, 0, /* No default value */
387 static const ber_tlv_tag_t asn_DEF_csirs_ResourceList_tags_19[] = {
388 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
389 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
391 static asn_SET_OF_specifics_t asn_SPC_csirs_ResourceList_specs_19 = {
392 sizeof(struct CFRA__resources__csirs__csirs_ResourceList),
393 offsetof(struct CFRA__resources__csirs__csirs_ResourceList, _asn_ctx),
394 0, /* XER encoding is XMLDelimitedItemList */
396 static /* Use -fall-defs-global to expose */
397 asn_TYPE_descriptor_t asn_DEF_csirs_ResourceList_19 = {
398 "csirs-ResourceList",
399 "csirs-ResourceList",
401 asn_DEF_csirs_ResourceList_tags_19,
402 sizeof(asn_DEF_csirs_ResourceList_tags_19)
403 /sizeof(asn_DEF_csirs_ResourceList_tags_19[0]) - 1, /* 1 */
404 asn_DEF_csirs_ResourceList_tags_19, /* Same as above */
405 sizeof(asn_DEF_csirs_ResourceList_tags_19)
406 /sizeof(asn_DEF_csirs_ResourceList_tags_19[0]), /* 2 */
407 { &asn_OER_type_csirs_ResourceList_constr_19, &asn_PER_type_csirs_ResourceList_constr_19, SEQUENCE_OF_constraint },
408 asn_MBR_csirs_ResourceList_19,
409 1, /* Single element */
410 &asn_SPC_csirs_ResourceList_specs_19 /* Additional specs */
413 static asn_TYPE_member_t asn_MBR_csirs_18[] = {
414 { ATF_NOFLAGS, 0, offsetof(struct CFRA__resources__csirs, csirs_ResourceList),
415 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
417 &asn_DEF_csirs_ResourceList_19,
419 { &asn_OER_memb_csirs_ResourceList_constr_19, &asn_PER_memb_csirs_ResourceList_constr_19, memb_csirs_ResourceList_constraint_18 },
420 0, 0, /* No default value */
423 { ATF_NOFLAGS, 0, offsetof(struct CFRA__resources__csirs, rsrp_ThresholdCSI_RS),
424 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
425 -1, /* IMPLICIT tag at current level */
429 0, 0, /* No default value */
430 "rsrp-ThresholdCSI-RS"
433 static const ber_tlv_tag_t asn_DEF_csirs_tags_18[] = {
434 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
435 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
437 static const asn_TYPE_tag2member_t asn_MAP_csirs_tag2el_18[] = {
438 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* csirs-ResourceList */
439 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rsrp-ThresholdCSI-RS */
441 static asn_SEQUENCE_specifics_t asn_SPC_csirs_specs_18 = {
442 sizeof(struct CFRA__resources__csirs),
443 offsetof(struct CFRA__resources__csirs, _asn_ctx),
444 asn_MAP_csirs_tag2el_18,
445 2, /* Count of tags in the map */
446 0, 0, 0, /* Optional elements (not needed) */
447 -1, /* First extension addition */
449 static /* Use -fall-defs-global to expose */
450 asn_TYPE_descriptor_t asn_DEF_csirs_18 = {
454 asn_DEF_csirs_tags_18,
455 sizeof(asn_DEF_csirs_tags_18)
456 /sizeof(asn_DEF_csirs_tags_18[0]) - 1, /* 1 */
457 asn_DEF_csirs_tags_18, /* Same as above */
458 sizeof(asn_DEF_csirs_tags_18)
459 /sizeof(asn_DEF_csirs_tags_18[0]), /* 2 */
460 { 0, 0, SEQUENCE_constraint },
462 2, /* Elements count */
463 &asn_SPC_csirs_specs_18 /* Additional specs */
466 static asn_TYPE_member_t asn_MBR_resources_13[] = {
467 { ATF_POINTER, 0, offsetof(struct CFRA__resources, choice.ssb),
468 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
473 0, 0, /* No default value */
476 { ATF_POINTER, 0, offsetof(struct CFRA__resources, choice.csirs),
477 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
482 0, 0, /* No default value */
486 static const asn_TYPE_tag2member_t asn_MAP_resources_tag2el_13[] = {
487 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ssb */
488 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* csirs */
490 static asn_CHOICE_specifics_t asn_SPC_resources_specs_13 = {
491 sizeof(struct CFRA__resources),
492 offsetof(struct CFRA__resources, _asn_ctx),
493 offsetof(struct CFRA__resources, present),
494 sizeof(((struct CFRA__resources *)0)->present),
495 asn_MAP_resources_tag2el_13,
496 2, /* Count of tags in the map */
498 -1 /* Extensions start */
500 static /* Use -fall-defs-global to expose */
501 asn_TYPE_descriptor_t asn_DEF_resources_13 = {
505 0, /* No effective tags (pointer) */
506 0, /* No effective tags (count) */
507 0, /* No tags (pointer) */
508 0, /* No tags (count) */
509 { &asn_OER_type_resources_constr_13, &asn_PER_type_resources_constr_13, CHOICE_constraint },
510 asn_MBR_resources_13,
511 2, /* Elements count */
512 &asn_SPC_resources_specs_13 /* Additional specs */
515 static asn_TYPE_member_t asn_MBR_ext1_23[] = {
516 { ATF_POINTER, 1, offsetof(struct CFRA__ext1, totalNumberOfRA_Preambles_v1530),
517 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
518 -1, /* IMPLICIT tag at current level */
519 &asn_DEF_NativeInteger,
521 { &asn_OER_memb_totalNumberOfRA_Preambles_v1530_constr_24, &asn_PER_memb_totalNumberOfRA_Preambles_v1530_constr_24, memb_totalNumberOfRA_Preambles_v1530_constraint_23 },
522 0, 0, /* No default value */
523 "totalNumberOfRA-Preambles-v1530"
526 static const int asn_MAP_ext1_oms_23[] = { 0 };
527 static const ber_tlv_tag_t asn_DEF_ext1_tags_23[] = {
528 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
529 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
531 static const asn_TYPE_tag2member_t asn_MAP_ext1_tag2el_23[] = {
532 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* totalNumberOfRA-Preambles-v1530 */
534 static asn_SEQUENCE_specifics_t asn_SPC_ext1_specs_23 = {
535 sizeof(struct CFRA__ext1),
536 offsetof(struct CFRA__ext1, _asn_ctx),
537 asn_MAP_ext1_tag2el_23,
538 1, /* Count of tags in the map */
539 asn_MAP_ext1_oms_23, /* Optional members */
540 1, 0, /* Root/Additions */
541 -1, /* First extension addition */
543 static /* Use -fall-defs-global to expose */
544 asn_TYPE_descriptor_t asn_DEF_ext1_23 = {
548 asn_DEF_ext1_tags_23,
549 sizeof(asn_DEF_ext1_tags_23)
550 /sizeof(asn_DEF_ext1_tags_23[0]) - 1, /* 1 */
551 asn_DEF_ext1_tags_23, /* Same as above */
552 sizeof(asn_DEF_ext1_tags_23)
553 /sizeof(asn_DEF_ext1_tags_23[0]), /* 2 */
554 { 0, 0, SEQUENCE_constraint },
556 1, /* Elements count */
557 &asn_SPC_ext1_specs_23 /* Additional specs */
560 asn_TYPE_member_t asn_MBR_CFRA_1[] = {
561 { ATF_POINTER, 1, offsetof(struct CFRA, occasions),
562 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
564 &asn_DEF_occasions_2,
567 0, 0, /* No default value */
570 { ATF_NOFLAGS, 0, offsetof(struct CFRA, resources),
571 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
572 +1, /* EXPLICIT tag at current level */
573 &asn_DEF_resources_13,
576 0, 0, /* No default value */
579 { ATF_POINTER, 1, offsetof(struct CFRA, ext1),
580 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
585 0, 0, /* No default value */
589 static const int asn_MAP_CFRA_oms_1[] = { 0, 2 };
590 static const ber_tlv_tag_t asn_DEF_CFRA_tags_1[] = {
591 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
593 static const asn_TYPE_tag2member_t asn_MAP_CFRA_tag2el_1[] = {
594 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* occasions */
595 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* resources */
596 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ext1 */
598 asn_SEQUENCE_specifics_t asn_SPC_CFRA_specs_1 = {
600 offsetof(struct CFRA, _asn_ctx),
601 asn_MAP_CFRA_tag2el_1,
602 3, /* Count of tags in the map */
603 asn_MAP_CFRA_oms_1, /* Optional members */
604 1, 1, /* Root/Additions */
605 2, /* First extension addition */
607 asn_TYPE_descriptor_t asn_DEF_CFRA = {
612 sizeof(asn_DEF_CFRA_tags_1)
613 /sizeof(asn_DEF_CFRA_tags_1[0]), /* 1 */
614 asn_DEF_CFRA_tags_1, /* Same as above */
615 sizeof(asn_DEF_CFRA_tags_1)
616 /sizeof(asn_DEF_CFRA_tags_1[0]), /* 1 */
617 { 0, 0, SEQUENCE_constraint },
619 3, /* Elements count */
620 &asn_SPC_CFRA_specs_1 /* Additional specs */