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 "CSI-ReportConfig.h"
10 #include "CodebookConfig.h"
11 #include "PUCCH-CSI-Resource.h"
12 #include "PortIndexFor8Ranks.h"
14 memb_pucch_CSI_ResourceList_constraint_8(const asn_TYPE_descriptor_t *td, const void *sptr,
15 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
19 ASN__CTFAIL(app_key, td, sptr,
20 "%s: value not given (%s:%d)",
21 td->name, __FILE__, __LINE__);
25 /* Determine the number of elements */
26 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
28 if((size >= 1 && size <= 4)) {
29 /* Perform validation of the inner elements */
30 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
32 ASN__CTFAIL(app_key, td, sptr,
33 "%s: constraint failed (%s:%d)",
34 td->name, __FILE__, __LINE__);
40 memb_pucch_CSI_ResourceList_constraint_12(const asn_TYPE_descriptor_t *td, const void *sptr,
41 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
45 ASN__CTFAIL(app_key, td, sptr,
46 "%s: value not given (%s:%d)",
47 td->name, __FILE__, __LINE__);
51 /* Determine the number of elements */
52 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
54 if((size >= 1 && size <= 4)) {
55 /* Perform validation of the inner elements */
56 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
58 ASN__CTFAIL(app_key, td, sptr,
59 "%s: constraint failed (%s:%d)",
60 td->name, __FILE__, __LINE__);
66 * This type is implemented using NativeEnumerated,
67 * so here we adjust the DEF accordingly.
70 memb_NativeInteger_constraint_25(const asn_TYPE_descriptor_t *td, const void *sptr,
71 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
75 ASN__CTFAIL(app_key, td, sptr,
76 "%s: value not given (%s:%d)",
77 td->name, __FILE__, __LINE__);
81 value = *(const long *)sptr;
83 if((value >= 0 && value <= 32)) {
84 /* Constraint check succeeded */
87 ASN__CTFAIL(app_key, td, sptr,
88 "%s: constraint failed (%s:%d)",
89 td->name, __FILE__, __LINE__);
95 memb_reportSlotOffsetList_constraint_16(const asn_TYPE_descriptor_t *td, const void *sptr,
96 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
100 ASN__CTFAIL(app_key, td, sptr,
101 "%s: value not given (%s:%d)",
102 td->name, __FILE__, __LINE__);
106 /* Determine the number of elements */
107 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
109 if((size >= 1 && size <= 16)) {
110 /* Perform validation of the inner elements */
111 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
113 ASN__CTFAIL(app_key, td, sptr,
114 "%s: constraint failed (%s:%d)",
115 td->name, __FILE__, __LINE__);
121 memb_NativeInteger_constraint_29(const asn_TYPE_descriptor_t *td, const void *sptr,
122 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
126 ASN__CTFAIL(app_key, td, sptr,
127 "%s: value not given (%s:%d)",
128 td->name, __FILE__, __LINE__);
132 value = *(const long *)sptr;
134 if((value >= 0 && value <= 32)) {
135 /* Constraint check succeeded */
138 ASN__CTFAIL(app_key, td, sptr,
139 "%s: constraint failed (%s:%d)",
140 td->name, __FILE__, __LINE__);
146 memb_reportSlotOffsetList_constraint_28(const asn_TYPE_descriptor_t *td, const void *sptr,
147 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
151 ASN__CTFAIL(app_key, td, sptr,
152 "%s: value not given (%s:%d)",
153 td->name, __FILE__, __LINE__);
157 /* Determine the number of elements */
158 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
160 if((size >= 1 && size <= 16)) {
161 /* Perform validation of the inner elements */
162 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
164 ASN__CTFAIL(app_key, td, sptr,
165 "%s: constraint failed (%s:%d)",
166 td->name, __FILE__, __LINE__);
172 * This type is implemented using NativeEnumerated,
173 * so here we adjust the DEF accordingly.
176 * This type is implemented using NativeEnumerated,
177 * so here we adjust the DEF accordingly.
180 * This type is implemented using NativeEnumerated,
181 * so here we adjust the DEF accordingly.
184 memb_subbands3_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
185 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
186 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
190 ASN__CTFAIL(app_key, td, sptr,
191 "%s: value not given (%s:%d)",
192 td->name, __FILE__, __LINE__);
198 size = 8 * st->size - (st->bits_unused & 0x07);
204 /* Constraint check succeeded */
207 ASN__CTFAIL(app_key, td, sptr,
208 "%s: constraint failed (%s:%d)",
209 td->name, __FILE__, __LINE__);
215 memb_subbands4_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
216 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
217 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
221 ASN__CTFAIL(app_key, td, sptr,
222 "%s: value not given (%s:%d)",
223 td->name, __FILE__, __LINE__);
229 size = 8 * st->size - (st->bits_unused & 0x07);
235 /* Constraint check succeeded */
238 ASN__CTFAIL(app_key, td, sptr,
239 "%s: constraint failed (%s:%d)",
240 td->name, __FILE__, __LINE__);
246 memb_subbands5_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
247 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
248 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
252 ASN__CTFAIL(app_key, td, sptr,
253 "%s: value not given (%s:%d)",
254 td->name, __FILE__, __LINE__);
260 size = 8 * st->size - (st->bits_unused & 0x07);
266 /* Constraint check succeeded */
269 ASN__CTFAIL(app_key, td, sptr,
270 "%s: constraint failed (%s:%d)",
271 td->name, __FILE__, __LINE__);
277 memb_subbands6_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
278 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
279 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
283 ASN__CTFAIL(app_key, td, sptr,
284 "%s: value not given (%s:%d)",
285 td->name, __FILE__, __LINE__);
291 size = 8 * st->size - (st->bits_unused & 0x07);
297 /* Constraint check succeeded */
300 ASN__CTFAIL(app_key, td, sptr,
301 "%s: constraint failed (%s:%d)",
302 td->name, __FILE__, __LINE__);
308 memb_subbands7_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
309 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
310 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
314 ASN__CTFAIL(app_key, td, sptr,
315 "%s: value not given (%s:%d)",
316 td->name, __FILE__, __LINE__);
322 size = 8 * st->size - (st->bits_unused & 0x07);
328 /* Constraint check succeeded */
331 ASN__CTFAIL(app_key, td, sptr,
332 "%s: constraint failed (%s:%d)",
333 td->name, __FILE__, __LINE__);
339 memb_subbands8_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
340 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
341 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
345 ASN__CTFAIL(app_key, td, sptr,
346 "%s: value not given (%s:%d)",
347 td->name, __FILE__, __LINE__);
353 size = 8 * st->size - (st->bits_unused & 0x07);
359 /* Constraint check succeeded */
362 ASN__CTFAIL(app_key, td, sptr,
363 "%s: constraint failed (%s:%d)",
364 td->name, __FILE__, __LINE__);
370 memb_subbands9_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
371 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
372 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
376 ASN__CTFAIL(app_key, td, sptr,
377 "%s: value not given (%s:%d)",
378 td->name, __FILE__, __LINE__);
384 size = 8 * st->size - (st->bits_unused & 0x07);
390 /* Constraint check succeeded */
393 ASN__CTFAIL(app_key, td, sptr,
394 "%s: constraint failed (%s:%d)",
395 td->name, __FILE__, __LINE__);
401 memb_subbands10_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
402 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
403 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
407 ASN__CTFAIL(app_key, td, sptr,
408 "%s: value not given (%s:%d)",
409 td->name, __FILE__, __LINE__);
415 size = 8 * st->size - (st->bits_unused & 0x07);
421 /* Constraint check succeeded */
424 ASN__CTFAIL(app_key, td, sptr,
425 "%s: constraint failed (%s:%d)",
426 td->name, __FILE__, __LINE__);
432 memb_subbands11_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
433 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
434 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
438 ASN__CTFAIL(app_key, td, sptr,
439 "%s: value not given (%s:%d)",
440 td->name, __FILE__, __LINE__);
446 size = 8 * st->size - (st->bits_unused & 0x07);
452 /* Constraint check succeeded */
455 ASN__CTFAIL(app_key, td, sptr,
456 "%s: constraint failed (%s:%d)",
457 td->name, __FILE__, __LINE__);
463 memb_subbands12_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
464 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
465 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
469 ASN__CTFAIL(app_key, td, sptr,
470 "%s: value not given (%s:%d)",
471 td->name, __FILE__, __LINE__);
477 size = 8 * st->size - (st->bits_unused & 0x07);
483 /* Constraint check succeeded */
486 ASN__CTFAIL(app_key, td, sptr,
487 "%s: constraint failed (%s:%d)",
488 td->name, __FILE__, __LINE__);
494 memb_subbands13_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
495 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
496 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
500 ASN__CTFAIL(app_key, td, sptr,
501 "%s: value not given (%s:%d)",
502 td->name, __FILE__, __LINE__);
508 size = 8 * st->size - (st->bits_unused & 0x07);
514 /* Constraint check succeeded */
517 ASN__CTFAIL(app_key, td, sptr,
518 "%s: constraint failed (%s:%d)",
519 td->name, __FILE__, __LINE__);
525 memb_subbands14_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
526 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
527 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
531 ASN__CTFAIL(app_key, td, sptr,
532 "%s: value not given (%s:%d)",
533 td->name, __FILE__, __LINE__);
539 size = 8 * st->size - (st->bits_unused & 0x07);
545 /* Constraint check succeeded */
548 ASN__CTFAIL(app_key, td, sptr,
549 "%s: constraint failed (%s:%d)",
550 td->name, __FILE__, __LINE__);
556 memb_subbands15_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
557 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
558 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
562 ASN__CTFAIL(app_key, td, sptr,
563 "%s: value not given (%s:%d)",
564 td->name, __FILE__, __LINE__);
570 size = 8 * st->size - (st->bits_unused & 0x07);
576 /* Constraint check succeeded */
579 ASN__CTFAIL(app_key, td, sptr,
580 "%s: constraint failed (%s:%d)",
581 td->name, __FILE__, __LINE__);
587 memb_subbands16_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
588 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
589 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
593 ASN__CTFAIL(app_key, td, sptr,
594 "%s: value not given (%s:%d)",
595 td->name, __FILE__, __LINE__);
601 size = 8 * st->size - (st->bits_unused & 0x07);
607 /* Constraint check succeeded */
610 ASN__CTFAIL(app_key, td, sptr,
611 "%s: constraint failed (%s:%d)",
612 td->name, __FILE__, __LINE__);
618 memb_subbands17_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
619 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
620 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
624 ASN__CTFAIL(app_key, td, sptr,
625 "%s: value not given (%s:%d)",
626 td->name, __FILE__, __LINE__);
632 size = 8 * st->size - (st->bits_unused & 0x07);
638 /* Constraint check succeeded */
641 ASN__CTFAIL(app_key, td, sptr,
642 "%s: constraint failed (%s:%d)",
643 td->name, __FILE__, __LINE__);
649 memb_subbands18_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
650 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
651 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
655 ASN__CTFAIL(app_key, td, sptr,
656 "%s: value not given (%s:%d)",
657 td->name, __FILE__, __LINE__);
663 size = 8 * st->size - (st->bits_unused & 0x07);
669 /* Constraint check succeeded */
672 ASN__CTFAIL(app_key, td, sptr,
673 "%s: constraint failed (%s:%d)",
674 td->name, __FILE__, __LINE__);
680 memb_subbands19_v1530_constraint_50(const asn_TYPE_descriptor_t *td, const void *sptr,
681 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
682 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
686 ASN__CTFAIL(app_key, td, sptr,
687 "%s: value not given (%s:%d)",
688 td->name, __FILE__, __LINE__);
694 size = 8 * st->size - (st->bits_unused & 0x07);
700 /* Constraint check succeeded */
703 ASN__CTFAIL(app_key, td, sptr,
704 "%s: constraint failed (%s:%d)",
705 td->name, __FILE__, __LINE__);
711 * This type is implemented using NativeEnumerated,
712 * so here we adjust the DEF accordingly.
715 * This type is implemented using NativeEnumerated,
716 * so here we adjust the DEF accordingly.
719 * This type is implemented using NativeEnumerated,
720 * so here we adjust the DEF accordingly.
723 * This type is implemented using NativeEnumerated,
724 * so here we adjust the DEF accordingly.
727 * This type is implemented using NativeEnumerated,
728 * so here we adjust the DEF accordingly.
731 * This type is implemented using NativeEnumerated,
732 * so here we adjust the DEF accordingly.
735 * This type is implemented using NativeEnumerated,
736 * so here we adjust the DEF accordingly.
739 memb_non_PMI_PortIndication_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
740 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
744 ASN__CTFAIL(app_key, td, sptr,
745 "%s: value not given (%s:%d)",
746 td->name, __FILE__, __LINE__);
750 /* Determine the number of elements */
751 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
753 if((size >= 1 && size <= 128)) {
754 /* Perform validation of the inner elements */
755 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
757 ASN__CTFAIL(app_key, td, sptr,
758 "%s: constraint failed (%s:%d)",
759 td->name, __FILE__, __LINE__);
764 static asn_oer_constraints_t asn_OER_type_pucch_CSI_ResourceList_constr_10 CC_NOTUSED = {
766 -1 /* (SIZE(1..4)) */};
767 static asn_per_constraints_t asn_PER_type_pucch_CSI_ResourceList_constr_10 CC_NOTUSED = {
768 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
769 { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */,
770 0, 0 /* No PER value map */
772 static asn_oer_constraints_t asn_OER_memb_pucch_CSI_ResourceList_constr_10 CC_NOTUSED = {
774 -1 /* (SIZE(1..4)) */};
775 static asn_per_constraints_t asn_PER_memb_pucch_CSI_ResourceList_constr_10 CC_NOTUSED = {
776 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
777 { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */,
778 0, 0 /* No PER value map */
780 static asn_oer_constraints_t asn_OER_type_pucch_CSI_ResourceList_constr_14 CC_NOTUSED = {
782 -1 /* (SIZE(1..4)) */};
783 static asn_per_constraints_t asn_PER_type_pucch_CSI_ResourceList_constr_14 CC_NOTUSED = {
784 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
785 { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */,
786 0, 0 /* No PER value map */
788 static asn_oer_constraints_t asn_OER_memb_pucch_CSI_ResourceList_constr_14 CC_NOTUSED = {
790 -1 /* (SIZE(1..4)) */};
791 static asn_per_constraints_t asn_PER_memb_pucch_CSI_ResourceList_constr_14 CC_NOTUSED = {
792 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
793 { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */,
794 0, 0 /* No PER value map */
796 static asn_oer_constraints_t asn_OER_type_reportSlotConfig_constr_17 CC_NOTUSED = {
799 static asn_per_constraints_t asn_PER_type_reportSlotConfig_constr_17 CC_NOTUSED = {
800 { APC_CONSTRAINED, 3, 3, 0, 6 } /* (0..6) */,
801 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
802 0, 0 /* No PER value map */
804 static asn_oer_constraints_t asn_OER_memb_Member_constr_26 CC_NOTUSED = {
805 { 1, 1 } /* (0..32) */,
807 static asn_per_constraints_t asn_PER_memb_Member_constr_26 CC_NOTUSED = {
808 { APC_CONSTRAINED, 6, 6, 0, 32 } /* (0..32) */,
809 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
810 0, 0 /* No PER value map */
812 static asn_oer_constraints_t asn_OER_type_reportSlotOffsetList_constr_25 CC_NOTUSED = {
814 -1 /* (SIZE(1..16)) */};
815 static asn_per_constraints_t asn_PER_type_reportSlotOffsetList_constr_25 CC_NOTUSED = {
816 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
817 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
818 0, 0 /* No PER value map */
820 static asn_oer_constraints_t asn_OER_memb_reportSlotOffsetList_constr_25 CC_NOTUSED = {
822 -1 /* (SIZE(1..16)) */};
823 static asn_per_constraints_t asn_PER_memb_reportSlotOffsetList_constr_25 CC_NOTUSED = {
824 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
825 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
826 0, 0 /* No PER value map */
828 static asn_oer_constraints_t asn_OER_memb_Member_constr_30 CC_NOTUSED = {
829 { 1, 1 } /* (0..32) */,
831 static asn_per_constraints_t asn_PER_memb_Member_constr_30 CC_NOTUSED = {
832 { APC_CONSTRAINED, 6, 6, 0, 32 } /* (0..32) */,
833 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
834 0, 0 /* No PER value map */
836 static asn_oer_constraints_t asn_OER_type_reportSlotOffsetList_constr_29 CC_NOTUSED = {
838 -1 /* (SIZE(1..16)) */};
839 static asn_per_constraints_t asn_PER_type_reportSlotOffsetList_constr_29 CC_NOTUSED = {
840 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
841 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
842 0, 0 /* No PER value map */
844 static asn_oer_constraints_t asn_OER_memb_reportSlotOffsetList_constr_29 CC_NOTUSED = {
846 -1 /* (SIZE(1..16)) */};
847 static asn_per_constraints_t asn_PER_memb_reportSlotOffsetList_constr_29 CC_NOTUSED = {
848 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
849 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
850 0, 0 /* No PER value map */
852 static asn_oer_constraints_t asn_OER_type_reportConfigType_constr_7 CC_NOTUSED = {
855 static asn_per_constraints_t asn_PER_type_reportConfigType_constr_7 CC_NOTUSED = {
856 { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */,
857 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
858 0, 0 /* No PER value map */
860 static asn_oer_constraints_t asn_OER_type_pdsch_BundleSizeForCSI_constr_36 CC_NOTUSED = {
863 static asn_per_constraints_t asn_PER_type_pdsch_BundleSizeForCSI_constr_36 CC_NOTUSED = {
864 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
865 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
866 0, 0 /* No PER value map */
868 static asn_oer_constraints_t asn_OER_type_reportQuantity_constr_31 CC_NOTUSED = {
871 static asn_per_constraints_t asn_PER_type_reportQuantity_constr_31 CC_NOTUSED = {
872 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
873 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
874 0, 0 /* No PER value map */
876 static asn_oer_constraints_t asn_OER_type_cqi_FormatIndicator_constr_44 CC_NOTUSED = {
879 static asn_per_constraints_t asn_PER_type_cqi_FormatIndicator_constr_44 CC_NOTUSED = {
880 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
881 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
882 0, 0 /* No PER value map */
884 static asn_oer_constraints_t asn_OER_type_pmi_FormatIndicator_constr_47 CC_NOTUSED = {
887 static asn_per_constraints_t asn_PER_type_pmi_FormatIndicator_constr_47 CC_NOTUSED = {
888 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
889 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
890 0, 0 /* No PER value map */
892 static asn_oer_constraints_t asn_OER_memb_subbands3_constr_51 CC_NOTUSED = {
894 3 /* (SIZE(3..3)) */};
895 static asn_per_constraints_t asn_PER_memb_subbands3_constr_51 CC_NOTUSED = {
896 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
897 { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */,
898 0, 0 /* No PER value map */
900 static asn_oer_constraints_t asn_OER_memb_subbands4_constr_52 CC_NOTUSED = {
902 4 /* (SIZE(4..4)) */};
903 static asn_per_constraints_t asn_PER_memb_subbands4_constr_52 CC_NOTUSED = {
904 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
905 { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */,
906 0, 0 /* No PER value map */
908 static asn_oer_constraints_t asn_OER_memb_subbands5_constr_53 CC_NOTUSED = {
910 5 /* (SIZE(5..5)) */};
911 static asn_per_constraints_t asn_PER_memb_subbands5_constr_53 CC_NOTUSED = {
912 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
913 { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */,
914 0, 0 /* No PER value map */
916 static asn_oer_constraints_t asn_OER_memb_subbands6_constr_54 CC_NOTUSED = {
918 6 /* (SIZE(6..6)) */};
919 static asn_per_constraints_t asn_PER_memb_subbands6_constr_54 CC_NOTUSED = {
920 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
921 { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */,
922 0, 0 /* No PER value map */
924 static asn_oer_constraints_t asn_OER_memb_subbands7_constr_55 CC_NOTUSED = {
926 7 /* (SIZE(7..7)) */};
927 static asn_per_constraints_t asn_PER_memb_subbands7_constr_55 CC_NOTUSED = {
928 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
929 { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */,
930 0, 0 /* No PER value map */
932 static asn_oer_constraints_t asn_OER_memb_subbands8_constr_56 CC_NOTUSED = {
934 8 /* (SIZE(8..8)) */};
935 static asn_per_constraints_t asn_PER_memb_subbands8_constr_56 CC_NOTUSED = {
936 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
937 { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */,
938 0, 0 /* No PER value map */
940 static asn_oer_constraints_t asn_OER_memb_subbands9_constr_57 CC_NOTUSED = {
942 9 /* (SIZE(9..9)) */};
943 static asn_per_constraints_t asn_PER_memb_subbands9_constr_57 CC_NOTUSED = {
944 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
945 { APC_CONSTRAINED, 0, 0, 9, 9 } /* (SIZE(9..9)) */,
946 0, 0 /* No PER value map */
948 static asn_oer_constraints_t asn_OER_memb_subbands10_constr_58 CC_NOTUSED = {
950 10 /* (SIZE(10..10)) */};
951 static asn_per_constraints_t asn_PER_memb_subbands10_constr_58 CC_NOTUSED = {
952 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
953 { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */,
954 0, 0 /* No PER value map */
956 static asn_oer_constraints_t asn_OER_memb_subbands11_constr_59 CC_NOTUSED = {
958 11 /* (SIZE(11..11)) */};
959 static asn_per_constraints_t asn_PER_memb_subbands11_constr_59 CC_NOTUSED = {
960 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
961 { APC_CONSTRAINED, 0, 0, 11, 11 } /* (SIZE(11..11)) */,
962 0, 0 /* No PER value map */
964 static asn_oer_constraints_t asn_OER_memb_subbands12_constr_60 CC_NOTUSED = {
966 12 /* (SIZE(12..12)) */};
967 static asn_per_constraints_t asn_PER_memb_subbands12_constr_60 CC_NOTUSED = {
968 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
969 { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */,
970 0, 0 /* No PER value map */
972 static asn_oer_constraints_t asn_OER_memb_subbands13_constr_61 CC_NOTUSED = {
974 13 /* (SIZE(13..13)) */};
975 static asn_per_constraints_t asn_PER_memb_subbands13_constr_61 CC_NOTUSED = {
976 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
977 { APC_CONSTRAINED, 0, 0, 13, 13 } /* (SIZE(13..13)) */,
978 0, 0 /* No PER value map */
980 static asn_oer_constraints_t asn_OER_memb_subbands14_constr_62 CC_NOTUSED = {
982 14 /* (SIZE(14..14)) */};
983 static asn_per_constraints_t asn_PER_memb_subbands14_constr_62 CC_NOTUSED = {
984 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
985 { APC_CONSTRAINED, 0, 0, 14, 14 } /* (SIZE(14..14)) */,
986 0, 0 /* No PER value map */
988 static asn_oer_constraints_t asn_OER_memb_subbands15_constr_63 CC_NOTUSED = {
990 15 /* (SIZE(15..15)) */};
991 static asn_per_constraints_t asn_PER_memb_subbands15_constr_63 CC_NOTUSED = {
992 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
993 { APC_CONSTRAINED, 0, 0, 15, 15 } /* (SIZE(15..15)) */,
994 0, 0 /* No PER value map */
996 static asn_oer_constraints_t asn_OER_memb_subbands16_constr_64 CC_NOTUSED = {
998 16 /* (SIZE(16..16)) */};
999 static asn_per_constraints_t asn_PER_memb_subbands16_constr_64 CC_NOTUSED = {
1000 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1001 { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */,
1002 0, 0 /* No PER value map */
1004 static asn_oer_constraints_t asn_OER_memb_subbands17_constr_65 CC_NOTUSED = {
1006 17 /* (SIZE(17..17)) */};
1007 static asn_per_constraints_t asn_PER_memb_subbands17_constr_65 CC_NOTUSED = {
1008 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1009 { APC_CONSTRAINED, 0, 0, 17, 17 } /* (SIZE(17..17)) */,
1010 0, 0 /* No PER value map */
1012 static asn_oer_constraints_t asn_OER_memb_subbands18_constr_66 CC_NOTUSED = {
1014 18 /* (SIZE(18..18)) */};
1015 static asn_per_constraints_t asn_PER_memb_subbands18_constr_66 CC_NOTUSED = {
1016 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1017 { APC_CONSTRAINED, 0, 0, 18, 18 } /* (SIZE(18..18)) */,
1018 0, 0 /* No PER value map */
1020 static asn_oer_constraints_t asn_OER_memb_subbands19_v1530_constr_68 CC_NOTUSED = {
1022 19 /* (SIZE(19..19)) */};
1023 static asn_per_constraints_t asn_PER_memb_subbands19_v1530_constr_68 CC_NOTUSED = {
1024 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1025 { APC_CONSTRAINED, 0, 0, 19, 19 } /* (SIZE(19..19)) */,
1026 0, 0 /* No PER value map */
1028 static asn_oer_constraints_t asn_OER_type_csi_ReportingBand_constr_50 CC_NOTUSED = {
1031 static asn_per_constraints_t asn_PER_type_csi_ReportingBand_constr_50 CC_NOTUSED = {
1032 { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 15 } /* (0..15,...) */,
1033 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1034 0, 0 /* No PER value map */
1036 static asn_oer_constraints_t asn_OER_type_timeRestrictionForChannelMeasurements_constr_69 CC_NOTUSED = {
1039 static asn_per_constraints_t asn_PER_type_timeRestrictionForChannelMeasurements_constr_69 CC_NOTUSED = {
1040 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
1041 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1042 0, 0 /* No PER value map */
1044 static asn_oer_constraints_t asn_OER_type_timeRestrictionForInterferenceMeasurements_constr_72 CC_NOTUSED = {
1047 static asn_per_constraints_t asn_PER_type_timeRestrictionForInterferenceMeasurements_constr_72 CC_NOTUSED = {
1048 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
1049 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1050 0, 0 /* No PER value map */
1052 static asn_oer_constraints_t asn_OER_type_dummy_constr_76 CC_NOTUSED = {
1055 static asn_per_constraints_t asn_PER_type_dummy_constr_76 CC_NOTUSED = {
1056 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
1057 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1058 0, 0 /* No PER value map */
1060 static asn_oer_constraints_t asn_OER_type_nrofReportedRS_constr_82 CC_NOTUSED = {
1063 static asn_per_constraints_t asn_PER_type_nrofReportedRS_constr_82 CC_NOTUSED = {
1064 { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */,
1065 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1066 0, 0 /* No PER value map */
1068 static asn_oer_constraints_t asn_OER_type_groupBasedBeamReporting_constr_79 CC_NOTUSED = {
1071 static asn_per_constraints_t asn_PER_type_groupBasedBeamReporting_constr_79 CC_NOTUSED = {
1072 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
1073 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1074 0, 0 /* No PER value map */
1076 static asn_oer_constraints_t asn_OER_type_cqi_Table_constr_87 CC_NOTUSED = {
1079 static asn_per_constraints_t asn_PER_type_cqi_Table_constr_87 CC_NOTUSED = {
1080 { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */,
1081 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1082 0, 0 /* No PER value map */
1084 static asn_oer_constraints_t asn_OER_type_subbandSize_constr_92 CC_NOTUSED = {
1087 static asn_per_constraints_t asn_PER_type_subbandSize_constr_92 CC_NOTUSED = {
1088 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
1089 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1090 0, 0 /* No PER value map */
1092 static asn_oer_constraints_t asn_OER_type_non_PMI_PortIndication_constr_95 CC_NOTUSED = {
1094 -1 /* (SIZE(1..128)) */};
1095 static asn_per_constraints_t asn_PER_type_non_PMI_PortIndication_constr_95 CC_NOTUSED = {
1096 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1097 { APC_CONSTRAINED, 7, 7, 1, 128 } /* (SIZE(1..128)) */,
1098 0, 0 /* No PER value map */
1100 static asn_oer_constraints_t asn_OER_type_reportSlotConfig_v1530_constr_100 CC_NOTUSED = {
1103 static asn_per_constraints_t asn_PER_type_reportSlotConfig_v1530_constr_100 CC_NOTUSED = {
1104 { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */,
1105 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1106 0, 0 /* No PER value map */
1108 static asn_oer_constraints_t asn_OER_memb_non_PMI_PortIndication_constr_95 CC_NOTUSED = {
1110 -1 /* (SIZE(1..128)) */};
1111 static asn_per_constraints_t asn_PER_memb_non_PMI_PortIndication_constr_95 CC_NOTUSED = {
1112 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
1113 { APC_CONSTRAINED, 7, 7, 1, 128 } /* (SIZE(1..128)) */,
1114 0, 0 /* No PER value map */
1116 static asn_TYPE_member_t asn_MBR_pucch_CSI_ResourceList_10[] = {
1117 { ATF_POINTER, 0, 0,
1118 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
1120 &asn_DEF_PUCCH_CSI_Resource,
1123 0, 0, /* No default value */
1127 static const ber_tlv_tag_t asn_DEF_pucch_CSI_ResourceList_tags_10[] = {
1128 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1129 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1131 static asn_SET_OF_specifics_t asn_SPC_pucch_CSI_ResourceList_specs_10 = {
1132 sizeof(struct CSI_ReportConfig__reportConfigType__periodic__pucch_CSI_ResourceList),
1133 offsetof(struct CSI_ReportConfig__reportConfigType__periodic__pucch_CSI_ResourceList, _asn_ctx),
1134 0, /* XER encoding is XMLDelimitedItemList */
1136 static /* Use -fall-defs-global to expose */
1137 asn_TYPE_descriptor_t asn_DEF_pucch_CSI_ResourceList_10 = {
1138 "pucch-CSI-ResourceList",
1139 "pucch-CSI-ResourceList",
1140 &asn_OP_SEQUENCE_OF,
1141 asn_DEF_pucch_CSI_ResourceList_tags_10,
1142 sizeof(asn_DEF_pucch_CSI_ResourceList_tags_10)
1143 /sizeof(asn_DEF_pucch_CSI_ResourceList_tags_10[0]) - 1, /* 1 */
1144 asn_DEF_pucch_CSI_ResourceList_tags_10, /* Same as above */
1145 sizeof(asn_DEF_pucch_CSI_ResourceList_tags_10)
1146 /sizeof(asn_DEF_pucch_CSI_ResourceList_tags_10[0]), /* 2 */
1147 { &asn_OER_type_pucch_CSI_ResourceList_constr_10, &asn_PER_type_pucch_CSI_ResourceList_constr_10, SEQUENCE_OF_constraint },
1148 asn_MBR_pucch_CSI_ResourceList_10,
1149 1, /* Single element */
1150 &asn_SPC_pucch_CSI_ResourceList_specs_10 /* Additional specs */
1153 static asn_TYPE_member_t asn_MBR_periodic_8[] = {
1154 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportConfigType__periodic, reportSlotConfig),
1155 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1156 +1, /* EXPLICIT tag at current level */
1157 &asn_DEF_CSI_ReportPeriodicityAndOffset,
1160 0, 0, /* No default value */
1163 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportConfigType__periodic, pucch_CSI_ResourceList),
1164 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1166 &asn_DEF_pucch_CSI_ResourceList_10,
1168 { &asn_OER_memb_pucch_CSI_ResourceList_constr_10, &asn_PER_memb_pucch_CSI_ResourceList_constr_10, memb_pucch_CSI_ResourceList_constraint_8 },
1169 0, 0, /* No default value */
1170 "pucch-CSI-ResourceList"
1173 static const ber_tlv_tag_t asn_DEF_periodic_tags_8[] = {
1174 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1175 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1177 static const asn_TYPE_tag2member_t asn_MAP_periodic_tag2el_8[] = {
1178 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reportSlotConfig */
1179 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* pucch-CSI-ResourceList */
1181 static asn_SEQUENCE_specifics_t asn_SPC_periodic_specs_8 = {
1182 sizeof(struct CSI_ReportConfig__reportConfigType__periodic),
1183 offsetof(struct CSI_ReportConfig__reportConfigType__periodic, _asn_ctx),
1184 asn_MAP_periodic_tag2el_8,
1185 2, /* Count of tags in the map */
1186 0, 0, 0, /* Optional elements (not needed) */
1187 -1, /* First extension addition */
1189 static /* Use -fall-defs-global to expose */
1190 asn_TYPE_descriptor_t asn_DEF_periodic_8 = {
1194 asn_DEF_periodic_tags_8,
1195 sizeof(asn_DEF_periodic_tags_8)
1196 /sizeof(asn_DEF_periodic_tags_8[0]) - 1, /* 1 */
1197 asn_DEF_periodic_tags_8, /* Same as above */
1198 sizeof(asn_DEF_periodic_tags_8)
1199 /sizeof(asn_DEF_periodic_tags_8[0]), /* 2 */
1200 { 0, 0, SEQUENCE_constraint },
1202 2, /* Elements count */
1203 &asn_SPC_periodic_specs_8 /* Additional specs */
1206 static asn_TYPE_member_t asn_MBR_pucch_CSI_ResourceList_14[] = {
1207 { ATF_POINTER, 0, 0,
1208 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
1210 &asn_DEF_PUCCH_CSI_Resource,
1213 0, 0, /* No default value */
1217 static const ber_tlv_tag_t asn_DEF_pucch_CSI_ResourceList_tags_14[] = {
1218 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1219 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1221 static asn_SET_OF_specifics_t asn_SPC_pucch_CSI_ResourceList_specs_14 = {
1222 sizeof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUCCH__pucch_CSI_ResourceList),
1223 offsetof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUCCH__pucch_CSI_ResourceList, _asn_ctx),
1224 0, /* XER encoding is XMLDelimitedItemList */
1226 static /* Use -fall-defs-global to expose */
1227 asn_TYPE_descriptor_t asn_DEF_pucch_CSI_ResourceList_14 = {
1228 "pucch-CSI-ResourceList",
1229 "pucch-CSI-ResourceList",
1230 &asn_OP_SEQUENCE_OF,
1231 asn_DEF_pucch_CSI_ResourceList_tags_14,
1232 sizeof(asn_DEF_pucch_CSI_ResourceList_tags_14)
1233 /sizeof(asn_DEF_pucch_CSI_ResourceList_tags_14[0]) - 1, /* 1 */
1234 asn_DEF_pucch_CSI_ResourceList_tags_14, /* Same as above */
1235 sizeof(asn_DEF_pucch_CSI_ResourceList_tags_14)
1236 /sizeof(asn_DEF_pucch_CSI_ResourceList_tags_14[0]), /* 2 */
1237 { &asn_OER_type_pucch_CSI_ResourceList_constr_14, &asn_PER_type_pucch_CSI_ResourceList_constr_14, SEQUENCE_OF_constraint },
1238 asn_MBR_pucch_CSI_ResourceList_14,
1239 1, /* Single element */
1240 &asn_SPC_pucch_CSI_ResourceList_specs_14 /* Additional specs */
1243 static asn_TYPE_member_t asn_MBR_semiPersistentOnPUCCH_12[] = {
1244 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUCCH, reportSlotConfig),
1245 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1246 +1, /* EXPLICIT tag at current level */
1247 &asn_DEF_CSI_ReportPeriodicityAndOffset,
1250 0, 0, /* No default value */
1253 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUCCH, pucch_CSI_ResourceList),
1254 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1256 &asn_DEF_pucch_CSI_ResourceList_14,
1258 { &asn_OER_memb_pucch_CSI_ResourceList_constr_14, &asn_PER_memb_pucch_CSI_ResourceList_constr_14, memb_pucch_CSI_ResourceList_constraint_12 },
1259 0, 0, /* No default value */
1260 "pucch-CSI-ResourceList"
1263 static const ber_tlv_tag_t asn_DEF_semiPersistentOnPUCCH_tags_12[] = {
1264 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1265 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1267 static const asn_TYPE_tag2member_t asn_MAP_semiPersistentOnPUCCH_tag2el_12[] = {
1268 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reportSlotConfig */
1269 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* pucch-CSI-ResourceList */
1271 static asn_SEQUENCE_specifics_t asn_SPC_semiPersistentOnPUCCH_specs_12 = {
1272 sizeof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUCCH),
1273 offsetof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUCCH, _asn_ctx),
1274 asn_MAP_semiPersistentOnPUCCH_tag2el_12,
1275 2, /* Count of tags in the map */
1276 0, 0, 0, /* Optional elements (not needed) */
1277 -1, /* First extension addition */
1279 static /* Use -fall-defs-global to expose */
1280 asn_TYPE_descriptor_t asn_DEF_semiPersistentOnPUCCH_12 = {
1281 "semiPersistentOnPUCCH",
1282 "semiPersistentOnPUCCH",
1284 asn_DEF_semiPersistentOnPUCCH_tags_12,
1285 sizeof(asn_DEF_semiPersistentOnPUCCH_tags_12)
1286 /sizeof(asn_DEF_semiPersistentOnPUCCH_tags_12[0]) - 1, /* 1 */
1287 asn_DEF_semiPersistentOnPUCCH_tags_12, /* Same as above */
1288 sizeof(asn_DEF_semiPersistentOnPUCCH_tags_12)
1289 /sizeof(asn_DEF_semiPersistentOnPUCCH_tags_12[0]), /* 2 */
1290 { 0, 0, SEQUENCE_constraint },
1291 asn_MBR_semiPersistentOnPUCCH_12,
1292 2, /* Elements count */
1293 &asn_SPC_semiPersistentOnPUCCH_specs_12 /* Additional specs */
1296 static const asn_INTEGER_enum_map_t asn_MAP_reportSlotConfig_value2enum_17[] = {
1305 static const unsigned int asn_MAP_reportSlotConfig_enum2value_17[] = {
1314 static const asn_INTEGER_specifics_t asn_SPC_reportSlotConfig_specs_17 = {
1315 asn_MAP_reportSlotConfig_value2enum_17, /* "tag" => N; sorted by tag */
1316 asn_MAP_reportSlotConfig_enum2value_17, /* N => "tag"; sorted by N */
1317 7, /* Number of elements in the maps */
1318 0, /* Enumeration is not extensible */
1319 1, /* Strict enumeration */
1320 0, /* Native long size */
1323 static const ber_tlv_tag_t asn_DEF_reportSlotConfig_tags_17[] = {
1324 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1325 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1327 static /* Use -fall-defs-global to expose */
1328 asn_TYPE_descriptor_t asn_DEF_reportSlotConfig_17 = {
1331 &asn_OP_NativeEnumerated,
1332 asn_DEF_reportSlotConfig_tags_17,
1333 sizeof(asn_DEF_reportSlotConfig_tags_17)
1334 /sizeof(asn_DEF_reportSlotConfig_tags_17[0]) - 1, /* 1 */
1335 asn_DEF_reportSlotConfig_tags_17, /* Same as above */
1336 sizeof(asn_DEF_reportSlotConfig_tags_17)
1337 /sizeof(asn_DEF_reportSlotConfig_tags_17[0]), /* 2 */
1338 { &asn_OER_type_reportSlotConfig_constr_17, &asn_PER_type_reportSlotConfig_constr_17, NativeEnumerated_constraint },
1339 0, 0, /* Defined elsewhere */
1340 &asn_SPC_reportSlotConfig_specs_17 /* Additional specs */
1343 static asn_TYPE_member_t asn_MBR_reportSlotOffsetList_25[] = {
1344 { ATF_POINTER, 0, 0,
1345 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
1347 &asn_DEF_NativeInteger,
1349 { &asn_OER_memb_Member_constr_26, &asn_PER_memb_Member_constr_26, memb_NativeInteger_constraint_25 },
1350 0, 0, /* No default value */
1354 static const ber_tlv_tag_t asn_DEF_reportSlotOffsetList_tags_25[] = {
1355 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1356 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1358 static asn_SET_OF_specifics_t asn_SPC_reportSlotOffsetList_specs_25 = {
1359 sizeof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUSCH__reportSlotOffsetList),
1360 offsetof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUSCH__reportSlotOffsetList, _asn_ctx),
1361 0, /* XER encoding is XMLDelimitedItemList */
1363 static /* Use -fall-defs-global to expose */
1364 asn_TYPE_descriptor_t asn_DEF_reportSlotOffsetList_25 = {
1365 "reportSlotOffsetList",
1366 "reportSlotOffsetList",
1367 &asn_OP_SEQUENCE_OF,
1368 asn_DEF_reportSlotOffsetList_tags_25,
1369 sizeof(asn_DEF_reportSlotOffsetList_tags_25)
1370 /sizeof(asn_DEF_reportSlotOffsetList_tags_25[0]) - 1, /* 1 */
1371 asn_DEF_reportSlotOffsetList_tags_25, /* Same as above */
1372 sizeof(asn_DEF_reportSlotOffsetList_tags_25)
1373 /sizeof(asn_DEF_reportSlotOffsetList_tags_25[0]), /* 2 */
1374 { &asn_OER_type_reportSlotOffsetList_constr_25, &asn_PER_type_reportSlotOffsetList_constr_25, SEQUENCE_OF_constraint },
1375 asn_MBR_reportSlotOffsetList_25,
1376 1, /* Single element */
1377 &asn_SPC_reportSlotOffsetList_specs_25 /* Additional specs */
1380 static asn_TYPE_member_t asn_MBR_semiPersistentOnPUSCH_16[] = {
1381 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUSCH, reportSlotConfig),
1382 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1383 -1, /* IMPLICIT tag at current level */
1384 &asn_DEF_reportSlotConfig_17,
1387 0, 0, /* No default value */
1390 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUSCH, reportSlotOffsetList),
1391 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1393 &asn_DEF_reportSlotOffsetList_25,
1395 { &asn_OER_memb_reportSlotOffsetList_constr_25, &asn_PER_memb_reportSlotOffsetList_constr_25, memb_reportSlotOffsetList_constraint_16 },
1396 0, 0, /* No default value */
1397 "reportSlotOffsetList"
1399 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUSCH, p0alpha),
1400 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1401 -1, /* IMPLICIT tag at current level */
1402 &asn_DEF_P0_PUSCH_AlphaSetId,
1405 0, 0, /* No default value */
1409 static const ber_tlv_tag_t asn_DEF_semiPersistentOnPUSCH_tags_16[] = {
1410 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1411 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1413 static const asn_TYPE_tag2member_t asn_MAP_semiPersistentOnPUSCH_tag2el_16[] = {
1414 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reportSlotConfig */
1415 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* reportSlotOffsetList */
1416 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* p0alpha */
1418 static asn_SEQUENCE_specifics_t asn_SPC_semiPersistentOnPUSCH_specs_16 = {
1419 sizeof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUSCH),
1420 offsetof(struct CSI_ReportConfig__reportConfigType__semiPersistentOnPUSCH, _asn_ctx),
1421 asn_MAP_semiPersistentOnPUSCH_tag2el_16,
1422 3, /* Count of tags in the map */
1423 0, 0, 0, /* Optional elements (not needed) */
1424 -1, /* First extension addition */
1426 static /* Use -fall-defs-global to expose */
1427 asn_TYPE_descriptor_t asn_DEF_semiPersistentOnPUSCH_16 = {
1428 "semiPersistentOnPUSCH",
1429 "semiPersistentOnPUSCH",
1431 asn_DEF_semiPersistentOnPUSCH_tags_16,
1432 sizeof(asn_DEF_semiPersistentOnPUSCH_tags_16)
1433 /sizeof(asn_DEF_semiPersistentOnPUSCH_tags_16[0]) - 1, /* 1 */
1434 asn_DEF_semiPersistentOnPUSCH_tags_16, /* Same as above */
1435 sizeof(asn_DEF_semiPersistentOnPUSCH_tags_16)
1436 /sizeof(asn_DEF_semiPersistentOnPUSCH_tags_16[0]), /* 2 */
1437 { 0, 0, SEQUENCE_constraint },
1438 asn_MBR_semiPersistentOnPUSCH_16,
1439 3, /* Elements count */
1440 &asn_SPC_semiPersistentOnPUSCH_specs_16 /* Additional specs */
1443 static asn_TYPE_member_t asn_MBR_reportSlotOffsetList_29[] = {
1444 { ATF_POINTER, 0, 0,
1445 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
1447 &asn_DEF_NativeInteger,
1449 { &asn_OER_memb_Member_constr_30, &asn_PER_memb_Member_constr_30, memb_NativeInteger_constraint_29 },
1450 0, 0, /* No default value */
1454 static const ber_tlv_tag_t asn_DEF_reportSlotOffsetList_tags_29[] = {
1455 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1456 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1458 static asn_SET_OF_specifics_t asn_SPC_reportSlotOffsetList_specs_29 = {
1459 sizeof(struct CSI_ReportConfig__reportConfigType__aperiodic__reportSlotOffsetList),
1460 offsetof(struct CSI_ReportConfig__reportConfigType__aperiodic__reportSlotOffsetList, _asn_ctx),
1461 0, /* XER encoding is XMLDelimitedItemList */
1463 static /* Use -fall-defs-global to expose */
1464 asn_TYPE_descriptor_t asn_DEF_reportSlotOffsetList_29 = {
1465 "reportSlotOffsetList",
1466 "reportSlotOffsetList",
1467 &asn_OP_SEQUENCE_OF,
1468 asn_DEF_reportSlotOffsetList_tags_29,
1469 sizeof(asn_DEF_reportSlotOffsetList_tags_29)
1470 /sizeof(asn_DEF_reportSlotOffsetList_tags_29[0]) - 1, /* 1 */
1471 asn_DEF_reportSlotOffsetList_tags_29, /* Same as above */
1472 sizeof(asn_DEF_reportSlotOffsetList_tags_29)
1473 /sizeof(asn_DEF_reportSlotOffsetList_tags_29[0]), /* 2 */
1474 { &asn_OER_type_reportSlotOffsetList_constr_29, &asn_PER_type_reportSlotOffsetList_constr_29, SEQUENCE_OF_constraint },
1475 asn_MBR_reportSlotOffsetList_29,
1476 1, /* Single element */
1477 &asn_SPC_reportSlotOffsetList_specs_29 /* Additional specs */
1480 static asn_TYPE_member_t asn_MBR_aperiodic_28[] = {
1481 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportConfigType__aperiodic, reportSlotOffsetList),
1482 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1484 &asn_DEF_reportSlotOffsetList_29,
1486 { &asn_OER_memb_reportSlotOffsetList_constr_29, &asn_PER_memb_reportSlotOffsetList_constr_29, memb_reportSlotOffsetList_constraint_28 },
1487 0, 0, /* No default value */
1488 "reportSlotOffsetList"
1491 static const ber_tlv_tag_t asn_DEF_aperiodic_tags_28[] = {
1492 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
1493 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1495 static const asn_TYPE_tag2member_t asn_MAP_aperiodic_tag2el_28[] = {
1496 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* reportSlotOffsetList */
1498 static asn_SEQUENCE_specifics_t asn_SPC_aperiodic_specs_28 = {
1499 sizeof(struct CSI_ReportConfig__reportConfigType__aperiodic),
1500 offsetof(struct CSI_ReportConfig__reportConfigType__aperiodic, _asn_ctx),
1501 asn_MAP_aperiodic_tag2el_28,
1502 1, /* Count of tags in the map */
1503 0, 0, 0, /* Optional elements (not needed) */
1504 -1, /* First extension addition */
1506 static /* Use -fall-defs-global to expose */
1507 asn_TYPE_descriptor_t asn_DEF_aperiodic_28 = {
1511 asn_DEF_aperiodic_tags_28,
1512 sizeof(asn_DEF_aperiodic_tags_28)
1513 /sizeof(asn_DEF_aperiodic_tags_28[0]) - 1, /* 1 */
1514 asn_DEF_aperiodic_tags_28, /* Same as above */
1515 sizeof(asn_DEF_aperiodic_tags_28)
1516 /sizeof(asn_DEF_aperiodic_tags_28[0]), /* 2 */
1517 { 0, 0, SEQUENCE_constraint },
1518 asn_MBR_aperiodic_28,
1519 1, /* Elements count */
1520 &asn_SPC_aperiodic_specs_28 /* Additional specs */
1523 static asn_TYPE_member_t asn_MBR_reportConfigType_7[] = {
1524 { ATF_POINTER, 0, offsetof(struct CSI_ReportConfig__reportConfigType, choice.periodic),
1525 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1527 &asn_DEF_periodic_8,
1530 0, 0, /* No default value */
1533 { ATF_POINTER, 0, offsetof(struct CSI_ReportConfig__reportConfigType, choice.semiPersistentOnPUCCH),
1534 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1536 &asn_DEF_semiPersistentOnPUCCH_12,
1539 0, 0, /* No default value */
1540 "semiPersistentOnPUCCH"
1542 { ATF_POINTER, 0, offsetof(struct CSI_ReportConfig__reportConfigType, choice.semiPersistentOnPUSCH),
1543 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1545 &asn_DEF_semiPersistentOnPUSCH_16,
1548 0, 0, /* No default value */
1549 "semiPersistentOnPUSCH"
1551 { ATF_POINTER, 0, offsetof(struct CSI_ReportConfig__reportConfigType, choice.aperiodic),
1552 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
1554 &asn_DEF_aperiodic_28,
1557 0, 0, /* No default value */
1561 static const asn_TYPE_tag2member_t asn_MAP_reportConfigType_tag2el_7[] = {
1562 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* periodic */
1563 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* semiPersistentOnPUCCH */
1564 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* semiPersistentOnPUSCH */
1565 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* aperiodic */
1567 static asn_CHOICE_specifics_t asn_SPC_reportConfigType_specs_7 = {
1568 sizeof(struct CSI_ReportConfig__reportConfigType),
1569 offsetof(struct CSI_ReportConfig__reportConfigType, _asn_ctx),
1570 offsetof(struct CSI_ReportConfig__reportConfigType, present),
1571 sizeof(((struct CSI_ReportConfig__reportConfigType *)0)->present),
1572 asn_MAP_reportConfigType_tag2el_7,
1573 4, /* Count of tags in the map */
1575 -1 /* Extensions start */
1577 static /* Use -fall-defs-global to expose */
1578 asn_TYPE_descriptor_t asn_DEF_reportConfigType_7 = {
1582 0, /* No effective tags (pointer) */
1583 0, /* No effective tags (count) */
1584 0, /* No tags (pointer) */
1585 0, /* No tags (count) */
1586 { &asn_OER_type_reportConfigType_constr_7, &asn_PER_type_reportConfigType_constr_7, CHOICE_constraint },
1587 asn_MBR_reportConfigType_7,
1588 4, /* Elements count */
1589 &asn_SPC_reportConfigType_specs_7 /* Additional specs */
1592 static const asn_INTEGER_enum_map_t asn_MAP_pdsch_BundleSizeForCSI_value2enum_36[] = {
1596 static const unsigned int asn_MAP_pdsch_BundleSizeForCSI_enum2value_36[] = {
1600 static const asn_INTEGER_specifics_t asn_SPC_pdsch_BundleSizeForCSI_specs_36 = {
1601 asn_MAP_pdsch_BundleSizeForCSI_value2enum_36, /* "tag" => N; sorted by tag */
1602 asn_MAP_pdsch_BundleSizeForCSI_enum2value_36, /* N => "tag"; sorted by N */
1603 2, /* Number of elements in the maps */
1604 0, /* Enumeration is not extensible */
1605 1, /* Strict enumeration */
1606 0, /* Native long size */
1609 static const ber_tlv_tag_t asn_DEF_pdsch_BundleSizeForCSI_tags_36[] = {
1610 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1611 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1613 static /* Use -fall-defs-global to expose */
1614 asn_TYPE_descriptor_t asn_DEF_pdsch_BundleSizeForCSI_36 = {
1615 "pdsch-BundleSizeForCSI",
1616 "pdsch-BundleSizeForCSI",
1617 &asn_OP_NativeEnumerated,
1618 asn_DEF_pdsch_BundleSizeForCSI_tags_36,
1619 sizeof(asn_DEF_pdsch_BundleSizeForCSI_tags_36)
1620 /sizeof(asn_DEF_pdsch_BundleSizeForCSI_tags_36[0]) - 1, /* 1 */
1621 asn_DEF_pdsch_BundleSizeForCSI_tags_36, /* Same as above */
1622 sizeof(asn_DEF_pdsch_BundleSizeForCSI_tags_36)
1623 /sizeof(asn_DEF_pdsch_BundleSizeForCSI_tags_36[0]), /* 2 */
1624 { &asn_OER_type_pdsch_BundleSizeForCSI_constr_36, &asn_PER_type_pdsch_BundleSizeForCSI_constr_36, NativeEnumerated_constraint },
1625 0, 0, /* Defined elsewhere */
1626 &asn_SPC_pdsch_BundleSizeForCSI_specs_36 /* Additional specs */
1629 static asn_TYPE_member_t asn_MBR_cri_RI_i1_CQI_35[] = {
1630 { ATF_POINTER, 1, offsetof(struct CSI_ReportConfig__reportQuantity__cri_RI_i1_CQI, pdsch_BundleSizeForCSI),
1631 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1632 -1, /* IMPLICIT tag at current level */
1633 &asn_DEF_pdsch_BundleSizeForCSI_36,
1636 0, 0, /* No default value */
1637 "pdsch-BundleSizeForCSI"
1640 static const int asn_MAP_cri_RI_i1_CQI_oms_35[] = { 0 };
1641 static const ber_tlv_tag_t asn_DEF_cri_RI_i1_CQI_tags_35[] = {
1642 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
1643 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1645 static const asn_TYPE_tag2member_t asn_MAP_cri_RI_i1_CQI_tag2el_35[] = {
1646 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* pdsch-BundleSizeForCSI */
1648 static asn_SEQUENCE_specifics_t asn_SPC_cri_RI_i1_CQI_specs_35 = {
1649 sizeof(struct CSI_ReportConfig__reportQuantity__cri_RI_i1_CQI),
1650 offsetof(struct CSI_ReportConfig__reportQuantity__cri_RI_i1_CQI, _asn_ctx),
1651 asn_MAP_cri_RI_i1_CQI_tag2el_35,
1652 1, /* Count of tags in the map */
1653 asn_MAP_cri_RI_i1_CQI_oms_35, /* Optional members */
1654 1, 0, /* Root/Additions */
1655 -1, /* First extension addition */
1657 static /* Use -fall-defs-global to expose */
1658 asn_TYPE_descriptor_t asn_DEF_cri_RI_i1_CQI_35 = {
1662 asn_DEF_cri_RI_i1_CQI_tags_35,
1663 sizeof(asn_DEF_cri_RI_i1_CQI_tags_35)
1664 /sizeof(asn_DEF_cri_RI_i1_CQI_tags_35[0]) - 1, /* 1 */
1665 asn_DEF_cri_RI_i1_CQI_tags_35, /* Same as above */
1666 sizeof(asn_DEF_cri_RI_i1_CQI_tags_35)
1667 /sizeof(asn_DEF_cri_RI_i1_CQI_tags_35[0]), /* 2 */
1668 { 0, 0, SEQUENCE_constraint },
1669 asn_MBR_cri_RI_i1_CQI_35,
1670 1, /* Elements count */
1671 &asn_SPC_cri_RI_i1_CQI_specs_35 /* Additional specs */
1674 static asn_TYPE_member_t asn_MBR_reportQuantity_31[] = {
1675 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportQuantity, choice.none),
1676 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1677 -1, /* IMPLICIT tag at current level */
1681 0, 0, /* No default value */
1684 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportQuantity, choice.cri_RI_PMI_CQI),
1685 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1686 -1, /* IMPLICIT tag at current level */
1690 0, 0, /* No default value */
1693 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportQuantity, choice.cri_RI_i1),
1694 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1695 -1, /* IMPLICIT tag at current level */
1699 0, 0, /* No default value */
1702 { ATF_POINTER, 0, offsetof(struct CSI_ReportConfig__reportQuantity, choice.cri_RI_i1_CQI),
1703 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
1705 &asn_DEF_cri_RI_i1_CQI_35,
1708 0, 0, /* No default value */
1711 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportQuantity, choice.cri_RI_CQI),
1712 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
1713 -1, /* IMPLICIT tag at current level */
1717 0, 0, /* No default value */
1720 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportQuantity, choice.cri_RSRP),
1721 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
1722 -1, /* IMPLICIT tag at current level */
1726 0, 0, /* No default value */
1729 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportQuantity, choice.ssb_Index_RSRP),
1730 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
1731 -1, /* IMPLICIT tag at current level */
1735 0, 0, /* No default value */
1738 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportQuantity, choice.cri_RI_LI_PMI_CQI),
1739 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
1740 -1, /* IMPLICIT tag at current level */
1744 0, 0, /* No default value */
1748 static const asn_TYPE_tag2member_t asn_MAP_reportQuantity_tag2el_31[] = {
1749 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* none */
1750 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cri-RI-PMI-CQI */
1751 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* cri-RI-i1 */
1752 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* cri-RI-i1-CQI */
1753 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* cri-RI-CQI */
1754 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* cri-RSRP */
1755 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* ssb-Index-RSRP */
1756 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* cri-RI-LI-PMI-CQI */
1758 static asn_CHOICE_specifics_t asn_SPC_reportQuantity_specs_31 = {
1759 sizeof(struct CSI_ReportConfig__reportQuantity),
1760 offsetof(struct CSI_ReportConfig__reportQuantity, _asn_ctx),
1761 offsetof(struct CSI_ReportConfig__reportQuantity, present),
1762 sizeof(((struct CSI_ReportConfig__reportQuantity *)0)->present),
1763 asn_MAP_reportQuantity_tag2el_31,
1764 8, /* Count of tags in the map */
1766 -1 /* Extensions start */
1768 static /* Use -fall-defs-global to expose */
1769 asn_TYPE_descriptor_t asn_DEF_reportQuantity_31 = {
1773 0, /* No effective tags (pointer) */
1774 0, /* No effective tags (count) */
1775 0, /* No tags (pointer) */
1776 0, /* No tags (count) */
1777 { &asn_OER_type_reportQuantity_constr_31, &asn_PER_type_reportQuantity_constr_31, CHOICE_constraint },
1778 asn_MBR_reportQuantity_31,
1779 8, /* Elements count */
1780 &asn_SPC_reportQuantity_specs_31 /* Additional specs */
1783 static const asn_INTEGER_enum_map_t asn_MAP_cqi_FormatIndicator_value2enum_44[] = {
1784 { 0, 11, "widebandCQI" },
1785 { 1, 10, "subbandCQI" }
1787 static const unsigned int asn_MAP_cqi_FormatIndicator_enum2value_44[] = {
1788 1, /* subbandCQI(1) */
1789 0 /* widebandCQI(0) */
1791 static const asn_INTEGER_specifics_t asn_SPC_cqi_FormatIndicator_specs_44 = {
1792 asn_MAP_cqi_FormatIndicator_value2enum_44, /* "tag" => N; sorted by tag */
1793 asn_MAP_cqi_FormatIndicator_enum2value_44, /* N => "tag"; sorted by N */
1794 2, /* Number of elements in the maps */
1795 0, /* Enumeration is not extensible */
1796 1, /* Strict enumeration */
1797 0, /* Native long size */
1800 static const ber_tlv_tag_t asn_DEF_cqi_FormatIndicator_tags_44[] = {
1801 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1802 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1804 static /* Use -fall-defs-global to expose */
1805 asn_TYPE_descriptor_t asn_DEF_cqi_FormatIndicator_44 = {
1806 "cqi-FormatIndicator",
1807 "cqi-FormatIndicator",
1808 &asn_OP_NativeEnumerated,
1809 asn_DEF_cqi_FormatIndicator_tags_44,
1810 sizeof(asn_DEF_cqi_FormatIndicator_tags_44)
1811 /sizeof(asn_DEF_cqi_FormatIndicator_tags_44[0]) - 1, /* 1 */
1812 asn_DEF_cqi_FormatIndicator_tags_44, /* Same as above */
1813 sizeof(asn_DEF_cqi_FormatIndicator_tags_44)
1814 /sizeof(asn_DEF_cqi_FormatIndicator_tags_44[0]), /* 2 */
1815 { &asn_OER_type_cqi_FormatIndicator_constr_44, &asn_PER_type_cqi_FormatIndicator_constr_44, NativeEnumerated_constraint },
1816 0, 0, /* Defined elsewhere */
1817 &asn_SPC_cqi_FormatIndicator_specs_44 /* Additional specs */
1820 static const asn_INTEGER_enum_map_t asn_MAP_pmi_FormatIndicator_value2enum_47[] = {
1821 { 0, 11, "widebandPMI" },
1822 { 1, 10, "subbandPMI" }
1824 static const unsigned int asn_MAP_pmi_FormatIndicator_enum2value_47[] = {
1825 1, /* subbandPMI(1) */
1826 0 /* widebandPMI(0) */
1828 static const asn_INTEGER_specifics_t asn_SPC_pmi_FormatIndicator_specs_47 = {
1829 asn_MAP_pmi_FormatIndicator_value2enum_47, /* "tag" => N; sorted by tag */
1830 asn_MAP_pmi_FormatIndicator_enum2value_47, /* N => "tag"; sorted by N */
1831 2, /* Number of elements in the maps */
1832 0, /* Enumeration is not extensible */
1833 1, /* Strict enumeration */
1834 0, /* Native long size */
1837 static const ber_tlv_tag_t asn_DEF_pmi_FormatIndicator_tags_47[] = {
1838 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1839 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1841 static /* Use -fall-defs-global to expose */
1842 asn_TYPE_descriptor_t asn_DEF_pmi_FormatIndicator_47 = {
1843 "pmi-FormatIndicator",
1844 "pmi-FormatIndicator",
1845 &asn_OP_NativeEnumerated,
1846 asn_DEF_pmi_FormatIndicator_tags_47,
1847 sizeof(asn_DEF_pmi_FormatIndicator_tags_47)
1848 /sizeof(asn_DEF_pmi_FormatIndicator_tags_47[0]) - 1, /* 1 */
1849 asn_DEF_pmi_FormatIndicator_tags_47, /* Same as above */
1850 sizeof(asn_DEF_pmi_FormatIndicator_tags_47)
1851 /sizeof(asn_DEF_pmi_FormatIndicator_tags_47[0]), /* 2 */
1852 { &asn_OER_type_pmi_FormatIndicator_constr_47, &asn_PER_type_pmi_FormatIndicator_constr_47, NativeEnumerated_constraint },
1853 0, 0, /* Defined elsewhere */
1854 &asn_SPC_pmi_FormatIndicator_specs_47 /* Additional specs */
1857 static asn_TYPE_member_t asn_MBR_csi_ReportingBand_50[] = {
1858 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands3),
1859 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1860 -1, /* IMPLICIT tag at current level */
1861 &asn_DEF_BIT_STRING,
1863 { &asn_OER_memb_subbands3_constr_51, &asn_PER_memb_subbands3_constr_51, memb_subbands3_constraint_50 },
1864 0, 0, /* No default value */
1867 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands4),
1868 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1869 -1, /* IMPLICIT tag at current level */
1870 &asn_DEF_BIT_STRING,
1872 { &asn_OER_memb_subbands4_constr_52, &asn_PER_memb_subbands4_constr_52, memb_subbands4_constraint_50 },
1873 0, 0, /* No default value */
1876 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands5),
1877 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1878 -1, /* IMPLICIT tag at current level */
1879 &asn_DEF_BIT_STRING,
1881 { &asn_OER_memb_subbands5_constr_53, &asn_PER_memb_subbands5_constr_53, memb_subbands5_constraint_50 },
1882 0, 0, /* No default value */
1885 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands6),
1886 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
1887 -1, /* IMPLICIT tag at current level */
1888 &asn_DEF_BIT_STRING,
1890 { &asn_OER_memb_subbands6_constr_54, &asn_PER_memb_subbands6_constr_54, memb_subbands6_constraint_50 },
1891 0, 0, /* No default value */
1894 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands7),
1895 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
1896 -1, /* IMPLICIT tag at current level */
1897 &asn_DEF_BIT_STRING,
1899 { &asn_OER_memb_subbands7_constr_55, &asn_PER_memb_subbands7_constr_55, memb_subbands7_constraint_50 },
1900 0, 0, /* No default value */
1903 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands8),
1904 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
1905 -1, /* IMPLICIT tag at current level */
1906 &asn_DEF_BIT_STRING,
1908 { &asn_OER_memb_subbands8_constr_56, &asn_PER_memb_subbands8_constr_56, memb_subbands8_constraint_50 },
1909 0, 0, /* No default value */
1912 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands9),
1913 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
1914 -1, /* IMPLICIT tag at current level */
1915 &asn_DEF_BIT_STRING,
1917 { &asn_OER_memb_subbands9_constr_57, &asn_PER_memb_subbands9_constr_57, memb_subbands9_constraint_50 },
1918 0, 0, /* No default value */
1921 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands10),
1922 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
1923 -1, /* IMPLICIT tag at current level */
1924 &asn_DEF_BIT_STRING,
1926 { &asn_OER_memb_subbands10_constr_58, &asn_PER_memb_subbands10_constr_58, memb_subbands10_constraint_50 },
1927 0, 0, /* No default value */
1930 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands11),
1931 (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
1932 -1, /* IMPLICIT tag at current level */
1933 &asn_DEF_BIT_STRING,
1935 { &asn_OER_memb_subbands11_constr_59, &asn_PER_memb_subbands11_constr_59, memb_subbands11_constraint_50 },
1936 0, 0, /* No default value */
1939 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands12),
1940 (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
1941 -1, /* IMPLICIT tag at current level */
1942 &asn_DEF_BIT_STRING,
1944 { &asn_OER_memb_subbands12_constr_60, &asn_PER_memb_subbands12_constr_60, memb_subbands12_constraint_50 },
1945 0, 0, /* No default value */
1948 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands13),
1949 (ASN_TAG_CLASS_CONTEXT | (10 << 2)),
1950 -1, /* IMPLICIT tag at current level */
1951 &asn_DEF_BIT_STRING,
1953 { &asn_OER_memb_subbands13_constr_61, &asn_PER_memb_subbands13_constr_61, memb_subbands13_constraint_50 },
1954 0, 0, /* No default value */
1957 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands14),
1958 (ASN_TAG_CLASS_CONTEXT | (11 << 2)),
1959 -1, /* IMPLICIT tag at current level */
1960 &asn_DEF_BIT_STRING,
1962 { &asn_OER_memb_subbands14_constr_62, &asn_PER_memb_subbands14_constr_62, memb_subbands14_constraint_50 },
1963 0, 0, /* No default value */
1966 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands15),
1967 (ASN_TAG_CLASS_CONTEXT | (12 << 2)),
1968 -1, /* IMPLICIT tag at current level */
1969 &asn_DEF_BIT_STRING,
1971 { &asn_OER_memb_subbands15_constr_63, &asn_PER_memb_subbands15_constr_63, memb_subbands15_constraint_50 },
1972 0, 0, /* No default value */
1975 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands16),
1976 (ASN_TAG_CLASS_CONTEXT | (13 << 2)),
1977 -1, /* IMPLICIT tag at current level */
1978 &asn_DEF_BIT_STRING,
1980 { &asn_OER_memb_subbands16_constr_64, &asn_PER_memb_subbands16_constr_64, memb_subbands16_constraint_50 },
1981 0, 0, /* No default value */
1984 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands17),
1985 (ASN_TAG_CLASS_CONTEXT | (14 << 2)),
1986 -1, /* IMPLICIT tag at current level */
1987 &asn_DEF_BIT_STRING,
1989 { &asn_OER_memb_subbands17_constr_65, &asn_PER_memb_subbands17_constr_65, memb_subbands17_constraint_50 },
1990 0, 0, /* No default value */
1993 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands18),
1994 (ASN_TAG_CLASS_CONTEXT | (15 << 2)),
1995 -1, /* IMPLICIT tag at current level */
1996 &asn_DEF_BIT_STRING,
1998 { &asn_OER_memb_subbands18_constr_66, &asn_PER_memb_subbands18_constr_66, memb_subbands18_constraint_50 },
1999 0, 0, /* No default value */
2002 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, choice.subbands19_v1530),
2003 (ASN_TAG_CLASS_CONTEXT | (16 << 2)),
2004 -1, /* IMPLICIT tag at current level */
2005 &asn_DEF_BIT_STRING,
2007 { &asn_OER_memb_subbands19_v1530_constr_68, &asn_PER_memb_subbands19_v1530_constr_68, memb_subbands19_v1530_constraint_50 },
2008 0, 0, /* No default value */
2012 static const asn_TYPE_tag2member_t asn_MAP_csi_ReportingBand_tag2el_50[] = {
2013 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* subbands3 */
2014 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subbands4 */
2015 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* subbands5 */
2016 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* subbands6 */
2017 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* subbands7 */
2018 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* subbands8 */
2019 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* subbands9 */
2020 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* subbands10 */
2021 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* subbands11 */
2022 { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* subbands12 */
2023 { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* subbands13 */
2024 { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* subbands14 */
2025 { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* subbands15 */
2026 { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* subbands16 */
2027 { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* subbands17 */
2028 { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* subbands18 */
2029 { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 } /* subbands19-v1530 */
2031 static asn_CHOICE_specifics_t asn_SPC_csi_ReportingBand_specs_50 = {
2032 sizeof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand),
2033 offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, _asn_ctx),
2034 offsetof(struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand, present),
2035 sizeof(((struct CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand *)0)->present),
2036 asn_MAP_csi_ReportingBand_tag2el_50,
2037 17, /* Count of tags in the map */
2039 16 /* Extensions start */
2041 static /* Use -fall-defs-global to expose */
2042 asn_TYPE_descriptor_t asn_DEF_csi_ReportingBand_50 = {
2043 "csi-ReportingBand",
2044 "csi-ReportingBand",
2046 0, /* No effective tags (pointer) */
2047 0, /* No effective tags (count) */
2048 0, /* No tags (pointer) */
2049 0, /* No tags (count) */
2050 { &asn_OER_type_csi_ReportingBand_constr_50, &asn_PER_type_csi_ReportingBand_constr_50, CHOICE_constraint },
2051 asn_MBR_csi_ReportingBand_50,
2052 17, /* Elements count */
2053 &asn_SPC_csi_ReportingBand_specs_50 /* Additional specs */
2056 static asn_TYPE_member_t asn_MBR_reportFreqConfiguration_43[] = {
2057 { ATF_POINTER, 3, offsetof(struct CSI_ReportConfig__reportFreqConfiguration, cqi_FormatIndicator),
2058 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
2059 -1, /* IMPLICIT tag at current level */
2060 &asn_DEF_cqi_FormatIndicator_44,
2063 0, 0, /* No default value */
2064 "cqi-FormatIndicator"
2066 { ATF_POINTER, 2, offsetof(struct CSI_ReportConfig__reportFreqConfiguration, pmi_FormatIndicator),
2067 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
2068 -1, /* IMPLICIT tag at current level */
2069 &asn_DEF_pmi_FormatIndicator_47,
2072 0, 0, /* No default value */
2073 "pmi-FormatIndicator"
2075 { ATF_POINTER, 1, offsetof(struct CSI_ReportConfig__reportFreqConfiguration, csi_ReportingBand),
2076 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
2077 +1, /* EXPLICIT tag at current level */
2078 &asn_DEF_csi_ReportingBand_50,
2081 0, 0, /* No default value */
2085 static const int asn_MAP_reportFreqConfiguration_oms_43[] = { 0, 1, 2 };
2086 static const ber_tlv_tag_t asn_DEF_reportFreqConfiguration_tags_43[] = {
2087 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
2088 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
2090 static const asn_TYPE_tag2member_t asn_MAP_reportFreqConfiguration_tag2el_43[] = {
2091 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* cqi-FormatIndicator */
2092 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pmi-FormatIndicator */
2093 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* csi-ReportingBand */
2095 static asn_SEQUENCE_specifics_t asn_SPC_reportFreqConfiguration_specs_43 = {
2096 sizeof(struct CSI_ReportConfig__reportFreqConfiguration),
2097 offsetof(struct CSI_ReportConfig__reportFreqConfiguration, _asn_ctx),
2098 asn_MAP_reportFreqConfiguration_tag2el_43,
2099 3, /* Count of tags in the map */
2100 asn_MAP_reportFreqConfiguration_oms_43, /* Optional members */
2101 3, 0, /* Root/Additions */
2102 -1, /* First extension addition */
2104 static /* Use -fall-defs-global to expose */
2105 asn_TYPE_descriptor_t asn_DEF_reportFreqConfiguration_43 = {
2106 "reportFreqConfiguration",
2107 "reportFreqConfiguration",
2109 asn_DEF_reportFreqConfiguration_tags_43,
2110 sizeof(asn_DEF_reportFreqConfiguration_tags_43)
2111 /sizeof(asn_DEF_reportFreqConfiguration_tags_43[0]) - 1, /* 1 */
2112 asn_DEF_reportFreqConfiguration_tags_43, /* Same as above */
2113 sizeof(asn_DEF_reportFreqConfiguration_tags_43)
2114 /sizeof(asn_DEF_reportFreqConfiguration_tags_43[0]), /* 2 */
2115 { 0, 0, SEQUENCE_constraint },
2116 asn_MBR_reportFreqConfiguration_43,
2117 3, /* Elements count */
2118 &asn_SPC_reportFreqConfiguration_specs_43 /* Additional specs */
2121 static const asn_INTEGER_enum_map_t asn_MAP_timeRestrictionForChannelMeasurements_value2enum_69[] = {
2122 { 0, 10, "configured" },
2123 { 1, 13, "notConfigured" }
2125 static const unsigned int asn_MAP_timeRestrictionForChannelMeasurements_enum2value_69[] = {
2126 0, /* configured(0) */
2127 1 /* notConfigured(1) */
2129 static const asn_INTEGER_specifics_t asn_SPC_timeRestrictionForChannelMeasurements_specs_69 = {
2130 asn_MAP_timeRestrictionForChannelMeasurements_value2enum_69, /* "tag" => N; sorted by tag */
2131 asn_MAP_timeRestrictionForChannelMeasurements_enum2value_69, /* N => "tag"; sorted by N */
2132 2, /* Number of elements in the maps */
2133 0, /* Enumeration is not extensible */
2134 1, /* Strict enumeration */
2135 0, /* Native long size */
2138 static const ber_tlv_tag_t asn_DEF_timeRestrictionForChannelMeasurements_tags_69[] = {
2139 (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
2140 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
2142 static /* Use -fall-defs-global to expose */
2143 asn_TYPE_descriptor_t asn_DEF_timeRestrictionForChannelMeasurements_69 = {
2144 "timeRestrictionForChannelMeasurements",
2145 "timeRestrictionForChannelMeasurements",
2146 &asn_OP_NativeEnumerated,
2147 asn_DEF_timeRestrictionForChannelMeasurements_tags_69,
2148 sizeof(asn_DEF_timeRestrictionForChannelMeasurements_tags_69)
2149 /sizeof(asn_DEF_timeRestrictionForChannelMeasurements_tags_69[0]) - 1, /* 1 */
2150 asn_DEF_timeRestrictionForChannelMeasurements_tags_69, /* Same as above */
2151 sizeof(asn_DEF_timeRestrictionForChannelMeasurements_tags_69)
2152 /sizeof(asn_DEF_timeRestrictionForChannelMeasurements_tags_69[0]), /* 2 */
2153 { &asn_OER_type_timeRestrictionForChannelMeasurements_constr_69, &asn_PER_type_timeRestrictionForChannelMeasurements_constr_69, NativeEnumerated_constraint },
2154 0, 0, /* Defined elsewhere */
2155 &asn_SPC_timeRestrictionForChannelMeasurements_specs_69 /* Additional specs */
2158 static const asn_INTEGER_enum_map_t asn_MAP_timeRestrictionForInterferenceMeasurements_value2enum_72[] = {
2159 { 0, 10, "configured" },
2160 { 1, 13, "notConfigured" }
2162 static const unsigned int asn_MAP_timeRestrictionForInterferenceMeasurements_enum2value_72[] = {
2163 0, /* configured(0) */
2164 1 /* notConfigured(1) */
2166 static const asn_INTEGER_specifics_t asn_SPC_timeRestrictionForInterferenceMeasurements_specs_72 = {
2167 asn_MAP_timeRestrictionForInterferenceMeasurements_value2enum_72, /* "tag" => N; sorted by tag */
2168 asn_MAP_timeRestrictionForInterferenceMeasurements_enum2value_72, /* N => "tag"; sorted by N */
2169 2, /* Number of elements in the maps */
2170 0, /* Enumeration is not extensible */
2171 1, /* Strict enumeration */
2172 0, /* Native long size */
2175 static const ber_tlv_tag_t asn_DEF_timeRestrictionForInterferenceMeasurements_tags_72[] = {
2176 (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
2177 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
2179 static /* Use -fall-defs-global to expose */
2180 asn_TYPE_descriptor_t asn_DEF_timeRestrictionForInterferenceMeasurements_72 = {
2181 "timeRestrictionForInterferenceMeasurements",
2182 "timeRestrictionForInterferenceMeasurements",
2183 &asn_OP_NativeEnumerated,
2184 asn_DEF_timeRestrictionForInterferenceMeasurements_tags_72,
2185 sizeof(asn_DEF_timeRestrictionForInterferenceMeasurements_tags_72)
2186 /sizeof(asn_DEF_timeRestrictionForInterferenceMeasurements_tags_72[0]) - 1, /* 1 */
2187 asn_DEF_timeRestrictionForInterferenceMeasurements_tags_72, /* Same as above */
2188 sizeof(asn_DEF_timeRestrictionForInterferenceMeasurements_tags_72)
2189 /sizeof(asn_DEF_timeRestrictionForInterferenceMeasurements_tags_72[0]), /* 2 */
2190 { &asn_OER_type_timeRestrictionForInterferenceMeasurements_constr_72, &asn_PER_type_timeRestrictionForInterferenceMeasurements_constr_72, NativeEnumerated_constraint },
2191 0, 0, /* Defined elsewhere */
2192 &asn_SPC_timeRestrictionForInterferenceMeasurements_specs_72 /* Additional specs */
2195 static const asn_INTEGER_enum_map_t asn_MAP_dummy_value2enum_76[] = {
2199 static const unsigned int asn_MAP_dummy_enum2value_76[] = {
2203 static const asn_INTEGER_specifics_t asn_SPC_dummy_specs_76 = {
2204 asn_MAP_dummy_value2enum_76, /* "tag" => N; sorted by tag */
2205 asn_MAP_dummy_enum2value_76, /* N => "tag"; sorted by N */
2206 2, /* Number of elements in the maps */
2207 0, /* Enumeration is not extensible */
2208 1, /* Strict enumeration */
2209 0, /* Native long size */
2212 static const ber_tlv_tag_t asn_DEF_dummy_tags_76[] = {
2213 (ASN_TAG_CLASS_CONTEXT | (11 << 2)),
2214 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
2216 static /* Use -fall-defs-global to expose */
2217 asn_TYPE_descriptor_t asn_DEF_dummy_76 = {
2220 &asn_OP_NativeEnumerated,
2221 asn_DEF_dummy_tags_76,
2222 sizeof(asn_DEF_dummy_tags_76)
2223 /sizeof(asn_DEF_dummy_tags_76[0]) - 1, /* 1 */
2224 asn_DEF_dummy_tags_76, /* Same as above */
2225 sizeof(asn_DEF_dummy_tags_76)
2226 /sizeof(asn_DEF_dummy_tags_76[0]), /* 2 */
2227 { &asn_OER_type_dummy_constr_76, &asn_PER_type_dummy_constr_76, NativeEnumerated_constraint },
2228 0, 0, /* Defined elsewhere */
2229 &asn_SPC_dummy_specs_76 /* Additional specs */
2232 static const asn_INTEGER_enum_map_t asn_MAP_nrofReportedRS_value2enum_82[] = {
2238 static const unsigned int asn_MAP_nrofReportedRS_enum2value_82[] = {
2244 static const asn_INTEGER_specifics_t asn_SPC_nrofReportedRS_specs_82 = {
2245 asn_MAP_nrofReportedRS_value2enum_82, /* "tag" => N; sorted by tag */
2246 asn_MAP_nrofReportedRS_enum2value_82, /* N => "tag"; sorted by N */
2247 4, /* Number of elements in the maps */
2248 0, /* Enumeration is not extensible */
2249 1, /* Strict enumeration */
2250 0, /* Native long size */
2253 static const ber_tlv_tag_t asn_DEF_nrofReportedRS_tags_82[] = {
2254 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
2255 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
2257 static /* Use -fall-defs-global to expose */
2258 asn_TYPE_descriptor_t asn_DEF_nrofReportedRS_82 = {
2261 &asn_OP_NativeEnumerated,
2262 asn_DEF_nrofReportedRS_tags_82,
2263 sizeof(asn_DEF_nrofReportedRS_tags_82)
2264 /sizeof(asn_DEF_nrofReportedRS_tags_82[0]) - 1, /* 1 */
2265 asn_DEF_nrofReportedRS_tags_82, /* Same as above */
2266 sizeof(asn_DEF_nrofReportedRS_tags_82)
2267 /sizeof(asn_DEF_nrofReportedRS_tags_82[0]), /* 2 */
2268 { &asn_OER_type_nrofReportedRS_constr_82, &asn_PER_type_nrofReportedRS_constr_82, NativeEnumerated_constraint },
2269 0, 0, /* Defined elsewhere */
2270 &asn_SPC_nrofReportedRS_specs_82 /* Additional specs */
2273 static asn_TYPE_member_t asn_MBR_disabled_81[] = {
2274 { ATF_POINTER, 1, offsetof(struct CSI_ReportConfig__groupBasedBeamReporting__disabled, nrofReportedRS),
2275 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
2276 -1, /* IMPLICIT tag at current level */
2277 &asn_DEF_nrofReportedRS_82,
2280 0, 0, /* No default value */
2284 static const int asn_MAP_disabled_oms_81[] = { 0 };
2285 static const ber_tlv_tag_t asn_DEF_disabled_tags_81[] = {
2286 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
2287 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
2289 static const asn_TYPE_tag2member_t asn_MAP_disabled_tag2el_81[] = {
2290 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* nrofReportedRS */
2292 static asn_SEQUENCE_specifics_t asn_SPC_disabled_specs_81 = {
2293 sizeof(struct CSI_ReportConfig__groupBasedBeamReporting__disabled),
2294 offsetof(struct CSI_ReportConfig__groupBasedBeamReporting__disabled, _asn_ctx),
2295 asn_MAP_disabled_tag2el_81,
2296 1, /* Count of tags in the map */
2297 asn_MAP_disabled_oms_81, /* Optional members */
2298 1, 0, /* Root/Additions */
2299 -1, /* First extension addition */
2301 static /* Use -fall-defs-global to expose */
2302 asn_TYPE_descriptor_t asn_DEF_disabled_81 = {
2306 asn_DEF_disabled_tags_81,
2307 sizeof(asn_DEF_disabled_tags_81)
2308 /sizeof(asn_DEF_disabled_tags_81[0]) - 1, /* 1 */
2309 asn_DEF_disabled_tags_81, /* Same as above */
2310 sizeof(asn_DEF_disabled_tags_81)
2311 /sizeof(asn_DEF_disabled_tags_81[0]), /* 2 */
2312 { 0, 0, SEQUENCE_constraint },
2313 asn_MBR_disabled_81,
2314 1, /* Elements count */
2315 &asn_SPC_disabled_specs_81 /* Additional specs */
2318 static asn_TYPE_member_t asn_MBR_groupBasedBeamReporting_79[] = {
2319 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__groupBasedBeamReporting, choice.enabled),
2320 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
2321 -1, /* IMPLICIT tag at current level */
2325 0, 0, /* No default value */
2328 { ATF_POINTER, 0, offsetof(struct CSI_ReportConfig__groupBasedBeamReporting, choice.disabled),
2329 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
2331 &asn_DEF_disabled_81,
2334 0, 0, /* No default value */
2338 static const asn_TYPE_tag2member_t asn_MAP_groupBasedBeamReporting_tag2el_79[] = {
2339 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* enabled */
2340 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* disabled */
2342 static asn_CHOICE_specifics_t asn_SPC_groupBasedBeamReporting_specs_79 = {
2343 sizeof(struct CSI_ReportConfig__groupBasedBeamReporting),
2344 offsetof(struct CSI_ReportConfig__groupBasedBeamReporting, _asn_ctx),
2345 offsetof(struct CSI_ReportConfig__groupBasedBeamReporting, present),
2346 sizeof(((struct CSI_ReportConfig__groupBasedBeamReporting *)0)->present),
2347 asn_MAP_groupBasedBeamReporting_tag2el_79,
2348 2, /* Count of tags in the map */
2350 -1 /* Extensions start */
2352 static /* Use -fall-defs-global to expose */
2353 asn_TYPE_descriptor_t asn_DEF_groupBasedBeamReporting_79 = {
2354 "groupBasedBeamReporting",
2355 "groupBasedBeamReporting",
2357 0, /* No effective tags (pointer) */
2358 0, /* No effective tags (count) */
2359 0, /* No tags (pointer) */
2360 0, /* No tags (count) */
2361 { &asn_OER_type_groupBasedBeamReporting_constr_79, &asn_PER_type_groupBasedBeamReporting_constr_79, CHOICE_constraint },
2362 asn_MBR_groupBasedBeamReporting_79,
2363 2, /* Elements count */
2364 &asn_SPC_groupBasedBeamReporting_specs_79 /* Additional specs */
2367 static const asn_INTEGER_enum_map_t asn_MAP_cqi_Table_value2enum_87[] = {
2373 static const unsigned int asn_MAP_cqi_Table_enum2value_87[] = {
2379 static const asn_INTEGER_specifics_t asn_SPC_cqi_Table_specs_87 = {
2380 asn_MAP_cqi_Table_value2enum_87, /* "tag" => N; sorted by tag */
2381 asn_MAP_cqi_Table_enum2value_87, /* N => "tag"; sorted by N */
2382 4, /* Number of elements in the maps */
2383 0, /* Enumeration is not extensible */
2384 1, /* Strict enumeration */
2385 0, /* Native long size */
2388 static const ber_tlv_tag_t asn_DEF_cqi_Table_tags_87[] = {
2389 (ASN_TAG_CLASS_CONTEXT | (13 << 2)),
2390 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
2392 static /* Use -fall-defs-global to expose */
2393 asn_TYPE_descriptor_t asn_DEF_cqi_Table_87 = {
2396 &asn_OP_NativeEnumerated,
2397 asn_DEF_cqi_Table_tags_87,
2398 sizeof(asn_DEF_cqi_Table_tags_87)
2399 /sizeof(asn_DEF_cqi_Table_tags_87[0]) - 1, /* 1 */
2400 asn_DEF_cqi_Table_tags_87, /* Same as above */
2401 sizeof(asn_DEF_cqi_Table_tags_87)
2402 /sizeof(asn_DEF_cqi_Table_tags_87[0]), /* 2 */
2403 { &asn_OER_type_cqi_Table_constr_87, &asn_PER_type_cqi_Table_constr_87, NativeEnumerated_constraint },
2404 0, 0, /* Defined elsewhere */
2405 &asn_SPC_cqi_Table_specs_87 /* Additional specs */
2408 static const asn_INTEGER_enum_map_t asn_MAP_subbandSize_value2enum_92[] = {
2412 static const unsigned int asn_MAP_subbandSize_enum2value_92[] = {
2416 static const asn_INTEGER_specifics_t asn_SPC_subbandSize_specs_92 = {
2417 asn_MAP_subbandSize_value2enum_92, /* "tag" => N; sorted by tag */
2418 asn_MAP_subbandSize_enum2value_92, /* N => "tag"; sorted by N */
2419 2, /* Number of elements in the maps */
2420 0, /* Enumeration is not extensible */
2421 1, /* Strict enumeration */
2422 0, /* Native long size */
2425 static const ber_tlv_tag_t asn_DEF_subbandSize_tags_92[] = {
2426 (ASN_TAG_CLASS_CONTEXT | (14 << 2)),
2427 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
2429 static /* Use -fall-defs-global to expose */
2430 asn_TYPE_descriptor_t asn_DEF_subbandSize_92 = {
2433 &asn_OP_NativeEnumerated,
2434 asn_DEF_subbandSize_tags_92,
2435 sizeof(asn_DEF_subbandSize_tags_92)
2436 /sizeof(asn_DEF_subbandSize_tags_92[0]) - 1, /* 1 */
2437 asn_DEF_subbandSize_tags_92, /* Same as above */
2438 sizeof(asn_DEF_subbandSize_tags_92)
2439 /sizeof(asn_DEF_subbandSize_tags_92[0]), /* 2 */
2440 { &asn_OER_type_subbandSize_constr_92, &asn_PER_type_subbandSize_constr_92, NativeEnumerated_constraint },
2441 0, 0, /* Defined elsewhere */
2442 &asn_SPC_subbandSize_specs_92 /* Additional specs */
2445 static asn_TYPE_member_t asn_MBR_non_PMI_PortIndication_95[] = {
2446 { ATF_POINTER, 0, 0,
2447 -1 /* Ambiguous tag (CHOICE?) */,
2449 &asn_DEF_PortIndexFor8Ranks,
2452 0, 0, /* No default value */
2456 static const ber_tlv_tag_t asn_DEF_non_PMI_PortIndication_tags_95[] = {
2457 (ASN_TAG_CLASS_CONTEXT | (15 << 2)),
2458 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
2460 static asn_SET_OF_specifics_t asn_SPC_non_PMI_PortIndication_specs_95 = {
2461 sizeof(struct CSI_ReportConfig__non_PMI_PortIndication),
2462 offsetof(struct CSI_ReportConfig__non_PMI_PortIndication, _asn_ctx),
2463 2, /* XER encoding is XMLValueList */
2465 static /* Use -fall-defs-global to expose */
2466 asn_TYPE_descriptor_t asn_DEF_non_PMI_PortIndication_95 = {
2467 "non-PMI-PortIndication",
2468 "non-PMI-PortIndication",
2469 &asn_OP_SEQUENCE_OF,
2470 asn_DEF_non_PMI_PortIndication_tags_95,
2471 sizeof(asn_DEF_non_PMI_PortIndication_tags_95)
2472 /sizeof(asn_DEF_non_PMI_PortIndication_tags_95[0]) - 1, /* 1 */
2473 asn_DEF_non_PMI_PortIndication_tags_95, /* Same as above */
2474 sizeof(asn_DEF_non_PMI_PortIndication_tags_95)
2475 /sizeof(asn_DEF_non_PMI_PortIndication_tags_95[0]), /* 2 */
2476 { &asn_OER_type_non_PMI_PortIndication_constr_95, &asn_PER_type_non_PMI_PortIndication_constr_95, SEQUENCE_OF_constraint },
2477 asn_MBR_non_PMI_PortIndication_95,
2478 1, /* Single element */
2479 &asn_SPC_non_PMI_PortIndication_specs_95 /* Additional specs */
2482 static const asn_INTEGER_enum_map_t asn_MAP_reportSlotConfig_v1530_value2enum_100[] = {
2487 static const unsigned int asn_MAP_reportSlotConfig_v1530_enum2value_100[] = {
2492 static const asn_INTEGER_specifics_t asn_SPC_reportSlotConfig_v1530_specs_100 = {
2493 asn_MAP_reportSlotConfig_v1530_value2enum_100, /* "tag" => N; sorted by tag */
2494 asn_MAP_reportSlotConfig_v1530_enum2value_100, /* N => "tag"; sorted by N */
2495 3, /* Number of elements in the maps */
2496 0, /* Enumeration is not extensible */
2497 1, /* Strict enumeration */
2498 0, /* Native long size */
2501 static const ber_tlv_tag_t asn_DEF_reportSlotConfig_v1530_tags_100[] = {
2502 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
2503 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
2505 static /* Use -fall-defs-global to expose */
2506 asn_TYPE_descriptor_t asn_DEF_reportSlotConfig_v1530_100 = {
2507 "reportSlotConfig-v1530",
2508 "reportSlotConfig-v1530",
2509 &asn_OP_NativeEnumerated,
2510 asn_DEF_reportSlotConfig_v1530_tags_100,
2511 sizeof(asn_DEF_reportSlotConfig_v1530_tags_100)
2512 /sizeof(asn_DEF_reportSlotConfig_v1530_tags_100[0]) - 1, /* 1 */
2513 asn_DEF_reportSlotConfig_v1530_tags_100, /* Same as above */
2514 sizeof(asn_DEF_reportSlotConfig_v1530_tags_100)
2515 /sizeof(asn_DEF_reportSlotConfig_v1530_tags_100[0]), /* 2 */
2516 { &asn_OER_type_reportSlotConfig_v1530_constr_100, &asn_PER_type_reportSlotConfig_v1530_constr_100, NativeEnumerated_constraint },
2517 0, 0, /* Defined elsewhere */
2518 &asn_SPC_reportSlotConfig_v1530_specs_100 /* Additional specs */
2521 static asn_TYPE_member_t asn_MBR_semiPersistentOnPUSCH_v1530_99[] = {
2522 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig__ext1__semiPersistentOnPUSCH_v1530, reportSlotConfig_v1530),
2523 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
2524 -1, /* IMPLICIT tag at current level */
2525 &asn_DEF_reportSlotConfig_v1530_100,
2528 0, 0, /* No default value */
2529 "reportSlotConfig-v1530"
2532 static const ber_tlv_tag_t asn_DEF_semiPersistentOnPUSCH_v1530_tags_99[] = {
2533 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
2534 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
2536 static const asn_TYPE_tag2member_t asn_MAP_semiPersistentOnPUSCH_v1530_tag2el_99[] = {
2537 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* reportSlotConfig-v1530 */
2539 static asn_SEQUENCE_specifics_t asn_SPC_semiPersistentOnPUSCH_v1530_specs_99 = {
2540 sizeof(struct CSI_ReportConfig__ext1__semiPersistentOnPUSCH_v1530),
2541 offsetof(struct CSI_ReportConfig__ext1__semiPersistentOnPUSCH_v1530, _asn_ctx),
2542 asn_MAP_semiPersistentOnPUSCH_v1530_tag2el_99,
2543 1, /* Count of tags in the map */
2544 0, 0, 0, /* Optional elements (not needed) */
2545 -1, /* First extension addition */
2547 static /* Use -fall-defs-global to expose */
2548 asn_TYPE_descriptor_t asn_DEF_semiPersistentOnPUSCH_v1530_99 = {
2549 "semiPersistentOnPUSCH-v1530",
2550 "semiPersistentOnPUSCH-v1530",
2552 asn_DEF_semiPersistentOnPUSCH_v1530_tags_99,
2553 sizeof(asn_DEF_semiPersistentOnPUSCH_v1530_tags_99)
2554 /sizeof(asn_DEF_semiPersistentOnPUSCH_v1530_tags_99[0]) - 1, /* 1 */
2555 asn_DEF_semiPersistentOnPUSCH_v1530_tags_99, /* Same as above */
2556 sizeof(asn_DEF_semiPersistentOnPUSCH_v1530_tags_99)
2557 /sizeof(asn_DEF_semiPersistentOnPUSCH_v1530_tags_99[0]), /* 2 */
2558 { 0, 0, SEQUENCE_constraint },
2559 asn_MBR_semiPersistentOnPUSCH_v1530_99,
2560 1, /* Elements count */
2561 &asn_SPC_semiPersistentOnPUSCH_v1530_specs_99 /* Additional specs */
2564 static asn_TYPE_member_t asn_MBR_ext1_98[] = {
2565 { ATF_POINTER, 1, offsetof(struct CSI_ReportConfig__ext1, semiPersistentOnPUSCH_v1530),
2566 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
2568 &asn_DEF_semiPersistentOnPUSCH_v1530_99,
2571 0, 0, /* No default value */
2572 "semiPersistentOnPUSCH-v1530"
2575 static const int asn_MAP_ext1_oms_98[] = { 0 };
2576 static const ber_tlv_tag_t asn_DEF_ext1_tags_98[] = {
2577 (ASN_TAG_CLASS_CONTEXT | (16 << 2)),
2578 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
2580 static const asn_TYPE_tag2member_t asn_MAP_ext1_tag2el_98[] = {
2581 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* semiPersistentOnPUSCH-v1530 */
2583 static asn_SEQUENCE_specifics_t asn_SPC_ext1_specs_98 = {
2584 sizeof(struct CSI_ReportConfig__ext1),
2585 offsetof(struct CSI_ReportConfig__ext1, _asn_ctx),
2586 asn_MAP_ext1_tag2el_98,
2587 1, /* Count of tags in the map */
2588 asn_MAP_ext1_oms_98, /* Optional members */
2589 1, 0, /* Root/Additions */
2590 -1, /* First extension addition */
2592 static /* Use -fall-defs-global to expose */
2593 asn_TYPE_descriptor_t asn_DEF_ext1_98 = {
2597 asn_DEF_ext1_tags_98,
2598 sizeof(asn_DEF_ext1_tags_98)
2599 /sizeof(asn_DEF_ext1_tags_98[0]) - 1, /* 1 */
2600 asn_DEF_ext1_tags_98, /* Same as above */
2601 sizeof(asn_DEF_ext1_tags_98)
2602 /sizeof(asn_DEF_ext1_tags_98[0]), /* 2 */
2603 { 0, 0, SEQUENCE_constraint },
2605 1, /* Elements count */
2606 &asn_SPC_ext1_specs_98 /* Additional specs */
2609 asn_TYPE_member_t asn_MBR_CSI_ReportConfig_1[] = {
2610 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig, reportConfigId),
2611 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
2612 -1, /* IMPLICIT tag at current level */
2613 &asn_DEF_CSI_ReportConfigId,
2616 0, 0, /* No default value */
2619 { ATF_POINTER, 1, offsetof(struct CSI_ReportConfig, carrier),
2620 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
2621 -1, /* IMPLICIT tag at current level */
2622 &asn_DEF_ServCellIndex,
2625 0, 0, /* No default value */
2628 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig, resourcesForChannelMeasurement),
2629 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
2630 -1, /* IMPLICIT tag at current level */
2631 &asn_DEF_CSI_ResourceConfigId,
2634 0, 0, /* No default value */
2635 "resourcesForChannelMeasurement"
2637 { ATF_POINTER, 2, offsetof(struct CSI_ReportConfig, csi_IM_ResourcesForInterference),
2638 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
2639 -1, /* IMPLICIT tag at current level */
2640 &asn_DEF_CSI_ResourceConfigId,
2643 0, 0, /* No default value */
2644 "csi-IM-ResourcesForInterference"
2646 { ATF_POINTER, 1, offsetof(struct CSI_ReportConfig, nzp_CSI_RS_ResourcesForInterference),
2647 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
2648 -1, /* IMPLICIT tag at current level */
2649 &asn_DEF_CSI_ResourceConfigId,
2652 0, 0, /* No default value */
2653 "nzp-CSI-RS-ResourcesForInterference"
2655 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig, reportConfigType),
2656 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
2657 +1, /* EXPLICIT tag at current level */
2658 &asn_DEF_reportConfigType_7,
2661 0, 0, /* No default value */
2664 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig, reportQuantity),
2665 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
2666 +1, /* EXPLICIT tag at current level */
2667 &asn_DEF_reportQuantity_31,
2670 0, 0, /* No default value */
2673 { ATF_POINTER, 1, offsetof(struct CSI_ReportConfig, reportFreqConfiguration),
2674 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
2676 &asn_DEF_reportFreqConfiguration_43,
2679 0, 0, /* No default value */
2680 "reportFreqConfiguration"
2682 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig, timeRestrictionForChannelMeasurements),
2683 (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
2684 -1, /* IMPLICIT tag at current level */
2685 &asn_DEF_timeRestrictionForChannelMeasurements_69,
2688 0, 0, /* No default value */
2689 "timeRestrictionForChannelMeasurements"
2691 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig, timeRestrictionForInterferenceMeasurements),
2692 (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
2693 -1, /* IMPLICIT tag at current level */
2694 &asn_DEF_timeRestrictionForInterferenceMeasurements_72,
2697 0, 0, /* No default value */
2698 "timeRestrictionForInterferenceMeasurements"
2700 { ATF_POINTER, 2, offsetof(struct CSI_ReportConfig, codebookConfig),
2701 (ASN_TAG_CLASS_CONTEXT | (10 << 2)),
2702 -1, /* IMPLICIT tag at current level */
2703 &asn_DEF_CodebookConfig,
2706 0, 0, /* No default value */
2709 { ATF_POINTER, 1, offsetof(struct CSI_ReportConfig, dummy),
2710 (ASN_TAG_CLASS_CONTEXT | (11 << 2)),
2711 -1, /* IMPLICIT tag at current level */
2715 0, 0, /* No default value */
2718 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig, groupBasedBeamReporting),
2719 (ASN_TAG_CLASS_CONTEXT | (12 << 2)),
2720 +1, /* EXPLICIT tag at current level */
2721 &asn_DEF_groupBasedBeamReporting_79,
2724 0, 0, /* No default value */
2725 "groupBasedBeamReporting"
2727 { ATF_POINTER, 1, offsetof(struct CSI_ReportConfig, cqi_Table),
2728 (ASN_TAG_CLASS_CONTEXT | (13 << 2)),
2729 -1, /* IMPLICIT tag at current level */
2730 &asn_DEF_cqi_Table_87,
2733 0, 0, /* No default value */
2736 { ATF_NOFLAGS, 0, offsetof(struct CSI_ReportConfig, subbandSize),
2737 (ASN_TAG_CLASS_CONTEXT | (14 << 2)),
2738 -1, /* IMPLICIT tag at current level */
2739 &asn_DEF_subbandSize_92,
2742 0, 0, /* No default value */
2745 { ATF_POINTER, 2, offsetof(struct CSI_ReportConfig, non_PMI_PortIndication),
2746 (ASN_TAG_CLASS_CONTEXT | (15 << 2)),
2748 &asn_DEF_non_PMI_PortIndication_95,
2750 { &asn_OER_memb_non_PMI_PortIndication_constr_95, &asn_PER_memb_non_PMI_PortIndication_constr_95, memb_non_PMI_PortIndication_constraint_1 },
2751 0, 0, /* No default value */
2752 "non-PMI-PortIndication"
2754 { ATF_POINTER, 1, offsetof(struct CSI_ReportConfig, ext1),
2755 (ASN_TAG_CLASS_CONTEXT | (16 << 2)),
2760 0, 0, /* No default value */
2764 static const int asn_MAP_CSI_ReportConfig_oms_1[] = { 1, 3, 4, 7, 10, 11, 13, 15, 16 };
2765 static const ber_tlv_tag_t asn_DEF_CSI_ReportConfig_tags_1[] = {
2766 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
2768 static const asn_TYPE_tag2member_t asn_MAP_CSI_ReportConfig_tag2el_1[] = {
2769 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reportConfigId */
2770 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* carrier */
2771 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* resourcesForChannelMeasurement */
2772 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* csi-IM-ResourcesForInterference */
2773 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* nzp-CSI-RS-ResourcesForInterference */
2774 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* reportConfigType */
2775 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* reportQuantity */
2776 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* reportFreqConfiguration */
2777 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* timeRestrictionForChannelMeasurements */
2778 { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* timeRestrictionForInterferenceMeasurements */
2779 { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* codebookConfig */
2780 { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* dummy */
2781 { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* groupBasedBeamReporting */
2782 { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* cqi-Table */
2783 { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* subbandSize */
2784 { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* non-PMI-PortIndication */
2785 { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 } /* ext1 */
2787 asn_SEQUENCE_specifics_t asn_SPC_CSI_ReportConfig_specs_1 = {
2788 sizeof(struct CSI_ReportConfig),
2789 offsetof(struct CSI_ReportConfig, _asn_ctx),
2790 asn_MAP_CSI_ReportConfig_tag2el_1,
2791 17, /* Count of tags in the map */
2792 asn_MAP_CSI_ReportConfig_oms_1, /* Optional members */
2793 8, 1, /* Root/Additions */
2794 16, /* First extension addition */
2796 asn_TYPE_descriptor_t asn_DEF_CSI_ReportConfig = {
2800 asn_DEF_CSI_ReportConfig_tags_1,
2801 sizeof(asn_DEF_CSI_ReportConfig_tags_1)
2802 /sizeof(asn_DEF_CSI_ReportConfig_tags_1[0]), /* 1 */
2803 asn_DEF_CSI_ReportConfig_tags_1, /* Same as above */
2804 sizeof(asn_DEF_CSI_ReportConfig_tags_1)
2805 /sizeof(asn_DEF_CSI_ReportConfig_tags_1[0]), /* 1 */
2806 { 0, 0, SEQUENCE_constraint },
2807 asn_MBR_CSI_ReportConfig_1,
2808 17, /* Elements count */
2809 &asn_SPC_CSI_ReportConfig_specs_1 /* Additional specs */