2 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3 * From ASN.1 module "NR-RRC-Definitions"
4 * found in "/home/labadmin/hlal/rrc_15.3_asn.asn1"
5 * `asn1c -D ./15_3_rrc/ -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
8 #include "DRX-Config.h"
11 * This type is implemented using NativeEnumerated,
12 * so here we adjust the DEF accordingly.
15 memb_subMilliSeconds_constraint_2(const asn_TYPE_descriptor_t *td, const void *sptr,
16 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
20 ASN__CTFAIL(app_key, td, sptr,
21 "%s: value not given (%s:%d)",
22 td->name, __FILE__, __LINE__);
26 value = *(const long *)sptr;
28 if((value >= 1 && value <= 31)) {
29 /* Constraint check succeeded */
32 ASN__CTFAIL(app_key, td, sptr,
33 "%s: constraint failed (%s:%d)",
34 td->name, __FILE__, __LINE__);
40 * This type is implemented using NativeEnumerated,
41 * so here we adjust the DEF accordingly.
44 * This type is implemented using NativeEnumerated,
45 * so here we adjust the DEF accordingly.
48 * This type is implemented using NativeEnumerated,
49 * so here we adjust the DEF accordingly.
52 memb_ms10_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
53 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
57 ASN__CTFAIL(app_key, td, sptr,
58 "%s: value not given (%s:%d)",
59 td->name, __FILE__, __LINE__);
63 value = *(const long *)sptr;
65 if((value >= 0 && value <= 9)) {
66 /* Constraint check succeeded */
69 ASN__CTFAIL(app_key, td, sptr,
70 "%s: constraint failed (%s:%d)",
71 td->name, __FILE__, __LINE__);
77 memb_ms20_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
78 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
82 ASN__CTFAIL(app_key, td, sptr,
83 "%s: value not given (%s:%d)",
84 td->name, __FILE__, __LINE__);
88 value = *(const long *)sptr;
90 if((value >= 0 && value <= 19)) {
91 /* Constraint check succeeded */
94 ASN__CTFAIL(app_key, td, sptr,
95 "%s: constraint failed (%s:%d)",
96 td->name, __FILE__, __LINE__);
102 memb_ms32_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
103 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
107 ASN__CTFAIL(app_key, td, sptr,
108 "%s: value not given (%s:%d)",
109 td->name, __FILE__, __LINE__);
113 value = *(const long *)sptr;
115 if((value >= 0 && value <= 31)) {
116 /* Constraint check succeeded */
119 ASN__CTFAIL(app_key, td, sptr,
120 "%s: constraint failed (%s:%d)",
121 td->name, __FILE__, __LINE__);
127 memb_ms40_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
128 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
132 ASN__CTFAIL(app_key, td, sptr,
133 "%s: value not given (%s:%d)",
134 td->name, __FILE__, __LINE__);
138 value = *(const long *)sptr;
140 if((value >= 0 && value <= 39)) {
141 /* Constraint check succeeded */
144 ASN__CTFAIL(app_key, td, sptr,
145 "%s: constraint failed (%s:%d)",
146 td->name, __FILE__, __LINE__);
152 memb_ms60_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
153 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
157 ASN__CTFAIL(app_key, td, sptr,
158 "%s: value not given (%s:%d)",
159 td->name, __FILE__, __LINE__);
163 value = *(const long *)sptr;
165 if((value >= 0 && value <= 59)) {
166 /* Constraint check succeeded */
169 ASN__CTFAIL(app_key, td, sptr,
170 "%s: constraint failed (%s:%d)",
171 td->name, __FILE__, __LINE__);
177 memb_ms64_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
178 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
182 ASN__CTFAIL(app_key, td, sptr,
183 "%s: value not given (%s:%d)",
184 td->name, __FILE__, __LINE__);
188 value = *(const long *)sptr;
190 if((value >= 0 && value <= 63)) {
191 /* Constraint check succeeded */
194 ASN__CTFAIL(app_key, td, sptr,
195 "%s: constraint failed (%s:%d)",
196 td->name, __FILE__, __LINE__);
202 memb_ms70_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
203 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
207 ASN__CTFAIL(app_key, td, sptr,
208 "%s: value not given (%s:%d)",
209 td->name, __FILE__, __LINE__);
213 value = *(const long *)sptr;
215 if((value >= 0 && value <= 69)) {
216 /* Constraint check succeeded */
219 ASN__CTFAIL(app_key, td, sptr,
220 "%s: constraint failed (%s:%d)",
221 td->name, __FILE__, __LINE__);
227 memb_ms80_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
228 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
232 ASN__CTFAIL(app_key, td, sptr,
233 "%s: value not given (%s:%d)",
234 td->name, __FILE__, __LINE__);
238 value = *(const long *)sptr;
240 if((value >= 0 && value <= 79)) {
241 /* Constraint check succeeded */
244 ASN__CTFAIL(app_key, td, sptr,
245 "%s: constraint failed (%s:%d)",
246 td->name, __FILE__, __LINE__);
252 memb_ms128_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
253 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
257 ASN__CTFAIL(app_key, td, sptr,
258 "%s: value not given (%s:%d)",
259 td->name, __FILE__, __LINE__);
263 value = *(const long *)sptr;
265 if((value >= 0 && value <= 127)) {
266 /* Constraint check succeeded */
269 ASN__CTFAIL(app_key, td, sptr,
270 "%s: constraint failed (%s:%d)",
271 td->name, __FILE__, __LINE__);
277 memb_ms160_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
278 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
282 ASN__CTFAIL(app_key, td, sptr,
283 "%s: value not given (%s:%d)",
284 td->name, __FILE__, __LINE__);
288 value = *(const long *)sptr;
290 if((value >= 0 && value <= 159)) {
291 /* Constraint check succeeded */
294 ASN__CTFAIL(app_key, td, sptr,
295 "%s: constraint failed (%s:%d)",
296 td->name, __FILE__, __LINE__);
302 memb_ms256_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
303 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
307 ASN__CTFAIL(app_key, td, sptr,
308 "%s: value not given (%s:%d)",
309 td->name, __FILE__, __LINE__);
313 value = *(const long *)sptr;
315 if((value >= 0 && value <= 255)) {
316 /* Constraint check succeeded */
319 ASN__CTFAIL(app_key, td, sptr,
320 "%s: constraint failed (%s:%d)",
321 td->name, __FILE__, __LINE__);
327 memb_ms320_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
328 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
332 ASN__CTFAIL(app_key, td, sptr,
333 "%s: value not given (%s:%d)",
334 td->name, __FILE__, __LINE__);
338 value = *(const long *)sptr;
340 if((value >= 0 && value <= 319)) {
341 /* Constraint check succeeded */
344 ASN__CTFAIL(app_key, td, sptr,
345 "%s: constraint failed (%s:%d)",
346 td->name, __FILE__, __LINE__);
352 memb_ms512_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
353 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
357 ASN__CTFAIL(app_key, td, sptr,
358 "%s: value not given (%s:%d)",
359 td->name, __FILE__, __LINE__);
363 value = *(const long *)sptr;
365 if((value >= 0 && value <= 511)) {
366 /* Constraint check succeeded */
369 ASN__CTFAIL(app_key, td, sptr,
370 "%s: constraint failed (%s:%d)",
371 td->name, __FILE__, __LINE__);
377 memb_ms640_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
378 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
382 ASN__CTFAIL(app_key, td, sptr,
383 "%s: value not given (%s:%d)",
384 td->name, __FILE__, __LINE__);
388 value = *(const long *)sptr;
390 if((value >= 0 && value <= 639)) {
391 /* Constraint check succeeded */
394 ASN__CTFAIL(app_key, td, sptr,
395 "%s: constraint failed (%s:%d)",
396 td->name, __FILE__, __LINE__);
402 memb_ms1024_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
403 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
407 ASN__CTFAIL(app_key, td, sptr,
408 "%s: value not given (%s:%d)",
409 td->name, __FILE__, __LINE__);
413 value = *(const long *)sptr;
415 if((value >= 0 && value <= 1023)) {
416 /* Constraint check succeeded */
419 ASN__CTFAIL(app_key, td, sptr,
420 "%s: constraint failed (%s:%d)",
421 td->name, __FILE__, __LINE__);
427 memb_ms1280_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
428 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
432 ASN__CTFAIL(app_key, td, sptr,
433 "%s: value not given (%s:%d)",
434 td->name, __FILE__, __LINE__);
438 value = *(const long *)sptr;
440 if((value >= 0 && value <= 1279)) {
441 /* Constraint check succeeded */
444 ASN__CTFAIL(app_key, td, sptr,
445 "%s: constraint failed (%s:%d)",
446 td->name, __FILE__, __LINE__);
452 memb_ms2048_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
453 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
457 ASN__CTFAIL(app_key, td, sptr,
458 "%s: value not given (%s:%d)",
459 td->name, __FILE__, __LINE__);
463 value = *(const long *)sptr;
465 if((value >= 0 && value <= 2047)) {
466 /* Constraint check succeeded */
469 ASN__CTFAIL(app_key, td, sptr,
470 "%s: constraint failed (%s:%d)",
471 td->name, __FILE__, __LINE__);
477 memb_ms2560_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
478 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
482 ASN__CTFAIL(app_key, td, sptr,
483 "%s: value not given (%s:%d)",
484 td->name, __FILE__, __LINE__);
488 value = *(const long *)sptr;
490 if((value >= 0 && value <= 2559)) {
491 /* Constraint check succeeded */
494 ASN__CTFAIL(app_key, td, sptr,
495 "%s: constraint failed (%s:%d)",
496 td->name, __FILE__, __LINE__);
502 memb_ms5120_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
503 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
507 ASN__CTFAIL(app_key, td, sptr,
508 "%s: value not given (%s:%d)",
509 td->name, __FILE__, __LINE__);
513 value = *(const long *)sptr;
515 if((value >= 0 && value <= 5119)) {
516 /* Constraint check succeeded */
519 ASN__CTFAIL(app_key, td, sptr,
520 "%s: constraint failed (%s:%d)",
521 td->name, __FILE__, __LINE__);
527 memb_ms10240_constraint_138(const asn_TYPE_descriptor_t *td, const void *sptr,
528 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
532 ASN__CTFAIL(app_key, td, sptr,
533 "%s: value not given (%s:%d)",
534 td->name, __FILE__, __LINE__);
538 value = *(const long *)sptr;
540 if((value >= 0 && value <= 10239)) {
541 /* Constraint check succeeded */
544 ASN__CTFAIL(app_key, td, sptr,
545 "%s: constraint failed (%s:%d)",
546 td->name, __FILE__, __LINE__);
552 * This type is implemented using NativeEnumerated,
553 * so here we adjust the DEF accordingly.
556 memb_drx_ShortCycleTimer_constraint_159(const asn_TYPE_descriptor_t *td, const void *sptr,
557 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
561 ASN__CTFAIL(app_key, td, sptr,
562 "%s: value not given (%s:%d)",
563 td->name, __FILE__, __LINE__);
567 value = *(const long *)sptr;
569 if((value >= 1 && value <= 16)) {
570 /* Constraint check succeeded */
573 ASN__CTFAIL(app_key, td, sptr,
574 "%s: constraint failed (%s:%d)",
575 td->name, __FILE__, __LINE__);
581 memb_drx_HARQ_RTT_TimerDL_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
582 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
586 ASN__CTFAIL(app_key, td, sptr,
587 "%s: value not given (%s:%d)",
588 td->name, __FILE__, __LINE__);
592 value = *(const long *)sptr;
594 if((value >= 0 && value <= 56)) {
595 /* Constraint check succeeded */
598 ASN__CTFAIL(app_key, td, sptr,
599 "%s: constraint failed (%s:%d)",
600 td->name, __FILE__, __LINE__);
606 memb_drx_HARQ_RTT_TimerUL_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
607 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
611 ASN__CTFAIL(app_key, td, sptr,
612 "%s: value not given (%s:%d)",
613 td->name, __FILE__, __LINE__);
617 value = *(const long *)sptr;
619 if((value >= 0 && value <= 56)) {
620 /* Constraint check succeeded */
623 ASN__CTFAIL(app_key, td, sptr,
624 "%s: constraint failed (%s:%d)",
625 td->name, __FILE__, __LINE__);
631 memb_drx_SlotOffset_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
632 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
636 ASN__CTFAIL(app_key, td, sptr,
637 "%s: value not given (%s:%d)",
638 td->name, __FILE__, __LINE__);
642 value = *(const long *)sptr;
644 if((value >= 0 && value <= 31)) {
645 /* Constraint check succeeded */
648 ASN__CTFAIL(app_key, td, sptr,
649 "%s: constraint failed (%s:%d)",
650 td->name, __FILE__, __LINE__);
655 static asn_oer_constraints_t asn_OER_type_milliSeconds_constr_4 CC_NOTUSED = {
658 static asn_per_constraints_t asn_PER_type_milliSeconds_constr_4 CC_NOTUSED = {
659 { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */,
660 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
661 0, 0 /* No PER value map */
663 static asn_oer_constraints_t asn_OER_memb_subMilliSeconds_constr_3 CC_NOTUSED = {
664 { 1, 1 } /* (1..31) */,
666 static asn_per_constraints_t asn_PER_memb_subMilliSeconds_constr_3 CC_NOTUSED = {
667 { APC_CONSTRAINED, 5, 5, 1, 31 } /* (1..31) */,
668 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
669 0, 0 /* No PER value map */
671 static asn_oer_constraints_t asn_OER_type_drx_onDurationTimer_constr_2 CC_NOTUSED = {
674 static asn_per_constraints_t asn_PER_type_drx_onDurationTimer_constr_2 CC_NOTUSED = {
675 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
676 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
677 0, 0 /* No PER value map */
679 static asn_oer_constraints_t asn_OER_type_drx_InactivityTimer_constr_37 CC_NOTUSED = {
682 static asn_per_constraints_t asn_PER_type_drx_InactivityTimer_constr_37 CC_NOTUSED = {
683 { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */,
684 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
685 0, 0 /* No PER value map */
687 static asn_oer_constraints_t asn_OER_type_drx_RetransmissionTimerDL_constr_72 CC_NOTUSED = {
690 static asn_per_constraints_t asn_PER_type_drx_RetransmissionTimerDL_constr_72 CC_NOTUSED = {
691 { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */,
692 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
693 0, 0 /* No PER value map */
695 static asn_oer_constraints_t asn_OER_type_drx_RetransmissionTimerUL_constr_105 CC_NOTUSED = {
698 static asn_per_constraints_t asn_PER_type_drx_RetransmissionTimerUL_constr_105 CC_NOTUSED = {
699 { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */,
700 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
701 0, 0 /* No PER value map */
703 static asn_oer_constraints_t asn_OER_memb_ms10_constr_139 CC_NOTUSED = {
704 { 1, 1 } /* (0..9) */,
706 static asn_per_constraints_t asn_PER_memb_ms10_constr_139 CC_NOTUSED = {
707 { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */,
708 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
709 0, 0 /* No PER value map */
711 static asn_oer_constraints_t asn_OER_memb_ms20_constr_140 CC_NOTUSED = {
712 { 1, 1 } /* (0..19) */,
714 static asn_per_constraints_t asn_PER_memb_ms20_constr_140 CC_NOTUSED = {
715 { APC_CONSTRAINED, 5, 5, 0, 19 } /* (0..19) */,
716 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
717 0, 0 /* No PER value map */
719 static asn_oer_constraints_t asn_OER_memb_ms32_constr_141 CC_NOTUSED = {
720 { 1, 1 } /* (0..31) */,
722 static asn_per_constraints_t asn_PER_memb_ms32_constr_141 CC_NOTUSED = {
723 { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */,
724 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
725 0, 0 /* No PER value map */
727 static asn_oer_constraints_t asn_OER_memb_ms40_constr_142 CC_NOTUSED = {
728 { 1, 1 } /* (0..39) */,
730 static asn_per_constraints_t asn_PER_memb_ms40_constr_142 CC_NOTUSED = {
731 { APC_CONSTRAINED, 6, 6, 0, 39 } /* (0..39) */,
732 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
733 0, 0 /* No PER value map */
735 static asn_oer_constraints_t asn_OER_memb_ms60_constr_143 CC_NOTUSED = {
736 { 1, 1 } /* (0..59) */,
738 static asn_per_constraints_t asn_PER_memb_ms60_constr_143 CC_NOTUSED = {
739 { APC_CONSTRAINED, 6, 6, 0, 59 } /* (0..59) */,
740 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
741 0, 0 /* No PER value map */
743 static asn_oer_constraints_t asn_OER_memb_ms64_constr_144 CC_NOTUSED = {
744 { 1, 1 } /* (0..63) */,
746 static asn_per_constraints_t asn_PER_memb_ms64_constr_144 CC_NOTUSED = {
747 { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */,
748 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
749 0, 0 /* No PER value map */
751 static asn_oer_constraints_t asn_OER_memb_ms70_constr_145 CC_NOTUSED = {
752 { 1, 1 } /* (0..69) */,
754 static asn_per_constraints_t asn_PER_memb_ms70_constr_145 CC_NOTUSED = {
755 { APC_CONSTRAINED, 7, 7, 0, 69 } /* (0..69) */,
756 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
757 0, 0 /* No PER value map */
759 static asn_oer_constraints_t asn_OER_memb_ms80_constr_146 CC_NOTUSED = {
760 { 1, 1 } /* (0..79) */,
762 static asn_per_constraints_t asn_PER_memb_ms80_constr_146 CC_NOTUSED = {
763 { APC_CONSTRAINED, 7, 7, 0, 79 } /* (0..79) */,
764 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
765 0, 0 /* No PER value map */
767 static asn_oer_constraints_t asn_OER_memb_ms128_constr_147 CC_NOTUSED = {
768 { 1, 1 } /* (0..127) */,
770 static asn_per_constraints_t asn_PER_memb_ms128_constr_147 CC_NOTUSED = {
771 { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */,
772 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
773 0, 0 /* No PER value map */
775 static asn_oer_constraints_t asn_OER_memb_ms160_constr_148 CC_NOTUSED = {
776 { 1, 1 } /* (0..159) */,
778 static asn_per_constraints_t asn_PER_memb_ms160_constr_148 CC_NOTUSED = {
779 { APC_CONSTRAINED, 8, 8, 0, 159 } /* (0..159) */,
780 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
781 0, 0 /* No PER value map */
783 static asn_oer_constraints_t asn_OER_memb_ms256_constr_149 CC_NOTUSED = {
784 { 1, 1 } /* (0..255) */,
786 static asn_per_constraints_t asn_PER_memb_ms256_constr_149 CC_NOTUSED = {
787 { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */,
788 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
789 0, 0 /* No PER value map */
791 static asn_oer_constraints_t asn_OER_memb_ms320_constr_150 CC_NOTUSED = {
792 { 2, 1 } /* (0..319) */,
794 static asn_per_constraints_t asn_PER_memb_ms320_constr_150 CC_NOTUSED = {
795 { APC_CONSTRAINED, 9, 9, 0, 319 } /* (0..319) */,
796 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
797 0, 0 /* No PER value map */
799 static asn_oer_constraints_t asn_OER_memb_ms512_constr_151 CC_NOTUSED = {
800 { 2, 1 } /* (0..511) */,
802 static asn_per_constraints_t asn_PER_memb_ms512_constr_151 CC_NOTUSED = {
803 { APC_CONSTRAINED, 9, 9, 0, 511 } /* (0..511) */,
804 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
805 0, 0 /* No PER value map */
807 static asn_oer_constraints_t asn_OER_memb_ms640_constr_152 CC_NOTUSED = {
808 { 2, 1 } /* (0..639) */,
810 static asn_per_constraints_t asn_PER_memb_ms640_constr_152 CC_NOTUSED = {
811 { APC_CONSTRAINED, 10, 10, 0, 639 } /* (0..639) */,
812 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
813 0, 0 /* No PER value map */
815 static asn_oer_constraints_t asn_OER_memb_ms1024_constr_153 CC_NOTUSED = {
816 { 2, 1 } /* (0..1023) */,
818 static asn_per_constraints_t asn_PER_memb_ms1024_constr_153 CC_NOTUSED = {
819 { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */,
820 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
821 0, 0 /* No PER value map */
823 static asn_oer_constraints_t asn_OER_memb_ms1280_constr_154 CC_NOTUSED = {
824 { 2, 1 } /* (0..1279) */,
826 static asn_per_constraints_t asn_PER_memb_ms1280_constr_154 CC_NOTUSED = {
827 { APC_CONSTRAINED, 11, 11, 0, 1279 } /* (0..1279) */,
828 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
829 0, 0 /* No PER value map */
831 static asn_oer_constraints_t asn_OER_memb_ms2048_constr_155 CC_NOTUSED = {
832 { 2, 1 } /* (0..2047) */,
834 static asn_per_constraints_t asn_PER_memb_ms2048_constr_155 CC_NOTUSED = {
835 { APC_CONSTRAINED, 11, 11, 0, 2047 } /* (0..2047) */,
836 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
837 0, 0 /* No PER value map */
839 static asn_oer_constraints_t asn_OER_memb_ms2560_constr_156 CC_NOTUSED = {
840 { 2, 1 } /* (0..2559) */,
842 static asn_per_constraints_t asn_PER_memb_ms2560_constr_156 CC_NOTUSED = {
843 { APC_CONSTRAINED, 12, 12, 0, 2559 } /* (0..2559) */,
844 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
845 0, 0 /* No PER value map */
847 static asn_oer_constraints_t asn_OER_memb_ms5120_constr_157 CC_NOTUSED = {
848 { 2, 1 } /* (0..5119) */,
850 static asn_per_constraints_t asn_PER_memb_ms5120_constr_157 CC_NOTUSED = {
851 { APC_CONSTRAINED, 13, 13, 0, 5119 } /* (0..5119) */,
852 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
853 0, 0 /* No PER value map */
855 static asn_oer_constraints_t asn_OER_memb_ms10240_constr_158 CC_NOTUSED = {
856 { 2, 1 } /* (0..10239) */,
858 static asn_per_constraints_t asn_PER_memb_ms10240_constr_158 CC_NOTUSED = {
859 { APC_CONSTRAINED, 14, 14, 0, 10239 } /* (0..10239) */,
860 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
861 0, 0 /* No PER value map */
863 static asn_oer_constraints_t asn_OER_type_drx_LongCycleStartOffset_constr_138 CC_NOTUSED = {
866 static asn_per_constraints_t asn_PER_type_drx_LongCycleStartOffset_constr_138 CC_NOTUSED = {
867 { APC_CONSTRAINED, 5, 5, 0, 19 } /* (0..19) */,
868 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
869 0, 0 /* No PER value map */
871 static asn_oer_constraints_t asn_OER_type_drx_ShortCycle_constr_160 CC_NOTUSED = {
874 static asn_per_constraints_t asn_PER_type_drx_ShortCycle_constr_160 CC_NOTUSED = {
875 { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */,
876 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
877 0, 0 /* No PER value map */
879 static asn_oer_constraints_t asn_OER_memb_drx_ShortCycleTimer_constr_193 CC_NOTUSED = {
880 { 1, 1 } /* (1..16) */,
882 static asn_per_constraints_t asn_PER_memb_drx_ShortCycleTimer_constr_193 CC_NOTUSED = {
883 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (1..16) */,
884 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
885 0, 0 /* No PER value map */
887 static asn_oer_constraints_t asn_OER_memb_drx_HARQ_RTT_TimerDL_constr_70 CC_NOTUSED = {
888 { 1, 1 } /* (0..56) */,
890 static asn_per_constraints_t asn_PER_memb_drx_HARQ_RTT_TimerDL_constr_70 CC_NOTUSED = {
891 { APC_CONSTRAINED, 6, 6, 0, 56 } /* (0..56) */,
892 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
893 0, 0 /* No PER value map */
895 static asn_oer_constraints_t asn_OER_memb_drx_HARQ_RTT_TimerUL_constr_71 CC_NOTUSED = {
896 { 1, 1 } /* (0..56) */,
898 static asn_per_constraints_t asn_PER_memb_drx_HARQ_RTT_TimerUL_constr_71 CC_NOTUSED = {
899 { APC_CONSTRAINED, 6, 6, 0, 56 } /* (0..56) */,
900 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
901 0, 0 /* No PER value map */
903 static asn_oer_constraints_t asn_OER_memb_drx_SlotOffset_constr_194 CC_NOTUSED = {
904 { 1, 1 } /* (0..31) */,
906 static asn_per_constraints_t asn_PER_memb_drx_SlotOffset_constr_194 CC_NOTUSED = {
907 { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */,
908 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
909 0, 0 /* No PER value map */
911 static const asn_INTEGER_enum_map_t asn_MAP_milliSeconds_value2enum_4[] = {
945 static const unsigned int asn_MAP_milliSeconds_enum2value_4[] = {
979 static const asn_INTEGER_specifics_t asn_SPC_milliSeconds_specs_4 = {
980 asn_MAP_milliSeconds_value2enum_4, /* "tag" => N; sorted by tag */
981 asn_MAP_milliSeconds_enum2value_4, /* N => "tag"; sorted by N */
982 32, /* Number of elements in the maps */
983 0, /* Enumeration is not extensible */
984 1, /* Strict enumeration */
985 0, /* Native long size */
988 static const ber_tlv_tag_t asn_DEF_milliSeconds_tags_4[] = {
989 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
990 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
992 static /* Use -fall-defs-global to expose */
993 asn_TYPE_descriptor_t asn_DEF_milliSeconds_4 = {
996 &asn_OP_NativeEnumerated,
997 asn_DEF_milliSeconds_tags_4,
998 sizeof(asn_DEF_milliSeconds_tags_4)
999 /sizeof(asn_DEF_milliSeconds_tags_4[0]) - 1, /* 1 */
1000 asn_DEF_milliSeconds_tags_4, /* Same as above */
1001 sizeof(asn_DEF_milliSeconds_tags_4)
1002 /sizeof(asn_DEF_milliSeconds_tags_4[0]), /* 2 */
1003 { &asn_OER_type_milliSeconds_constr_4, &asn_PER_type_milliSeconds_constr_4, NativeEnumerated_constraint },
1004 0, 0, /* Defined elsewhere */
1005 &asn_SPC_milliSeconds_specs_4 /* Additional specs */
1008 static asn_TYPE_member_t asn_MBR_drx_onDurationTimer_2[] = {
1009 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_onDurationTimer, choice.subMilliSeconds),
1010 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1011 -1, /* IMPLICIT tag at current level */
1012 &asn_DEF_NativeInteger,
1014 { &asn_OER_memb_subMilliSeconds_constr_3, &asn_PER_memb_subMilliSeconds_constr_3, memb_subMilliSeconds_constraint_2 },
1015 0, 0, /* No default value */
1018 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_onDurationTimer, choice.milliSeconds),
1019 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1020 -1, /* IMPLICIT tag at current level */
1021 &asn_DEF_milliSeconds_4,
1024 0, 0, /* No default value */
1028 static const asn_TYPE_tag2member_t asn_MAP_drx_onDurationTimer_tag2el_2[] = {
1029 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* subMilliSeconds */
1030 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* milliSeconds */
1032 static asn_CHOICE_specifics_t asn_SPC_drx_onDurationTimer_specs_2 = {
1033 sizeof(struct DRX_Config__drx_onDurationTimer),
1034 offsetof(struct DRX_Config__drx_onDurationTimer, _asn_ctx),
1035 offsetof(struct DRX_Config__drx_onDurationTimer, present),
1036 sizeof(((struct DRX_Config__drx_onDurationTimer *)0)->present),
1037 asn_MAP_drx_onDurationTimer_tag2el_2,
1038 2, /* Count of tags in the map */
1040 -1 /* Extensions start */
1042 static /* Use -fall-defs-global to expose */
1043 asn_TYPE_descriptor_t asn_DEF_drx_onDurationTimer_2 = {
1044 "drx-onDurationTimer",
1045 "drx-onDurationTimer",
1047 0, /* No effective tags (pointer) */
1048 0, /* No effective tags (count) */
1049 0, /* No tags (pointer) */
1050 0, /* No tags (count) */
1051 { &asn_OER_type_drx_onDurationTimer_constr_2, &asn_PER_type_drx_onDurationTimer_constr_2, CHOICE_constraint },
1052 asn_MBR_drx_onDurationTimer_2,
1053 2, /* Elements count */
1054 &asn_SPC_drx_onDurationTimer_specs_2 /* Additional specs */
1057 static const asn_INTEGER_enum_map_t asn_MAP_drx_InactivityTimer_value2enum_37[] = {
1078 { 20, 6, "ms1280" },
1079 { 21, 6, "ms1920" },
1080 { 22, 6, "ms2560" },
1081 { 23, 6, "spare9" },
1082 { 24, 6, "spare8" },
1083 { 25, 6, "spare7" },
1084 { 26, 6, "spare6" },
1085 { 27, 6, "spare5" },
1086 { 28, 6, "spare4" },
1087 { 29, 6, "spare3" },
1088 { 30, 6, "spare2" },
1091 static const unsigned int asn_MAP_drx_InactivityTimer_enum2value_37[] = {
1096 20, /* ms1280(20) */
1097 21, /* ms1920(21) */
1101 22, /* ms2560(22) */
1115 31, /* spare1(31) */
1116 30, /* spare2(30) */
1117 29, /* spare3(29) */
1118 28, /* spare4(28) */
1119 27, /* spare5(27) */
1120 26, /* spare6(26) */
1121 25, /* spare7(25) */
1122 24, /* spare8(24) */
1125 static const asn_INTEGER_specifics_t asn_SPC_drx_InactivityTimer_specs_37 = {
1126 asn_MAP_drx_InactivityTimer_value2enum_37, /* "tag" => N; sorted by tag */
1127 asn_MAP_drx_InactivityTimer_enum2value_37, /* N => "tag"; sorted by N */
1128 32, /* Number of elements in the maps */
1129 0, /* Enumeration is not extensible */
1130 1, /* Strict enumeration */
1131 0, /* Native long size */
1134 static const ber_tlv_tag_t asn_DEF_drx_InactivityTimer_tags_37[] = {
1135 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1136 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1138 static /* Use -fall-defs-global to expose */
1139 asn_TYPE_descriptor_t asn_DEF_drx_InactivityTimer_37 = {
1140 "drx-InactivityTimer",
1141 "drx-InactivityTimer",
1142 &asn_OP_NativeEnumerated,
1143 asn_DEF_drx_InactivityTimer_tags_37,
1144 sizeof(asn_DEF_drx_InactivityTimer_tags_37)
1145 /sizeof(asn_DEF_drx_InactivityTimer_tags_37[0]) - 1, /* 1 */
1146 asn_DEF_drx_InactivityTimer_tags_37, /* Same as above */
1147 sizeof(asn_DEF_drx_InactivityTimer_tags_37)
1148 /sizeof(asn_DEF_drx_InactivityTimer_tags_37[0]), /* 2 */
1149 { &asn_OER_type_drx_InactivityTimer_constr_37, &asn_PER_type_drx_InactivityTimer_constr_37, NativeEnumerated_constraint },
1150 0, 0, /* Defined elsewhere */
1151 &asn_SPC_drx_InactivityTimer_specs_37 /* Additional specs */
1154 static const asn_INTEGER_enum_map_t asn_MAP_drx_RetransmissionTimerDL_value2enum_72[] = {
1172 { 17, 7, "spare15" },
1173 { 18, 7, "spare14" },
1174 { 19, 7, "spare13" },
1175 { 20, 7, "spare12" },
1176 { 21, 7, "spare11" },
1177 { 22, 7, "spare10" },
1178 { 23, 6, "spare9" },
1179 { 24, 6, "spare8" },
1180 { 25, 6, "spare7" },
1181 { 26, 6, "spare6" },
1182 { 27, 6, "spare5" },
1183 { 28, 6, "spare4" },
1184 { 29, 6, "spare3" },
1185 { 30, 6, "spare2" },
1188 static const unsigned int asn_MAP_drx_RetransmissionTimerDL_enum2value_72[] = {
1206 31, /* spare1(31) */
1207 22, /* spare10(22) */
1208 21, /* spare11(21) */
1209 20, /* spare12(20) */
1210 19, /* spare13(19) */
1211 18, /* spare14(18) */
1212 17, /* spare15(17) */
1213 30, /* spare2(30) */
1214 29, /* spare3(29) */
1215 28, /* spare4(28) */
1216 27, /* spare5(27) */
1217 26, /* spare6(26) */
1218 25, /* spare7(25) */
1219 24, /* spare8(24) */
1222 static const asn_INTEGER_specifics_t asn_SPC_drx_RetransmissionTimerDL_specs_72 = {
1223 asn_MAP_drx_RetransmissionTimerDL_value2enum_72, /* "tag" => N; sorted by tag */
1224 asn_MAP_drx_RetransmissionTimerDL_enum2value_72, /* N => "tag"; sorted by N */
1225 32, /* Number of elements in the maps */
1226 0, /* Enumeration is not extensible */
1227 1, /* Strict enumeration */
1228 0, /* Native long size */
1231 static const ber_tlv_tag_t asn_DEF_drx_RetransmissionTimerDL_tags_72[] = {
1232 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
1233 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1235 static /* Use -fall-defs-global to expose */
1236 asn_TYPE_descriptor_t asn_DEF_drx_RetransmissionTimerDL_72 = {
1237 "drx-RetransmissionTimerDL",
1238 "drx-RetransmissionTimerDL",
1239 &asn_OP_NativeEnumerated,
1240 asn_DEF_drx_RetransmissionTimerDL_tags_72,
1241 sizeof(asn_DEF_drx_RetransmissionTimerDL_tags_72)
1242 /sizeof(asn_DEF_drx_RetransmissionTimerDL_tags_72[0]) - 1, /* 1 */
1243 asn_DEF_drx_RetransmissionTimerDL_tags_72, /* Same as above */
1244 sizeof(asn_DEF_drx_RetransmissionTimerDL_tags_72)
1245 /sizeof(asn_DEF_drx_RetransmissionTimerDL_tags_72[0]), /* 2 */
1246 { &asn_OER_type_drx_RetransmissionTimerDL_constr_72, &asn_PER_type_drx_RetransmissionTimerDL_constr_72, NativeEnumerated_constraint },
1247 0, 0, /* Defined elsewhere */
1248 &asn_SPC_drx_RetransmissionTimerDL_specs_72 /* Additional specs */
1251 static const asn_INTEGER_enum_map_t asn_MAP_drx_RetransmissionTimerUL_value2enum_105[] = {
1269 { 17, 7, "spare15" },
1270 { 18, 7, "spare14" },
1271 { 19, 7, "spare13" },
1272 { 20, 7, "spare12" },
1273 { 21, 7, "spare11" },
1274 { 22, 7, "spare10" },
1275 { 23, 6, "spare9" },
1276 { 24, 6, "spare8" },
1277 { 25, 6, "spare7" },
1278 { 26, 6, "spare6" },
1279 { 27, 6, "spare5" },
1280 { 28, 6, "spare4" },
1281 { 29, 6, "spare3" },
1282 { 30, 6, "spare2" },
1285 static const unsigned int asn_MAP_drx_RetransmissionTimerUL_enum2value_105[] = {
1303 31, /* spare1(31) */
1304 22, /* spare10(22) */
1305 21, /* spare11(21) */
1306 20, /* spare12(20) */
1307 19, /* spare13(19) */
1308 18, /* spare14(18) */
1309 17, /* spare15(17) */
1310 30, /* spare2(30) */
1311 29, /* spare3(29) */
1312 28, /* spare4(28) */
1313 27, /* spare5(27) */
1314 26, /* spare6(26) */
1315 25, /* spare7(25) */
1316 24, /* spare8(24) */
1319 static const asn_INTEGER_specifics_t asn_SPC_drx_RetransmissionTimerUL_specs_105 = {
1320 asn_MAP_drx_RetransmissionTimerUL_value2enum_105, /* "tag" => N; sorted by tag */
1321 asn_MAP_drx_RetransmissionTimerUL_enum2value_105, /* N => "tag"; sorted by N */
1322 32, /* Number of elements in the maps */
1323 0, /* Enumeration is not extensible */
1324 1, /* Strict enumeration */
1325 0, /* Native long size */
1328 static const ber_tlv_tag_t asn_DEF_drx_RetransmissionTimerUL_tags_105[] = {
1329 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
1330 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1332 static /* Use -fall-defs-global to expose */
1333 asn_TYPE_descriptor_t asn_DEF_drx_RetransmissionTimerUL_105 = {
1334 "drx-RetransmissionTimerUL",
1335 "drx-RetransmissionTimerUL",
1336 &asn_OP_NativeEnumerated,
1337 asn_DEF_drx_RetransmissionTimerUL_tags_105,
1338 sizeof(asn_DEF_drx_RetransmissionTimerUL_tags_105)
1339 /sizeof(asn_DEF_drx_RetransmissionTimerUL_tags_105[0]) - 1, /* 1 */
1340 asn_DEF_drx_RetransmissionTimerUL_tags_105, /* Same as above */
1341 sizeof(asn_DEF_drx_RetransmissionTimerUL_tags_105)
1342 /sizeof(asn_DEF_drx_RetransmissionTimerUL_tags_105[0]), /* 2 */
1343 { &asn_OER_type_drx_RetransmissionTimerUL_constr_105, &asn_PER_type_drx_RetransmissionTimerUL_constr_105, NativeEnumerated_constraint },
1344 0, 0, /* Defined elsewhere */
1345 &asn_SPC_drx_RetransmissionTimerUL_specs_105 /* Additional specs */
1348 static asn_TYPE_member_t asn_MBR_drx_LongCycleStartOffset_138[] = {
1349 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms10),
1350 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1351 -1, /* IMPLICIT tag at current level */
1352 &asn_DEF_NativeInteger,
1354 { &asn_OER_memb_ms10_constr_139, &asn_PER_memb_ms10_constr_139, memb_ms10_constraint_138 },
1355 0, 0, /* No default value */
1358 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms20),
1359 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1360 -1, /* IMPLICIT tag at current level */
1361 &asn_DEF_NativeInteger,
1363 { &asn_OER_memb_ms20_constr_140, &asn_PER_memb_ms20_constr_140, memb_ms20_constraint_138 },
1364 0, 0, /* No default value */
1367 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms32),
1368 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1369 -1, /* IMPLICIT tag at current level */
1370 &asn_DEF_NativeInteger,
1372 { &asn_OER_memb_ms32_constr_141, &asn_PER_memb_ms32_constr_141, memb_ms32_constraint_138 },
1373 0, 0, /* No default value */
1376 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms40),
1377 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
1378 -1, /* IMPLICIT tag at current level */
1379 &asn_DEF_NativeInteger,
1381 { &asn_OER_memb_ms40_constr_142, &asn_PER_memb_ms40_constr_142, memb_ms40_constraint_138 },
1382 0, 0, /* No default value */
1385 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms60),
1386 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
1387 -1, /* IMPLICIT tag at current level */
1388 &asn_DEF_NativeInteger,
1390 { &asn_OER_memb_ms60_constr_143, &asn_PER_memb_ms60_constr_143, memb_ms60_constraint_138 },
1391 0, 0, /* No default value */
1394 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms64),
1395 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
1396 -1, /* IMPLICIT tag at current level */
1397 &asn_DEF_NativeInteger,
1399 { &asn_OER_memb_ms64_constr_144, &asn_PER_memb_ms64_constr_144, memb_ms64_constraint_138 },
1400 0, 0, /* No default value */
1403 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms70),
1404 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
1405 -1, /* IMPLICIT tag at current level */
1406 &asn_DEF_NativeInteger,
1408 { &asn_OER_memb_ms70_constr_145, &asn_PER_memb_ms70_constr_145, memb_ms70_constraint_138 },
1409 0, 0, /* No default value */
1412 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms80),
1413 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
1414 -1, /* IMPLICIT tag at current level */
1415 &asn_DEF_NativeInteger,
1417 { &asn_OER_memb_ms80_constr_146, &asn_PER_memb_ms80_constr_146, memb_ms80_constraint_138 },
1418 0, 0, /* No default value */
1421 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms128),
1422 (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
1423 -1, /* IMPLICIT tag at current level */
1424 &asn_DEF_NativeInteger,
1426 { &asn_OER_memb_ms128_constr_147, &asn_PER_memb_ms128_constr_147, memb_ms128_constraint_138 },
1427 0, 0, /* No default value */
1430 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms160),
1431 (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
1432 -1, /* IMPLICIT tag at current level */
1433 &asn_DEF_NativeInteger,
1435 { &asn_OER_memb_ms160_constr_148, &asn_PER_memb_ms160_constr_148, memb_ms160_constraint_138 },
1436 0, 0, /* No default value */
1439 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms256),
1440 (ASN_TAG_CLASS_CONTEXT | (10 << 2)),
1441 -1, /* IMPLICIT tag at current level */
1442 &asn_DEF_NativeInteger,
1444 { &asn_OER_memb_ms256_constr_149, &asn_PER_memb_ms256_constr_149, memb_ms256_constraint_138 },
1445 0, 0, /* No default value */
1448 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms320),
1449 (ASN_TAG_CLASS_CONTEXT | (11 << 2)),
1450 -1, /* IMPLICIT tag at current level */
1451 &asn_DEF_NativeInteger,
1453 { &asn_OER_memb_ms320_constr_150, &asn_PER_memb_ms320_constr_150, memb_ms320_constraint_138 },
1454 0, 0, /* No default value */
1457 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms512),
1458 (ASN_TAG_CLASS_CONTEXT | (12 << 2)),
1459 -1, /* IMPLICIT tag at current level */
1460 &asn_DEF_NativeInteger,
1462 { &asn_OER_memb_ms512_constr_151, &asn_PER_memb_ms512_constr_151, memb_ms512_constraint_138 },
1463 0, 0, /* No default value */
1466 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms640),
1467 (ASN_TAG_CLASS_CONTEXT | (13 << 2)),
1468 -1, /* IMPLICIT tag at current level */
1469 &asn_DEF_NativeInteger,
1471 { &asn_OER_memb_ms640_constr_152, &asn_PER_memb_ms640_constr_152, memb_ms640_constraint_138 },
1472 0, 0, /* No default value */
1475 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms1024),
1476 (ASN_TAG_CLASS_CONTEXT | (14 << 2)),
1477 -1, /* IMPLICIT tag at current level */
1478 &asn_DEF_NativeInteger,
1480 { &asn_OER_memb_ms1024_constr_153, &asn_PER_memb_ms1024_constr_153, memb_ms1024_constraint_138 },
1481 0, 0, /* No default value */
1484 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms1280),
1485 (ASN_TAG_CLASS_CONTEXT | (15 << 2)),
1486 -1, /* IMPLICIT tag at current level */
1487 &asn_DEF_NativeInteger,
1489 { &asn_OER_memb_ms1280_constr_154, &asn_PER_memb_ms1280_constr_154, memb_ms1280_constraint_138 },
1490 0, 0, /* No default value */
1493 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms2048),
1494 (ASN_TAG_CLASS_CONTEXT | (16 << 2)),
1495 -1, /* IMPLICIT tag at current level */
1496 &asn_DEF_NativeInteger,
1498 { &asn_OER_memb_ms2048_constr_155, &asn_PER_memb_ms2048_constr_155, memb_ms2048_constraint_138 },
1499 0, 0, /* No default value */
1502 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms2560),
1503 (ASN_TAG_CLASS_CONTEXT | (17 << 2)),
1504 -1, /* IMPLICIT tag at current level */
1505 &asn_DEF_NativeInteger,
1507 { &asn_OER_memb_ms2560_constr_156, &asn_PER_memb_ms2560_constr_156, memb_ms2560_constraint_138 },
1508 0, 0, /* No default value */
1511 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms5120),
1512 (ASN_TAG_CLASS_CONTEXT | (18 << 2)),
1513 -1, /* IMPLICIT tag at current level */
1514 &asn_DEF_NativeInteger,
1516 { &asn_OER_memb_ms5120_constr_157, &asn_PER_memb_ms5120_constr_157, memb_ms5120_constraint_138 },
1517 0, 0, /* No default value */
1520 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__drx_LongCycleStartOffset, choice.ms10240),
1521 (ASN_TAG_CLASS_CONTEXT | (19 << 2)),
1522 -1, /* IMPLICIT tag at current level */
1523 &asn_DEF_NativeInteger,
1525 { &asn_OER_memb_ms10240_constr_158, &asn_PER_memb_ms10240_constr_158, memb_ms10240_constraint_138 },
1526 0, 0, /* No default value */
1530 static const asn_TYPE_tag2member_t asn_MAP_drx_LongCycleStartOffset_tag2el_138[] = {
1531 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ms10 */
1532 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ms20 */
1533 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ms32 */
1534 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ms40 */
1535 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* ms60 */
1536 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* ms64 */
1537 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* ms70 */
1538 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* ms80 */
1539 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* ms128 */
1540 { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* ms160 */
1541 { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* ms256 */
1542 { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* ms320 */
1543 { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* ms512 */
1544 { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* ms640 */
1545 { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* ms1024 */
1546 { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* ms1280 */
1547 { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* ms2048 */
1548 { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* ms2560 */
1549 { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* ms5120 */
1550 { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 } /* ms10240 */
1552 static asn_CHOICE_specifics_t asn_SPC_drx_LongCycleStartOffset_specs_138 = {
1553 sizeof(struct DRX_Config__drx_LongCycleStartOffset),
1554 offsetof(struct DRX_Config__drx_LongCycleStartOffset, _asn_ctx),
1555 offsetof(struct DRX_Config__drx_LongCycleStartOffset, present),
1556 sizeof(((struct DRX_Config__drx_LongCycleStartOffset *)0)->present),
1557 asn_MAP_drx_LongCycleStartOffset_tag2el_138,
1558 20, /* Count of tags in the map */
1560 -1 /* Extensions start */
1562 static /* Use -fall-defs-global to expose */
1563 asn_TYPE_descriptor_t asn_DEF_drx_LongCycleStartOffset_138 = {
1564 "drx-LongCycleStartOffset",
1565 "drx-LongCycleStartOffset",
1567 0, /* No effective tags (pointer) */
1568 0, /* No effective tags (count) */
1569 0, /* No tags (pointer) */
1570 0, /* No tags (count) */
1571 { &asn_OER_type_drx_LongCycleStartOffset_constr_138, &asn_PER_type_drx_LongCycleStartOffset_constr_138, CHOICE_constraint },
1572 asn_MBR_drx_LongCycleStartOffset_138,
1573 20, /* Elements count */
1574 &asn_SPC_drx_LongCycleStartOffset_specs_138 /* Additional specs */
1577 static const asn_INTEGER_enum_map_t asn_MAP_drx_ShortCycle_value2enum_160[] = {
1601 { 23, 6, "spare9" },
1602 { 24, 6, "spare8" },
1603 { 25, 6, "spare7" },
1604 { 26, 6, "spare6" },
1605 { 27, 6, "spare5" },
1606 { 28, 6, "spare4" },
1607 { 29, 6, "spare3" },
1608 { 30, 6, "spare2" },
1611 static const unsigned int asn_MAP_drx_ShortCycle_enum2value_160[] = {
1635 31, /* spare1(31) */
1636 30, /* spare2(30) */
1637 29, /* spare3(29) */
1638 28, /* spare4(28) */
1639 27, /* spare5(27) */
1640 26, /* spare6(26) */
1641 25, /* spare7(25) */
1642 24, /* spare8(24) */
1645 static const asn_INTEGER_specifics_t asn_SPC_drx_ShortCycle_specs_160 = {
1646 asn_MAP_drx_ShortCycle_value2enum_160, /* "tag" => N; sorted by tag */
1647 asn_MAP_drx_ShortCycle_enum2value_160, /* N => "tag"; sorted by N */
1648 32, /* Number of elements in the maps */
1649 0, /* Enumeration is not extensible */
1650 1, /* Strict enumeration */
1651 0, /* Native long size */
1654 static const ber_tlv_tag_t asn_DEF_drx_ShortCycle_tags_160[] = {
1655 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1656 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1658 static /* Use -fall-defs-global to expose */
1659 asn_TYPE_descriptor_t asn_DEF_drx_ShortCycle_160 = {
1662 &asn_OP_NativeEnumerated,
1663 asn_DEF_drx_ShortCycle_tags_160,
1664 sizeof(asn_DEF_drx_ShortCycle_tags_160)
1665 /sizeof(asn_DEF_drx_ShortCycle_tags_160[0]) - 1, /* 1 */
1666 asn_DEF_drx_ShortCycle_tags_160, /* Same as above */
1667 sizeof(asn_DEF_drx_ShortCycle_tags_160)
1668 /sizeof(asn_DEF_drx_ShortCycle_tags_160[0]), /* 2 */
1669 { &asn_OER_type_drx_ShortCycle_constr_160, &asn_PER_type_drx_ShortCycle_constr_160, NativeEnumerated_constraint },
1670 0, 0, /* Defined elsewhere */
1671 &asn_SPC_drx_ShortCycle_specs_160 /* Additional specs */
1674 static asn_TYPE_member_t asn_MBR_shortDRX_159[] = {
1675 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__shortDRX, drx_ShortCycle),
1676 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1677 -1, /* IMPLICIT tag at current level */
1678 &asn_DEF_drx_ShortCycle_160,
1681 0, 0, /* No default value */
1684 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config__shortDRX, drx_ShortCycleTimer),
1685 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1686 -1, /* IMPLICIT tag at current level */
1687 &asn_DEF_NativeInteger,
1689 { &asn_OER_memb_drx_ShortCycleTimer_constr_193, &asn_PER_memb_drx_ShortCycleTimer_constr_193, memb_drx_ShortCycleTimer_constraint_159 },
1690 0, 0, /* No default value */
1691 "drx-ShortCycleTimer"
1694 static const ber_tlv_tag_t asn_DEF_shortDRX_tags_159[] = {
1695 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
1696 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1698 static const asn_TYPE_tag2member_t asn_MAP_shortDRX_tag2el_159[] = {
1699 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* drx-ShortCycle */
1700 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* drx-ShortCycleTimer */
1702 static asn_SEQUENCE_specifics_t asn_SPC_shortDRX_specs_159 = {
1703 sizeof(struct DRX_Config__shortDRX),
1704 offsetof(struct DRX_Config__shortDRX, _asn_ctx),
1705 asn_MAP_shortDRX_tag2el_159,
1706 2, /* Count of tags in the map */
1707 0, 0, 0, /* Optional elements (not needed) */
1708 -1, /* First extension addition */
1710 static /* Use -fall-defs-global to expose */
1711 asn_TYPE_descriptor_t asn_DEF_shortDRX_159 = {
1715 asn_DEF_shortDRX_tags_159,
1716 sizeof(asn_DEF_shortDRX_tags_159)
1717 /sizeof(asn_DEF_shortDRX_tags_159[0]) - 1, /* 1 */
1718 asn_DEF_shortDRX_tags_159, /* Same as above */
1719 sizeof(asn_DEF_shortDRX_tags_159)
1720 /sizeof(asn_DEF_shortDRX_tags_159[0]), /* 2 */
1721 { 0, 0, SEQUENCE_constraint },
1722 asn_MBR_shortDRX_159,
1723 2, /* Elements count */
1724 &asn_SPC_shortDRX_specs_159 /* Additional specs */
1727 asn_TYPE_member_t asn_MBR_DRX_Config_1[] = {
1728 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config, drx_onDurationTimer),
1729 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1730 +1, /* EXPLICIT tag at current level */
1731 &asn_DEF_drx_onDurationTimer_2,
1734 0, 0, /* No default value */
1735 "drx-onDurationTimer"
1737 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config, drx_InactivityTimer),
1738 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1739 -1, /* IMPLICIT tag at current level */
1740 &asn_DEF_drx_InactivityTimer_37,
1743 0, 0, /* No default value */
1744 "drx-InactivityTimer"
1746 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config, drx_HARQ_RTT_TimerDL),
1747 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1748 -1, /* IMPLICIT tag at current level */
1749 &asn_DEF_NativeInteger,
1751 { &asn_OER_memb_drx_HARQ_RTT_TimerDL_constr_70, &asn_PER_memb_drx_HARQ_RTT_TimerDL_constr_70, memb_drx_HARQ_RTT_TimerDL_constraint_1 },
1752 0, 0, /* No default value */
1753 "drx-HARQ-RTT-TimerDL"
1755 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config, drx_HARQ_RTT_TimerUL),
1756 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
1757 -1, /* IMPLICIT tag at current level */
1758 &asn_DEF_NativeInteger,
1760 { &asn_OER_memb_drx_HARQ_RTT_TimerUL_constr_71, &asn_PER_memb_drx_HARQ_RTT_TimerUL_constr_71, memb_drx_HARQ_RTT_TimerUL_constraint_1 },
1761 0, 0, /* No default value */
1762 "drx-HARQ-RTT-TimerUL"
1764 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config, drx_RetransmissionTimerDL),
1765 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
1766 -1, /* IMPLICIT tag at current level */
1767 &asn_DEF_drx_RetransmissionTimerDL_72,
1770 0, 0, /* No default value */
1771 "drx-RetransmissionTimerDL"
1773 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config, drx_RetransmissionTimerUL),
1774 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
1775 -1, /* IMPLICIT tag at current level */
1776 &asn_DEF_drx_RetransmissionTimerUL_105,
1779 0, 0, /* No default value */
1780 "drx-RetransmissionTimerUL"
1782 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config, drx_LongCycleStartOffset),
1783 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
1784 +1, /* EXPLICIT tag at current level */
1785 &asn_DEF_drx_LongCycleStartOffset_138,
1788 0, 0, /* No default value */
1789 "drx-LongCycleStartOffset"
1791 { ATF_POINTER, 1, offsetof(struct DRX_Config, shortDRX),
1792 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
1794 &asn_DEF_shortDRX_159,
1797 0, 0, /* No default value */
1800 { ATF_NOFLAGS, 0, offsetof(struct DRX_Config, drx_SlotOffset),
1801 (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
1802 -1, /* IMPLICIT tag at current level */
1803 &asn_DEF_NativeInteger,
1805 { &asn_OER_memb_drx_SlotOffset_constr_194, &asn_PER_memb_drx_SlotOffset_constr_194, memb_drx_SlotOffset_constraint_1 },
1806 0, 0, /* No default value */
1810 static const int asn_MAP_DRX_Config_oms_1[] = { 7 };
1811 static const ber_tlv_tag_t asn_DEF_DRX_Config_tags_1[] = {
1812 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1814 static const asn_TYPE_tag2member_t asn_MAP_DRX_Config_tag2el_1[] = {
1815 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* drx-onDurationTimer */
1816 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* drx-InactivityTimer */
1817 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* drx-HARQ-RTT-TimerDL */
1818 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* drx-HARQ-RTT-TimerUL */
1819 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* drx-RetransmissionTimerDL */
1820 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* drx-RetransmissionTimerUL */
1821 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* drx-LongCycleStartOffset */
1822 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* shortDRX */
1823 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* drx-SlotOffset */
1825 asn_SEQUENCE_specifics_t asn_SPC_DRX_Config_specs_1 = {
1826 sizeof(struct DRX_Config),
1827 offsetof(struct DRX_Config, _asn_ctx),
1828 asn_MAP_DRX_Config_tag2el_1,
1829 9, /* Count of tags in the map */
1830 asn_MAP_DRX_Config_oms_1, /* Optional members */
1831 1, 0, /* Root/Additions */
1832 -1, /* First extension addition */
1834 asn_TYPE_descriptor_t asn_DEF_DRX_Config = {
1838 asn_DEF_DRX_Config_tags_1,
1839 sizeof(asn_DEF_DRX_Config_tags_1)
1840 /sizeof(asn_DEF_DRX_Config_tags_1[0]), /* 1 */
1841 asn_DEF_DRX_Config_tags_1, /* Same as above */
1842 sizeof(asn_DEF_DRX_Config_tags_1)
1843 /sizeof(asn_DEF_DRX_Config_tags_1[0]), /* 1 */
1844 { 0, 0, SEQUENCE_constraint },
1845 asn_MBR_DRX_Config_1,
1846 9, /* Elements count */
1847 &asn_SPC_DRX_Config_specs_1 /* Additional specs */