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 "UE-TimersAndConstants.h"
11 * This type is implemented using NativeEnumerated,
12 * so here we adjust the DEF accordingly.
15 * This type is implemented using NativeEnumerated,
16 * so here we adjust the DEF accordingly.
19 * This type is implemented using NativeEnumerated,
20 * so here we adjust the DEF accordingly.
23 * This type is implemented using NativeEnumerated,
24 * so here we adjust the DEF accordingly.
27 * This type is implemented using NativeEnumerated,
28 * so here we adjust the DEF accordingly.
31 * This type is implemented using NativeEnumerated,
32 * so here we adjust the DEF accordingly.
35 * This type is implemented using NativeEnumerated,
36 * so here we adjust the DEF accordingly.
38 static asn_oer_constraints_t asn_OER_type_t300_constr_2 CC_NOTUSED = {
41 static asn_per_constraints_t asn_PER_type_t300_constr_2 CC_NOTUSED = {
42 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
43 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
44 0, 0 /* No PER value map */
46 static asn_oer_constraints_t asn_OER_type_t301_constr_11 CC_NOTUSED = {
49 static asn_per_constraints_t asn_PER_type_t301_constr_11 CC_NOTUSED = {
50 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
51 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
52 0, 0 /* No PER value map */
54 static asn_oer_constraints_t asn_OER_type_t310_constr_20 CC_NOTUSED = {
57 static asn_per_constraints_t asn_PER_type_t310_constr_20 CC_NOTUSED = {
58 { APC_CONSTRAINED, 3, 3, 0, 6 } /* (0..6) */,
59 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
60 0, 0 /* No PER value map */
62 static asn_oer_constraints_t asn_OER_type_n310_constr_28 CC_NOTUSED = {
65 static asn_per_constraints_t asn_PER_type_n310_constr_28 CC_NOTUSED = {
66 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
67 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
68 0, 0 /* No PER value map */
70 static asn_oer_constraints_t asn_OER_type_t311_constr_37 CC_NOTUSED = {
73 static asn_per_constraints_t asn_PER_type_t311_constr_37 CC_NOTUSED = {
74 { APC_CONSTRAINED, 3, 3, 0, 6 } /* (0..6) */,
75 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
76 0, 0 /* No PER value map */
78 static asn_oer_constraints_t asn_OER_type_n311_constr_45 CC_NOTUSED = {
81 static asn_per_constraints_t asn_PER_type_n311_constr_45 CC_NOTUSED = {
82 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
83 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
84 0, 0 /* No PER value map */
86 static asn_oer_constraints_t asn_OER_type_t319_constr_54 CC_NOTUSED = {
89 static asn_per_constraints_t asn_PER_type_t319_constr_54 CC_NOTUSED = {
90 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
91 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
92 0, 0 /* No PER value map */
94 static const asn_INTEGER_enum_map_t asn_MAP_t300_value2enum_2[] = {
104 static const unsigned int asn_MAP_t300_enum2value_2[] = {
114 static const asn_INTEGER_specifics_t asn_SPC_t300_specs_2 = {
115 asn_MAP_t300_value2enum_2, /* "tag" => N; sorted by tag */
116 asn_MAP_t300_enum2value_2, /* N => "tag"; sorted by N */
117 8, /* Number of elements in the maps */
118 0, /* Enumeration is not extensible */
119 1, /* Strict enumeration */
120 0, /* Native long size */
123 static const ber_tlv_tag_t asn_DEF_t300_tags_2[] = {
124 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
125 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
127 static /* Use -fall-defs-global to expose */
128 asn_TYPE_descriptor_t asn_DEF_t300_2 = {
131 &asn_OP_NativeEnumerated,
133 sizeof(asn_DEF_t300_tags_2)
134 /sizeof(asn_DEF_t300_tags_2[0]) - 1, /* 1 */
135 asn_DEF_t300_tags_2, /* Same as above */
136 sizeof(asn_DEF_t300_tags_2)
137 /sizeof(asn_DEF_t300_tags_2[0]), /* 2 */
138 { &asn_OER_type_t300_constr_2, &asn_PER_type_t300_constr_2, NativeEnumerated_constraint },
139 0, 0, /* Defined elsewhere */
140 &asn_SPC_t300_specs_2 /* Additional specs */
143 static const asn_INTEGER_enum_map_t asn_MAP_t301_value2enum_11[] = {
153 static const unsigned int asn_MAP_t301_enum2value_11[] = {
163 static const asn_INTEGER_specifics_t asn_SPC_t301_specs_11 = {
164 asn_MAP_t301_value2enum_11, /* "tag" => N; sorted by tag */
165 asn_MAP_t301_enum2value_11, /* N => "tag"; sorted by N */
166 8, /* Number of elements in the maps */
167 0, /* Enumeration is not extensible */
168 1, /* Strict enumeration */
169 0, /* Native long size */
172 static const ber_tlv_tag_t asn_DEF_t301_tags_11[] = {
173 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
174 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
176 static /* Use -fall-defs-global to expose */
177 asn_TYPE_descriptor_t asn_DEF_t301_11 = {
180 &asn_OP_NativeEnumerated,
181 asn_DEF_t301_tags_11,
182 sizeof(asn_DEF_t301_tags_11)
183 /sizeof(asn_DEF_t301_tags_11[0]) - 1, /* 1 */
184 asn_DEF_t301_tags_11, /* Same as above */
185 sizeof(asn_DEF_t301_tags_11)
186 /sizeof(asn_DEF_t301_tags_11[0]), /* 2 */
187 { &asn_OER_type_t301_constr_11, &asn_PER_type_t301_constr_11, NativeEnumerated_constraint },
188 0, 0, /* Defined elsewhere */
189 &asn_SPC_t301_specs_11 /* Additional specs */
192 static const asn_INTEGER_enum_map_t asn_MAP_t310_value2enum_20[] = {
201 static const unsigned int asn_MAP_t310_enum2value_20[] = {
210 static const asn_INTEGER_specifics_t asn_SPC_t310_specs_20 = {
211 asn_MAP_t310_value2enum_20, /* "tag" => N; sorted by tag */
212 asn_MAP_t310_enum2value_20, /* N => "tag"; sorted by N */
213 7, /* Number of elements in the maps */
214 0, /* Enumeration is not extensible */
215 1, /* Strict enumeration */
216 0, /* Native long size */
219 static const ber_tlv_tag_t asn_DEF_t310_tags_20[] = {
220 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
221 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
223 static /* Use -fall-defs-global to expose */
224 asn_TYPE_descriptor_t asn_DEF_t310_20 = {
227 &asn_OP_NativeEnumerated,
228 asn_DEF_t310_tags_20,
229 sizeof(asn_DEF_t310_tags_20)
230 /sizeof(asn_DEF_t310_tags_20[0]) - 1, /* 1 */
231 asn_DEF_t310_tags_20, /* Same as above */
232 sizeof(asn_DEF_t310_tags_20)
233 /sizeof(asn_DEF_t310_tags_20[0]), /* 2 */
234 { &asn_OER_type_t310_constr_20, &asn_PER_type_t310_constr_20, NativeEnumerated_constraint },
235 0, 0, /* Defined elsewhere */
236 &asn_SPC_t310_specs_20 /* Additional specs */
239 static const asn_INTEGER_enum_map_t asn_MAP_n310_value2enum_28[] = {
249 static const unsigned int asn_MAP_n310_enum2value_28[] = {
259 static const asn_INTEGER_specifics_t asn_SPC_n310_specs_28 = {
260 asn_MAP_n310_value2enum_28, /* "tag" => N; sorted by tag */
261 asn_MAP_n310_enum2value_28, /* N => "tag"; sorted by N */
262 8, /* Number of elements in the maps */
263 0, /* Enumeration is not extensible */
264 1, /* Strict enumeration */
265 0, /* Native long size */
268 static const ber_tlv_tag_t asn_DEF_n310_tags_28[] = {
269 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
270 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
272 static /* Use -fall-defs-global to expose */
273 asn_TYPE_descriptor_t asn_DEF_n310_28 = {
276 &asn_OP_NativeEnumerated,
277 asn_DEF_n310_tags_28,
278 sizeof(asn_DEF_n310_tags_28)
279 /sizeof(asn_DEF_n310_tags_28[0]) - 1, /* 1 */
280 asn_DEF_n310_tags_28, /* Same as above */
281 sizeof(asn_DEF_n310_tags_28)
282 /sizeof(asn_DEF_n310_tags_28[0]), /* 2 */
283 { &asn_OER_type_n310_constr_28, &asn_PER_type_n310_constr_28, NativeEnumerated_constraint },
284 0, 0, /* Defined elsewhere */
285 &asn_SPC_n310_specs_28 /* Additional specs */
288 static const asn_INTEGER_enum_map_t asn_MAP_t311_value2enum_37[] = {
297 static const unsigned int asn_MAP_t311_enum2value_37[] = {
306 static const asn_INTEGER_specifics_t asn_SPC_t311_specs_37 = {
307 asn_MAP_t311_value2enum_37, /* "tag" => N; sorted by tag */
308 asn_MAP_t311_enum2value_37, /* N => "tag"; sorted by N */
309 7, /* Number of elements in the maps */
310 0, /* Enumeration is not extensible */
311 1, /* Strict enumeration */
312 0, /* Native long size */
315 static const ber_tlv_tag_t asn_DEF_t311_tags_37[] = {
316 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
317 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
319 static /* Use -fall-defs-global to expose */
320 asn_TYPE_descriptor_t asn_DEF_t311_37 = {
323 &asn_OP_NativeEnumerated,
324 asn_DEF_t311_tags_37,
325 sizeof(asn_DEF_t311_tags_37)
326 /sizeof(asn_DEF_t311_tags_37[0]) - 1, /* 1 */
327 asn_DEF_t311_tags_37, /* Same as above */
328 sizeof(asn_DEF_t311_tags_37)
329 /sizeof(asn_DEF_t311_tags_37[0]), /* 2 */
330 { &asn_OER_type_t311_constr_37, &asn_PER_type_t311_constr_37, NativeEnumerated_constraint },
331 0, 0, /* Defined elsewhere */
332 &asn_SPC_t311_specs_37 /* Additional specs */
335 static const asn_INTEGER_enum_map_t asn_MAP_n311_value2enum_45[] = {
345 static const unsigned int asn_MAP_n311_enum2value_45[] = {
355 static const asn_INTEGER_specifics_t asn_SPC_n311_specs_45 = {
356 asn_MAP_n311_value2enum_45, /* "tag" => N; sorted by tag */
357 asn_MAP_n311_enum2value_45, /* N => "tag"; sorted by N */
358 8, /* Number of elements in the maps */
359 0, /* Enumeration is not extensible */
360 1, /* Strict enumeration */
361 0, /* Native long size */
364 static const ber_tlv_tag_t asn_DEF_n311_tags_45[] = {
365 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
366 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
368 static /* Use -fall-defs-global to expose */
369 asn_TYPE_descriptor_t asn_DEF_n311_45 = {
372 &asn_OP_NativeEnumerated,
373 asn_DEF_n311_tags_45,
374 sizeof(asn_DEF_n311_tags_45)
375 /sizeof(asn_DEF_n311_tags_45[0]) - 1, /* 1 */
376 asn_DEF_n311_tags_45, /* Same as above */
377 sizeof(asn_DEF_n311_tags_45)
378 /sizeof(asn_DEF_n311_tags_45[0]), /* 2 */
379 { &asn_OER_type_n311_constr_45, &asn_PER_type_n311_constr_45, NativeEnumerated_constraint },
380 0, 0, /* Defined elsewhere */
381 &asn_SPC_n311_specs_45 /* Additional specs */
384 static const asn_INTEGER_enum_map_t asn_MAP_t319_value2enum_54[] = {
394 static const unsigned int asn_MAP_t319_enum2value_54[] = {
404 static const asn_INTEGER_specifics_t asn_SPC_t319_specs_54 = {
405 asn_MAP_t319_value2enum_54, /* "tag" => N; sorted by tag */
406 asn_MAP_t319_enum2value_54, /* N => "tag"; sorted by N */
407 8, /* Number of elements in the maps */
408 0, /* Enumeration is not extensible */
409 1, /* Strict enumeration */
410 0, /* Native long size */
413 static const ber_tlv_tag_t asn_DEF_t319_tags_54[] = {
414 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
415 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
417 static /* Use -fall-defs-global to expose */
418 asn_TYPE_descriptor_t asn_DEF_t319_54 = {
421 &asn_OP_NativeEnumerated,
422 asn_DEF_t319_tags_54,
423 sizeof(asn_DEF_t319_tags_54)
424 /sizeof(asn_DEF_t319_tags_54[0]) - 1, /* 1 */
425 asn_DEF_t319_tags_54, /* Same as above */
426 sizeof(asn_DEF_t319_tags_54)
427 /sizeof(asn_DEF_t319_tags_54[0]), /* 2 */
428 { &asn_OER_type_t319_constr_54, &asn_PER_type_t319_constr_54, NativeEnumerated_constraint },
429 0, 0, /* Defined elsewhere */
430 &asn_SPC_t319_specs_54 /* Additional specs */
433 asn_TYPE_member_t asn_MBR_UE_TimersAndConstants_1[] = {
434 { ATF_NOFLAGS, 0, offsetof(struct UE_TimersAndConstants, t300),
435 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
436 -1, /* IMPLICIT tag at current level */
440 0, 0, /* No default value */
443 { ATF_NOFLAGS, 0, offsetof(struct UE_TimersAndConstants, t301),
444 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
445 -1, /* IMPLICIT tag at current level */
449 0, 0, /* No default value */
452 { ATF_NOFLAGS, 0, offsetof(struct UE_TimersAndConstants, t310),
453 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
454 -1, /* IMPLICIT tag at current level */
458 0, 0, /* No default value */
461 { ATF_NOFLAGS, 0, offsetof(struct UE_TimersAndConstants, n310),
462 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
463 -1, /* IMPLICIT tag at current level */
467 0, 0, /* No default value */
470 { ATF_NOFLAGS, 0, offsetof(struct UE_TimersAndConstants, t311),
471 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
472 -1, /* IMPLICIT tag at current level */
476 0, 0, /* No default value */
479 { ATF_NOFLAGS, 0, offsetof(struct UE_TimersAndConstants, n311),
480 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
481 -1, /* IMPLICIT tag at current level */
485 0, 0, /* No default value */
488 { ATF_NOFLAGS, 0, offsetof(struct UE_TimersAndConstants, t319),
489 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
490 -1, /* IMPLICIT tag at current level */
494 0, 0, /* No default value */
498 static const ber_tlv_tag_t asn_DEF_UE_TimersAndConstants_tags_1[] = {
499 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
501 static const asn_TYPE_tag2member_t asn_MAP_UE_TimersAndConstants_tag2el_1[] = {
502 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* t300 */
503 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* t301 */
504 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* t310 */
505 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* n310 */
506 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* t311 */
507 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* n311 */
508 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* t319 */
510 asn_SEQUENCE_specifics_t asn_SPC_UE_TimersAndConstants_specs_1 = {
511 sizeof(struct UE_TimersAndConstants),
512 offsetof(struct UE_TimersAndConstants, _asn_ctx),
513 asn_MAP_UE_TimersAndConstants_tag2el_1,
514 7, /* Count of tags in the map */
515 0, 0, 0, /* Optional elements (not needed) */
516 7, /* First extension addition */
518 asn_TYPE_descriptor_t asn_DEF_UE_TimersAndConstants = {
519 "UE-TimersAndConstants",
520 "UE-TimersAndConstants",
522 asn_DEF_UE_TimersAndConstants_tags_1,
523 sizeof(asn_DEF_UE_TimersAndConstants_tags_1)
524 /sizeof(asn_DEF_UE_TimersAndConstants_tags_1[0]), /* 1 */
525 asn_DEF_UE_TimersAndConstants_tags_1, /* Same as above */
526 sizeof(asn_DEF_UE_TimersAndConstants_tags_1)
527 /sizeof(asn_DEF_UE_TimersAndConstants_tags_1[0]), /* 1 */
528 { 0, 0, SEQUENCE_constraint },
529 asn_MBR_UE_TimersAndConstants_1,
530 7, /* Elements count */
531 &asn_SPC_UE_TimersAndConstants_specs_1 /* Additional specs */