2 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3 * From ASN.1 module "NR-RRC-Definitions"
4 * found in "../../../rrc_15.3_asn.asn1"
5 * `asn1c -D ./25_02_2022_RRC/ -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
8 #include "FeatureSetDownlink.h"
10 #include "CSI-RS-IM-ReceptionForFeedback.h"
11 #include "TypeI-SinglePanelCodebook.h"
12 #include "TypeI-MultiPanelCodebook.h"
13 #include "TypeII-Codebook.h"
14 #include "TypeII-CodebookPortSelection.h"
16 * This type is implemented using NativeEnumerated,
17 * so here we adjust the DEF accordingly.
20 * This type is implemented using NativeEnumerated,
21 * so here we adjust the DEF accordingly.
24 * This type is implemented using NativeEnumerated,
25 * so here we adjust the DEF accordingly.
28 * This type is implemented using NativeEnumerated,
29 * so here we adjust the DEF accordingly.
32 * This type is implemented using NativeEnumerated,
33 * so here we adjust the DEF accordingly.
36 * This type is implemented using NativeEnumerated,
37 * so here we adjust the DEF accordingly.
40 * This type is implemented using NativeEnumerated,
41 * so here we adjust the DEF accordingly.
44 * This type is implemented using NativeEnumerated,
45 * so here we adjust the DEF accordingly.
48 * This type is implemented using NativeEnumerated,
49 * so here we adjust the DEF accordingly.
52 * This type is implemented using NativeEnumerated,
53 * so here we adjust the DEF accordingly.
56 * This type is implemented using NativeEnumerated,
57 * so here we adjust the DEF accordingly.
60 * This type is implemented using NativeEnumerated,
61 * so here we adjust the DEF accordingly.
64 * This type is implemented using NativeEnumerated,
65 * so here we adjust the DEF accordingly.
68 * This type is implemented using NativeEnumerated,
69 * so here we adjust the DEF accordingly.
72 * This type is implemented using NativeEnumerated,
73 * so here we adjust the DEF accordingly.
76 * This type is implemented using NativeEnumerated,
77 * so here we adjust the DEF accordingly.
80 memb_featureSetListPerDownlinkCC_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
81 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
85 ASN__CTFAIL(app_key, td, sptr,
86 "%s: value not given (%s:%d)",
87 td->name, __FILE__, __LINE__);
91 /* Determine the number of elements */
92 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
94 if((size >= 1 && size <= 32)) {
95 /* Perform validation of the inner elements */
96 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
98 ASN__CTFAIL(app_key, td, sptr,
99 "%s: constraint failed (%s:%d)",
100 td->name, __FILE__, __LINE__);
106 memb_typeI_SinglePanelCodebookList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
107 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
111 ASN__CTFAIL(app_key, td, sptr,
112 "%s: value not given (%s:%d)",
113 td->name, __FILE__, __LINE__);
117 /* Determine the number of elements */
118 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
120 if((size >= 1 && size <= 16)) {
121 /* Perform validation of the inner elements */
122 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
124 ASN__CTFAIL(app_key, td, sptr,
125 "%s: constraint failed (%s:%d)",
126 td->name, __FILE__, __LINE__);
132 memb_typeI_MultiPanelCodebookList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
133 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
137 ASN__CTFAIL(app_key, td, sptr,
138 "%s: value not given (%s:%d)",
139 td->name, __FILE__, __LINE__);
143 /* Determine the number of elements */
144 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
146 if((size >= 1 && size <= 16)) {
147 /* Perform validation of the inner elements */
148 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
150 ASN__CTFAIL(app_key, td, sptr,
151 "%s: constraint failed (%s:%d)",
152 td->name, __FILE__, __LINE__);
158 memb_typeII_CodebookList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
159 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
163 ASN__CTFAIL(app_key, td, sptr,
164 "%s: value not given (%s:%d)",
165 td->name, __FILE__, __LINE__);
169 /* Determine the number of elements */
170 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
172 if((size >= 1 && size <= 16)) {
173 /* Perform validation of the inner elements */
174 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
176 ASN__CTFAIL(app_key, td, sptr,
177 "%s: constraint failed (%s:%d)",
178 td->name, __FILE__, __LINE__);
184 memb_typeII_CodebookPortSelectionList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
185 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
189 ASN__CTFAIL(app_key, td, sptr,
190 "%s: value not given (%s:%d)",
191 td->name, __FILE__, __LINE__);
195 /* Determine the number of elements */
196 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
198 if((size >= 1 && size <= 16)) {
199 /* Perform validation of the inner elements */
200 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
202 ASN__CTFAIL(app_key, td, sptr,
203 "%s: constraint failed (%s:%d)",
204 td->name, __FILE__, __LINE__);
209 static asn_oer_constraints_t asn_OER_type_featureSetListPerDownlinkCC_constr_2 CC_NOTUSED = {
211 -1 /* (SIZE(1..32)) */};
212 static asn_per_constraints_t asn_PER_type_featureSetListPerDownlinkCC_constr_2 CC_NOTUSED = {
213 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
214 { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */,
215 0, 0 /* No PER value map */
217 static asn_oer_constraints_t asn_OER_type_scalingFactor_constr_5 CC_NOTUSED = {
220 static asn_per_constraints_t asn_PER_type_scalingFactor_constr_5 CC_NOTUSED = {
221 { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */,
222 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
223 0, 0 /* No PER value map */
225 static asn_oer_constraints_t asn_OER_type_crossCarrierScheduling_OtherSCS_constr_9 CC_NOTUSED = {
228 static asn_per_constraints_t asn_PER_type_crossCarrierScheduling_OtherSCS_constr_9 CC_NOTUSED = {
229 { APC_CONSTRAINED, 0, 0, 0, 0 } /* (0..0) */,
230 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
231 0, 0 /* No PER value map */
233 static asn_oer_constraints_t asn_OER_type_scellWithoutSSB_constr_11 CC_NOTUSED = {
236 static asn_per_constraints_t asn_PER_type_scellWithoutSSB_constr_11 CC_NOTUSED = {
237 { APC_CONSTRAINED, 0, 0, 0, 0 } /* (0..0) */,
238 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
239 0, 0 /* No PER value map */
241 static asn_oer_constraints_t asn_OER_type_csi_RS_MeasSCellWithoutSSB_constr_13 CC_NOTUSED = {
244 static asn_per_constraints_t asn_PER_type_csi_RS_MeasSCellWithoutSSB_constr_13 CC_NOTUSED = {
245 { APC_CONSTRAINED, 0, 0, 0, 0 } /* (0..0) */,
246 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
247 0, 0 /* No PER value map */
249 static asn_oer_constraints_t asn_OER_type_srs_AssocCSI_RS_constr_15 CC_NOTUSED = {
252 static asn_per_constraints_t asn_PER_type_srs_AssocCSI_RS_constr_15 CC_NOTUSED = {
253 { APC_CONSTRAINED, 0, 0, 0, 0 } /* (0..0) */,
254 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
255 0, 0 /* No PER value map */
257 static asn_oer_constraints_t asn_OER_type_type1_3_CSS_constr_17 CC_NOTUSED = {
260 static asn_per_constraints_t asn_PER_type_type1_3_CSS_constr_17 CC_NOTUSED = {
261 { APC_CONSTRAINED, 0, 0, 0, 0 } /* (0..0) */,
262 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
263 0, 0 /* No PER value map */
265 static asn_oer_constraints_t asn_OER_type_pdcch_MonitoringAnyOccasions_constr_19 CC_NOTUSED = {
268 static asn_per_constraints_t asn_PER_type_pdcch_MonitoringAnyOccasions_constr_19 CC_NOTUSED = {
269 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
270 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
271 0, 0 /* No PER value map */
273 static asn_oer_constraints_t asn_OER_type_pdcch_MonitoringAnyOccasionsWithSpanGap_constr_22 CC_NOTUSED = {
276 static asn_per_constraints_t asn_PER_type_pdcch_MonitoringAnyOccasionsWithSpanGap_constr_22 CC_NOTUSED = {
277 { APC_CONSTRAINED, 0, 0, 0, 0 } /* (0..0) */,
278 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
279 0, 0 /* No PER value map */
281 static asn_oer_constraints_t asn_OER_type_ue_SpecificUL_DL_Assignment_constr_24 CC_NOTUSED = {
284 static asn_per_constraints_t asn_PER_type_ue_SpecificUL_DL_Assignment_constr_24 CC_NOTUSED = {
285 { APC_CONSTRAINED, 0, 0, 0, 0 } /* (0..0) */,
286 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
287 0, 0 /* No PER value map */
289 static asn_oer_constraints_t asn_OER_type_searchSpaceSharingCA_DL_constr_26 CC_NOTUSED = {
292 static asn_per_constraints_t asn_PER_type_searchSpaceSharingCA_DL_constr_26 CC_NOTUSED = {
293 { APC_CONSTRAINED, 0, 0, 0, 0 } /* (0..0) */,
294 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
295 0, 0 /* No PER value map */
297 static asn_oer_constraints_t asn_OER_type_scs_60kHz_constr_29 CC_NOTUSED = {
300 static asn_per_constraints_t asn_PER_type_scs_60kHz_constr_29 CC_NOTUSED = {
301 { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */,
302 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
303 0, 0 /* No PER value map */
305 static asn_oer_constraints_t asn_OER_type_scs_120kHz_constr_33 CC_NOTUSED = {
308 static asn_per_constraints_t asn_PER_type_scs_120kHz_constr_33 CC_NOTUSED = {
309 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
310 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
311 0, 0 /* No PER value map */
313 static asn_oer_constraints_t asn_OER_type_scs_15kHz_constr_37 CC_NOTUSED = {
316 static asn_per_constraints_t asn_PER_type_scs_15kHz_constr_37 CC_NOTUSED = {
317 { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */,
318 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
319 0, 0 /* No PER value map */
321 static asn_oer_constraints_t asn_OER_type_scs_30kHz_constr_41 CC_NOTUSED = {
324 static asn_per_constraints_t asn_PER_type_scs_30kHz_constr_41 CC_NOTUSED = {
325 { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */,
326 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
327 0, 0 /* No PER value map */
329 static asn_oer_constraints_t asn_OER_type_scs_60kHz_constr_45 CC_NOTUSED = {
332 static asn_per_constraints_t asn_PER_type_scs_60kHz_constr_45 CC_NOTUSED = {
333 { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */,
334 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
335 0, 0 /* No PER value map */
337 static asn_oer_constraints_t asn_OER_type_scs_120kHz_constr_49 CC_NOTUSED = {
340 static asn_per_constraints_t asn_PER_type_scs_120kHz_constr_49 CC_NOTUSED = {
341 { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */,
342 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
343 0, 0 /* No PER value map */
345 static asn_oer_constraints_t asn_OER_type_typeI_SinglePanelCodebookList_constr_54 CC_NOTUSED = {
347 -1 /* (SIZE(1..16)) */};
348 static asn_per_constraints_t asn_PER_type_typeI_SinglePanelCodebookList_constr_54 CC_NOTUSED = {
349 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
350 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
351 0, 0 /* No PER value map */
353 static asn_oer_constraints_t asn_OER_type_typeI_MultiPanelCodebookList_constr_56 CC_NOTUSED = {
355 -1 /* (SIZE(1..16)) */};
356 static asn_per_constraints_t asn_PER_type_typeI_MultiPanelCodebookList_constr_56 CC_NOTUSED = {
357 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
358 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
359 0, 0 /* No PER value map */
361 static asn_oer_constraints_t asn_OER_type_typeII_CodebookList_constr_58 CC_NOTUSED = {
363 -1 /* (SIZE(1..16)) */};
364 static asn_per_constraints_t asn_PER_type_typeII_CodebookList_constr_58 CC_NOTUSED = {
365 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
366 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
367 0, 0 /* No PER value map */
369 static asn_oer_constraints_t asn_OER_type_typeII_CodebookPortSelectionList_constr_60 CC_NOTUSED = {
371 -1 /* (SIZE(1..16)) */};
372 static asn_per_constraints_t asn_PER_type_typeII_CodebookPortSelectionList_constr_60 CC_NOTUSED = {
373 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
374 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
375 0, 0 /* No PER value map */
377 static asn_oer_constraints_t asn_OER_memb_featureSetListPerDownlinkCC_constr_2 CC_NOTUSED = {
379 -1 /* (SIZE(1..32)) */};
380 static asn_per_constraints_t asn_PER_memb_featureSetListPerDownlinkCC_constr_2 CC_NOTUSED = {
381 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
382 { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */,
383 0, 0 /* No PER value map */
385 static asn_oer_constraints_t asn_OER_memb_typeI_SinglePanelCodebookList_constr_54 CC_NOTUSED = {
387 -1 /* (SIZE(1..16)) */};
388 static asn_per_constraints_t asn_PER_memb_typeI_SinglePanelCodebookList_constr_54 CC_NOTUSED = {
389 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
390 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
391 0, 0 /* No PER value map */
393 static asn_oer_constraints_t asn_OER_memb_typeI_MultiPanelCodebookList_constr_56 CC_NOTUSED = {
395 -1 /* (SIZE(1..16)) */};
396 static asn_per_constraints_t asn_PER_memb_typeI_MultiPanelCodebookList_constr_56 CC_NOTUSED = {
397 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
398 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
399 0, 0 /* No PER value map */
401 static asn_oer_constraints_t asn_OER_memb_typeII_CodebookList_constr_58 CC_NOTUSED = {
403 -1 /* (SIZE(1..16)) */};
404 static asn_per_constraints_t asn_PER_memb_typeII_CodebookList_constr_58 CC_NOTUSED = {
405 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
406 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
407 0, 0 /* No PER value map */
409 static asn_oer_constraints_t asn_OER_memb_typeII_CodebookPortSelectionList_constr_60 CC_NOTUSED = {
411 -1 /* (SIZE(1..16)) */};
412 static asn_per_constraints_t asn_PER_memb_typeII_CodebookPortSelectionList_constr_60 CC_NOTUSED = {
413 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
414 { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */,
415 0, 0 /* No PER value map */
417 static asn_TYPE_member_t asn_MBR_featureSetListPerDownlinkCC_2[] = {
419 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
421 &asn_DEF_FeatureSetDownlinkPerCC_Id,
424 0, 0, /* No default value */
428 static const ber_tlv_tag_t asn_DEF_featureSetListPerDownlinkCC_tags_2[] = {
429 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
430 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
432 static asn_SET_OF_specifics_t asn_SPC_featureSetListPerDownlinkCC_specs_2 = {
433 sizeof(struct FeatureSetDownlink__featureSetListPerDownlinkCC),
434 offsetof(struct FeatureSetDownlink__featureSetListPerDownlinkCC, _asn_ctx),
435 0, /* XER encoding is XMLDelimitedItemList */
437 static /* Use -fall-defs-global to expose */
438 asn_TYPE_descriptor_t asn_DEF_featureSetListPerDownlinkCC_2 = {
439 "featureSetListPerDownlinkCC",
440 "featureSetListPerDownlinkCC",
442 asn_DEF_featureSetListPerDownlinkCC_tags_2,
443 sizeof(asn_DEF_featureSetListPerDownlinkCC_tags_2)
444 /sizeof(asn_DEF_featureSetListPerDownlinkCC_tags_2[0]) - 1, /* 1 */
445 asn_DEF_featureSetListPerDownlinkCC_tags_2, /* Same as above */
446 sizeof(asn_DEF_featureSetListPerDownlinkCC_tags_2)
447 /sizeof(asn_DEF_featureSetListPerDownlinkCC_tags_2[0]), /* 2 */
448 { &asn_OER_type_featureSetListPerDownlinkCC_constr_2, &asn_PER_type_featureSetListPerDownlinkCC_constr_2, SEQUENCE_OF_constraint },
449 asn_MBR_featureSetListPerDownlinkCC_2,
450 1, /* Single element */
451 &asn_SPC_featureSetListPerDownlinkCC_specs_2 /* Additional specs */
454 static const asn_INTEGER_enum_map_t asn_MAP_scalingFactor_value2enum_5[] = {
459 static const unsigned int asn_MAP_scalingFactor_enum2value_5[] = {
464 static const asn_INTEGER_specifics_t asn_SPC_scalingFactor_specs_5 = {
465 asn_MAP_scalingFactor_value2enum_5, /* "tag" => N; sorted by tag */
466 asn_MAP_scalingFactor_enum2value_5, /* N => "tag"; sorted by N */
467 3, /* Number of elements in the maps */
468 0, /* Enumeration is not extensible */
469 1, /* Strict enumeration */
470 0, /* Native long size */
473 static const ber_tlv_tag_t asn_DEF_scalingFactor_tags_5[] = {
474 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
475 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
477 static /* Use -fall-defs-global to expose */
478 asn_TYPE_descriptor_t asn_DEF_scalingFactor_5 = {
481 &asn_OP_NativeEnumerated,
482 asn_DEF_scalingFactor_tags_5,
483 sizeof(asn_DEF_scalingFactor_tags_5)
484 /sizeof(asn_DEF_scalingFactor_tags_5[0]) - 1, /* 1 */
485 asn_DEF_scalingFactor_tags_5, /* Same as above */
486 sizeof(asn_DEF_scalingFactor_tags_5)
487 /sizeof(asn_DEF_scalingFactor_tags_5[0]), /* 2 */
488 { &asn_OER_type_scalingFactor_constr_5, &asn_PER_type_scalingFactor_constr_5, NativeEnumerated_constraint },
489 0, 0, /* Defined elsewhere */
490 &asn_SPC_scalingFactor_specs_5 /* Additional specs */
493 static const asn_INTEGER_enum_map_t asn_MAP_crossCarrierScheduling_OtherSCS_value2enum_9[] = {
494 { 0, 9, "supported" }
496 static const unsigned int asn_MAP_crossCarrierScheduling_OtherSCS_enum2value_9[] = {
499 static const asn_INTEGER_specifics_t asn_SPC_crossCarrierScheduling_OtherSCS_specs_9 = {
500 asn_MAP_crossCarrierScheduling_OtherSCS_value2enum_9, /* "tag" => N; sorted by tag */
501 asn_MAP_crossCarrierScheduling_OtherSCS_enum2value_9, /* N => "tag"; sorted by N */
502 1, /* Number of elements in the maps */
503 0, /* Enumeration is not extensible */
504 1, /* Strict enumeration */
505 0, /* Native long size */
508 static const ber_tlv_tag_t asn_DEF_crossCarrierScheduling_OtherSCS_tags_9[] = {
509 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
510 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
512 static /* Use -fall-defs-global to expose */
513 asn_TYPE_descriptor_t asn_DEF_crossCarrierScheduling_OtherSCS_9 = {
514 "crossCarrierScheduling-OtherSCS",
515 "crossCarrierScheduling-OtherSCS",
516 &asn_OP_NativeEnumerated,
517 asn_DEF_crossCarrierScheduling_OtherSCS_tags_9,
518 sizeof(asn_DEF_crossCarrierScheduling_OtherSCS_tags_9)
519 /sizeof(asn_DEF_crossCarrierScheduling_OtherSCS_tags_9[0]) - 1, /* 1 */
520 asn_DEF_crossCarrierScheduling_OtherSCS_tags_9, /* Same as above */
521 sizeof(asn_DEF_crossCarrierScheduling_OtherSCS_tags_9)
522 /sizeof(asn_DEF_crossCarrierScheduling_OtherSCS_tags_9[0]), /* 2 */
523 { &asn_OER_type_crossCarrierScheduling_OtherSCS_constr_9, &asn_PER_type_crossCarrierScheduling_OtherSCS_constr_9, NativeEnumerated_constraint },
524 0, 0, /* Defined elsewhere */
525 &asn_SPC_crossCarrierScheduling_OtherSCS_specs_9 /* Additional specs */
528 static const asn_INTEGER_enum_map_t asn_MAP_scellWithoutSSB_value2enum_11[] = {
529 { 0, 9, "supported" }
531 static const unsigned int asn_MAP_scellWithoutSSB_enum2value_11[] = {
534 static const asn_INTEGER_specifics_t asn_SPC_scellWithoutSSB_specs_11 = {
535 asn_MAP_scellWithoutSSB_value2enum_11, /* "tag" => N; sorted by tag */
536 asn_MAP_scellWithoutSSB_enum2value_11, /* N => "tag"; sorted by N */
537 1, /* Number of elements in the maps */
538 0, /* Enumeration is not extensible */
539 1, /* Strict enumeration */
540 0, /* Native long size */
543 static const ber_tlv_tag_t asn_DEF_scellWithoutSSB_tags_11[] = {
544 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
545 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
547 static /* Use -fall-defs-global to expose */
548 asn_TYPE_descriptor_t asn_DEF_scellWithoutSSB_11 = {
551 &asn_OP_NativeEnumerated,
552 asn_DEF_scellWithoutSSB_tags_11,
553 sizeof(asn_DEF_scellWithoutSSB_tags_11)
554 /sizeof(asn_DEF_scellWithoutSSB_tags_11[0]) - 1, /* 1 */
555 asn_DEF_scellWithoutSSB_tags_11, /* Same as above */
556 sizeof(asn_DEF_scellWithoutSSB_tags_11)
557 /sizeof(asn_DEF_scellWithoutSSB_tags_11[0]), /* 2 */
558 { &asn_OER_type_scellWithoutSSB_constr_11, &asn_PER_type_scellWithoutSSB_constr_11, NativeEnumerated_constraint },
559 0, 0, /* Defined elsewhere */
560 &asn_SPC_scellWithoutSSB_specs_11 /* Additional specs */
563 static const asn_INTEGER_enum_map_t asn_MAP_csi_RS_MeasSCellWithoutSSB_value2enum_13[] = {
564 { 0, 9, "supported" }
566 static const unsigned int asn_MAP_csi_RS_MeasSCellWithoutSSB_enum2value_13[] = {
569 static const asn_INTEGER_specifics_t asn_SPC_csi_RS_MeasSCellWithoutSSB_specs_13 = {
570 asn_MAP_csi_RS_MeasSCellWithoutSSB_value2enum_13, /* "tag" => N; sorted by tag */
571 asn_MAP_csi_RS_MeasSCellWithoutSSB_enum2value_13, /* N => "tag"; sorted by N */
572 1, /* Number of elements in the maps */
573 0, /* Enumeration is not extensible */
574 1, /* Strict enumeration */
575 0, /* Native long size */
578 static const ber_tlv_tag_t asn_DEF_csi_RS_MeasSCellWithoutSSB_tags_13[] = {
579 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
580 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
582 static /* Use -fall-defs-global to expose */
583 asn_TYPE_descriptor_t asn_DEF_csi_RS_MeasSCellWithoutSSB_13 = {
584 "csi-RS-MeasSCellWithoutSSB",
585 "csi-RS-MeasSCellWithoutSSB",
586 &asn_OP_NativeEnumerated,
587 asn_DEF_csi_RS_MeasSCellWithoutSSB_tags_13,
588 sizeof(asn_DEF_csi_RS_MeasSCellWithoutSSB_tags_13)
589 /sizeof(asn_DEF_csi_RS_MeasSCellWithoutSSB_tags_13[0]) - 1, /* 1 */
590 asn_DEF_csi_RS_MeasSCellWithoutSSB_tags_13, /* Same as above */
591 sizeof(asn_DEF_csi_RS_MeasSCellWithoutSSB_tags_13)
592 /sizeof(asn_DEF_csi_RS_MeasSCellWithoutSSB_tags_13[0]), /* 2 */
593 { &asn_OER_type_csi_RS_MeasSCellWithoutSSB_constr_13, &asn_PER_type_csi_RS_MeasSCellWithoutSSB_constr_13, NativeEnumerated_constraint },
594 0, 0, /* Defined elsewhere */
595 &asn_SPC_csi_RS_MeasSCellWithoutSSB_specs_13 /* Additional specs */
598 static const asn_INTEGER_enum_map_t asn_MAP_srs_AssocCSI_RS_value2enum_15[] = {
599 { 0, 9, "supported" }
601 static const unsigned int asn_MAP_srs_AssocCSI_RS_enum2value_15[] = {
604 static const asn_INTEGER_specifics_t asn_SPC_srs_AssocCSI_RS_specs_15 = {
605 asn_MAP_srs_AssocCSI_RS_value2enum_15, /* "tag" => N; sorted by tag */
606 asn_MAP_srs_AssocCSI_RS_enum2value_15, /* N => "tag"; sorted by N */
607 1, /* Number of elements in the maps */
608 0, /* Enumeration is not extensible */
609 1, /* Strict enumeration */
610 0, /* Native long size */
613 static const ber_tlv_tag_t asn_DEF_srs_AssocCSI_RS_tags_15[] = {
614 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
615 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
617 static /* Use -fall-defs-global to expose */
618 asn_TYPE_descriptor_t asn_DEF_srs_AssocCSI_RS_15 = {
621 &asn_OP_NativeEnumerated,
622 asn_DEF_srs_AssocCSI_RS_tags_15,
623 sizeof(asn_DEF_srs_AssocCSI_RS_tags_15)
624 /sizeof(asn_DEF_srs_AssocCSI_RS_tags_15[0]) - 1, /* 1 */
625 asn_DEF_srs_AssocCSI_RS_tags_15, /* Same as above */
626 sizeof(asn_DEF_srs_AssocCSI_RS_tags_15)
627 /sizeof(asn_DEF_srs_AssocCSI_RS_tags_15[0]), /* 2 */
628 { &asn_OER_type_srs_AssocCSI_RS_constr_15, &asn_PER_type_srs_AssocCSI_RS_constr_15, NativeEnumerated_constraint },
629 0, 0, /* Defined elsewhere */
630 &asn_SPC_srs_AssocCSI_RS_specs_15 /* Additional specs */
633 static const asn_INTEGER_enum_map_t asn_MAP_type1_3_CSS_value2enum_17[] = {
634 { 0, 9, "supported" }
636 static const unsigned int asn_MAP_type1_3_CSS_enum2value_17[] = {
639 static const asn_INTEGER_specifics_t asn_SPC_type1_3_CSS_specs_17 = {
640 asn_MAP_type1_3_CSS_value2enum_17, /* "tag" => N; sorted by tag */
641 asn_MAP_type1_3_CSS_enum2value_17, /* N => "tag"; sorted by N */
642 1, /* Number of elements in the maps */
643 0, /* Enumeration is not extensible */
644 1, /* Strict enumeration */
645 0, /* Native long size */
648 static const ber_tlv_tag_t asn_DEF_type1_3_CSS_tags_17[] = {
649 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
650 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
652 static /* Use -fall-defs-global to expose */
653 asn_TYPE_descriptor_t asn_DEF_type1_3_CSS_17 = {
656 &asn_OP_NativeEnumerated,
657 asn_DEF_type1_3_CSS_tags_17,
658 sizeof(asn_DEF_type1_3_CSS_tags_17)
659 /sizeof(asn_DEF_type1_3_CSS_tags_17[0]) - 1, /* 1 */
660 asn_DEF_type1_3_CSS_tags_17, /* Same as above */
661 sizeof(asn_DEF_type1_3_CSS_tags_17)
662 /sizeof(asn_DEF_type1_3_CSS_tags_17[0]), /* 2 */
663 { &asn_OER_type_type1_3_CSS_constr_17, &asn_PER_type_type1_3_CSS_constr_17, NativeEnumerated_constraint },
664 0, 0, /* Defined elsewhere */
665 &asn_SPC_type1_3_CSS_specs_17 /* Additional specs */
668 static const asn_INTEGER_enum_map_t asn_MAP_pdcch_MonitoringAnyOccasions_value2enum_19[] = {
669 { 0, 14, "withoutDCI-Gap" },
670 { 1, 11, "withDCI-Gap" }
672 static const unsigned int asn_MAP_pdcch_MonitoringAnyOccasions_enum2value_19[] = {
673 1, /* withDCI-Gap(1) */
674 0 /* withoutDCI-Gap(0) */
676 static const asn_INTEGER_specifics_t asn_SPC_pdcch_MonitoringAnyOccasions_specs_19 = {
677 asn_MAP_pdcch_MonitoringAnyOccasions_value2enum_19, /* "tag" => N; sorted by tag */
678 asn_MAP_pdcch_MonitoringAnyOccasions_enum2value_19, /* N => "tag"; sorted by N */
679 2, /* Number of elements in the maps */
680 0, /* Enumeration is not extensible */
681 1, /* Strict enumeration */
682 0, /* Native long size */
685 static const ber_tlv_tag_t asn_DEF_pdcch_MonitoringAnyOccasions_tags_19[] = {
686 (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
687 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
689 static /* Use -fall-defs-global to expose */
690 asn_TYPE_descriptor_t asn_DEF_pdcch_MonitoringAnyOccasions_19 = {
691 "pdcch-MonitoringAnyOccasions",
692 "pdcch-MonitoringAnyOccasions",
693 &asn_OP_NativeEnumerated,
694 asn_DEF_pdcch_MonitoringAnyOccasions_tags_19,
695 sizeof(asn_DEF_pdcch_MonitoringAnyOccasions_tags_19)
696 /sizeof(asn_DEF_pdcch_MonitoringAnyOccasions_tags_19[0]) - 1, /* 1 */
697 asn_DEF_pdcch_MonitoringAnyOccasions_tags_19, /* Same as above */
698 sizeof(asn_DEF_pdcch_MonitoringAnyOccasions_tags_19)
699 /sizeof(asn_DEF_pdcch_MonitoringAnyOccasions_tags_19[0]), /* 2 */
700 { &asn_OER_type_pdcch_MonitoringAnyOccasions_constr_19, &asn_PER_type_pdcch_MonitoringAnyOccasions_constr_19, NativeEnumerated_constraint },
701 0, 0, /* Defined elsewhere */
702 &asn_SPC_pdcch_MonitoringAnyOccasions_specs_19 /* Additional specs */
705 static const asn_INTEGER_enum_map_t asn_MAP_pdcch_MonitoringAnyOccasionsWithSpanGap_value2enum_22[] = {
706 { 0, 9, "supported" }
708 static const unsigned int asn_MAP_pdcch_MonitoringAnyOccasionsWithSpanGap_enum2value_22[] = {
711 static const asn_INTEGER_specifics_t asn_SPC_pdcch_MonitoringAnyOccasionsWithSpanGap_specs_22 = {
712 asn_MAP_pdcch_MonitoringAnyOccasionsWithSpanGap_value2enum_22, /* "tag" => N; sorted by tag */
713 asn_MAP_pdcch_MonitoringAnyOccasionsWithSpanGap_enum2value_22, /* N => "tag"; sorted by N */
714 1, /* Number of elements in the maps */
715 0, /* Enumeration is not extensible */
716 1, /* Strict enumeration */
717 0, /* Native long size */
720 static const ber_tlv_tag_t asn_DEF_pdcch_MonitoringAnyOccasionsWithSpanGap_tags_22[] = {
721 (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
722 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
724 static /* Use -fall-defs-global to expose */
725 asn_TYPE_descriptor_t asn_DEF_pdcch_MonitoringAnyOccasionsWithSpanGap_22 = {
726 "pdcch-MonitoringAnyOccasionsWithSpanGap",
727 "pdcch-MonitoringAnyOccasionsWithSpanGap",
728 &asn_OP_NativeEnumerated,
729 asn_DEF_pdcch_MonitoringAnyOccasionsWithSpanGap_tags_22,
730 sizeof(asn_DEF_pdcch_MonitoringAnyOccasionsWithSpanGap_tags_22)
731 /sizeof(asn_DEF_pdcch_MonitoringAnyOccasionsWithSpanGap_tags_22[0]) - 1, /* 1 */
732 asn_DEF_pdcch_MonitoringAnyOccasionsWithSpanGap_tags_22, /* Same as above */
733 sizeof(asn_DEF_pdcch_MonitoringAnyOccasionsWithSpanGap_tags_22)
734 /sizeof(asn_DEF_pdcch_MonitoringAnyOccasionsWithSpanGap_tags_22[0]), /* 2 */
735 { &asn_OER_type_pdcch_MonitoringAnyOccasionsWithSpanGap_constr_22, &asn_PER_type_pdcch_MonitoringAnyOccasionsWithSpanGap_constr_22, NativeEnumerated_constraint },
736 0, 0, /* Defined elsewhere */
737 &asn_SPC_pdcch_MonitoringAnyOccasionsWithSpanGap_specs_22 /* Additional specs */
740 static const asn_INTEGER_enum_map_t asn_MAP_ue_SpecificUL_DL_Assignment_value2enum_24[] = {
741 { 0, 9, "supported" }
743 static const unsigned int asn_MAP_ue_SpecificUL_DL_Assignment_enum2value_24[] = {
746 static const asn_INTEGER_specifics_t asn_SPC_ue_SpecificUL_DL_Assignment_specs_24 = {
747 asn_MAP_ue_SpecificUL_DL_Assignment_value2enum_24, /* "tag" => N; sorted by tag */
748 asn_MAP_ue_SpecificUL_DL_Assignment_enum2value_24, /* N => "tag"; sorted by N */
749 1, /* Number of elements in the maps */
750 0, /* Enumeration is not extensible */
751 1, /* Strict enumeration */
752 0, /* Native long size */
755 static const ber_tlv_tag_t asn_DEF_ue_SpecificUL_DL_Assignment_tags_24[] = {
756 (ASN_TAG_CLASS_CONTEXT | (10 << 2)),
757 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
759 static /* Use -fall-defs-global to expose */
760 asn_TYPE_descriptor_t asn_DEF_ue_SpecificUL_DL_Assignment_24 = {
761 "ue-SpecificUL-DL-Assignment",
762 "ue-SpecificUL-DL-Assignment",
763 &asn_OP_NativeEnumerated,
764 asn_DEF_ue_SpecificUL_DL_Assignment_tags_24,
765 sizeof(asn_DEF_ue_SpecificUL_DL_Assignment_tags_24)
766 /sizeof(asn_DEF_ue_SpecificUL_DL_Assignment_tags_24[0]) - 1, /* 1 */
767 asn_DEF_ue_SpecificUL_DL_Assignment_tags_24, /* Same as above */
768 sizeof(asn_DEF_ue_SpecificUL_DL_Assignment_tags_24)
769 /sizeof(asn_DEF_ue_SpecificUL_DL_Assignment_tags_24[0]), /* 2 */
770 { &asn_OER_type_ue_SpecificUL_DL_Assignment_constr_24, &asn_PER_type_ue_SpecificUL_DL_Assignment_constr_24, NativeEnumerated_constraint },
771 0, 0, /* Defined elsewhere */
772 &asn_SPC_ue_SpecificUL_DL_Assignment_specs_24 /* Additional specs */
775 static const asn_INTEGER_enum_map_t asn_MAP_searchSpaceSharingCA_DL_value2enum_26[] = {
776 { 0, 9, "supported" }
778 static const unsigned int asn_MAP_searchSpaceSharingCA_DL_enum2value_26[] = {
781 static const asn_INTEGER_specifics_t asn_SPC_searchSpaceSharingCA_DL_specs_26 = {
782 asn_MAP_searchSpaceSharingCA_DL_value2enum_26, /* "tag" => N; sorted by tag */
783 asn_MAP_searchSpaceSharingCA_DL_enum2value_26, /* N => "tag"; sorted by N */
784 1, /* Number of elements in the maps */
785 0, /* Enumeration is not extensible */
786 1, /* Strict enumeration */
787 0, /* Native long size */
790 static const ber_tlv_tag_t asn_DEF_searchSpaceSharingCA_DL_tags_26[] = {
791 (ASN_TAG_CLASS_CONTEXT | (11 << 2)),
792 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
794 static /* Use -fall-defs-global to expose */
795 asn_TYPE_descriptor_t asn_DEF_searchSpaceSharingCA_DL_26 = {
796 "searchSpaceSharingCA-DL",
797 "searchSpaceSharingCA-DL",
798 &asn_OP_NativeEnumerated,
799 asn_DEF_searchSpaceSharingCA_DL_tags_26,
800 sizeof(asn_DEF_searchSpaceSharingCA_DL_tags_26)
801 /sizeof(asn_DEF_searchSpaceSharingCA_DL_tags_26[0]) - 1, /* 1 */
802 asn_DEF_searchSpaceSharingCA_DL_tags_26, /* Same as above */
803 sizeof(asn_DEF_searchSpaceSharingCA_DL_tags_26)
804 /sizeof(asn_DEF_searchSpaceSharingCA_DL_tags_26[0]), /* 2 */
805 { &asn_OER_type_searchSpaceSharingCA_DL_constr_26, &asn_PER_type_searchSpaceSharingCA_DL_constr_26, NativeEnumerated_constraint },
806 0, 0, /* Defined elsewhere */
807 &asn_SPC_searchSpaceSharingCA_DL_specs_26 /* Additional specs */
810 static const asn_INTEGER_enum_map_t asn_MAP_scs_60kHz_value2enum_29[] = {
815 static const unsigned int asn_MAP_scs_60kHz_enum2value_29[] = {
820 static const asn_INTEGER_specifics_t asn_SPC_scs_60kHz_specs_29 = {
821 asn_MAP_scs_60kHz_value2enum_29, /* "tag" => N; sorted by tag */
822 asn_MAP_scs_60kHz_enum2value_29, /* N => "tag"; sorted by N */
823 3, /* Number of elements in the maps */
824 0, /* Enumeration is not extensible */
825 1, /* Strict enumeration */
826 0, /* Native long size */
829 static const ber_tlv_tag_t asn_DEF_scs_60kHz_tags_29[] = {
830 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
831 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
833 static /* Use -fall-defs-global to expose */
834 asn_TYPE_descriptor_t asn_DEF_scs_60kHz_29 = {
837 &asn_OP_NativeEnumerated,
838 asn_DEF_scs_60kHz_tags_29,
839 sizeof(asn_DEF_scs_60kHz_tags_29)
840 /sizeof(asn_DEF_scs_60kHz_tags_29[0]) - 1, /* 1 */
841 asn_DEF_scs_60kHz_tags_29, /* Same as above */
842 sizeof(asn_DEF_scs_60kHz_tags_29)
843 /sizeof(asn_DEF_scs_60kHz_tags_29[0]), /* 2 */
844 { &asn_OER_type_scs_60kHz_constr_29, &asn_PER_type_scs_60kHz_constr_29, NativeEnumerated_constraint },
845 0, 0, /* Defined elsewhere */
846 &asn_SPC_scs_60kHz_specs_29 /* Additional specs */
849 static const asn_INTEGER_enum_map_t asn_MAP_scs_120kHz_value2enum_33[] = {
853 static const unsigned int asn_MAP_scs_120kHz_enum2value_33[] = {
857 static const asn_INTEGER_specifics_t asn_SPC_scs_120kHz_specs_33 = {
858 asn_MAP_scs_120kHz_value2enum_33, /* "tag" => N; sorted by tag */
859 asn_MAP_scs_120kHz_enum2value_33, /* N => "tag"; sorted by N */
860 2, /* Number of elements in the maps */
861 0, /* Enumeration is not extensible */
862 1, /* Strict enumeration */
863 0, /* Native long size */
866 static const ber_tlv_tag_t asn_DEF_scs_120kHz_tags_33[] = {
867 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
868 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
870 static /* Use -fall-defs-global to expose */
871 asn_TYPE_descriptor_t asn_DEF_scs_120kHz_33 = {
874 &asn_OP_NativeEnumerated,
875 asn_DEF_scs_120kHz_tags_33,
876 sizeof(asn_DEF_scs_120kHz_tags_33)
877 /sizeof(asn_DEF_scs_120kHz_tags_33[0]) - 1, /* 1 */
878 asn_DEF_scs_120kHz_tags_33, /* Same as above */
879 sizeof(asn_DEF_scs_120kHz_tags_33)
880 /sizeof(asn_DEF_scs_120kHz_tags_33[0]), /* 2 */
881 { &asn_OER_type_scs_120kHz_constr_33, &asn_PER_type_scs_120kHz_constr_33, NativeEnumerated_constraint },
882 0, 0, /* Defined elsewhere */
883 &asn_SPC_scs_120kHz_specs_33 /* Additional specs */
886 static asn_TYPE_member_t asn_MBR_timeDurationForQCL_28[] = {
887 { ATF_POINTER, 2, offsetof(struct FeatureSetDownlink__timeDurationForQCL, scs_60kHz),
888 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
889 -1, /* IMPLICIT tag at current level */
890 &asn_DEF_scs_60kHz_29,
893 0, 0, /* No default value */
896 { ATF_POINTER, 1, offsetof(struct FeatureSetDownlink__timeDurationForQCL, scs_120kHz),
897 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
898 -1, /* IMPLICIT tag at current level */
899 &asn_DEF_scs_120kHz_33,
902 0, 0, /* No default value */
906 static const int asn_MAP_timeDurationForQCL_oms_28[] = { 0, 1 };
907 static const ber_tlv_tag_t asn_DEF_timeDurationForQCL_tags_28[] = {
908 (ASN_TAG_CLASS_CONTEXT | (12 << 2)),
909 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
911 static const asn_TYPE_tag2member_t asn_MAP_timeDurationForQCL_tag2el_28[] = {
912 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* scs-60kHz */
913 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* scs-120kHz */
915 static asn_SEQUENCE_specifics_t asn_SPC_timeDurationForQCL_specs_28 = {
916 sizeof(struct FeatureSetDownlink__timeDurationForQCL),
917 offsetof(struct FeatureSetDownlink__timeDurationForQCL, _asn_ctx),
918 asn_MAP_timeDurationForQCL_tag2el_28,
919 2, /* Count of tags in the map */
920 asn_MAP_timeDurationForQCL_oms_28, /* Optional members */
921 2, 0, /* Root/Additions */
922 -1, /* First extension addition */
924 static /* Use -fall-defs-global to expose */
925 asn_TYPE_descriptor_t asn_DEF_timeDurationForQCL_28 = {
926 "timeDurationForQCL",
927 "timeDurationForQCL",
929 asn_DEF_timeDurationForQCL_tags_28,
930 sizeof(asn_DEF_timeDurationForQCL_tags_28)
931 /sizeof(asn_DEF_timeDurationForQCL_tags_28[0]) - 1, /* 1 */
932 asn_DEF_timeDurationForQCL_tags_28, /* Same as above */
933 sizeof(asn_DEF_timeDurationForQCL_tags_28)
934 /sizeof(asn_DEF_timeDurationForQCL_tags_28[0]), /* 2 */
935 { 0, 0, SEQUENCE_constraint },
936 asn_MBR_timeDurationForQCL_28,
937 2, /* Elements count */
938 &asn_SPC_timeDurationForQCL_specs_28 /* Additional specs */
941 static const asn_INTEGER_enum_map_t asn_MAP_scs_15kHz_value2enum_37[] = {
946 static const unsigned int asn_MAP_scs_15kHz_enum2value_37[] = {
951 static const asn_INTEGER_specifics_t asn_SPC_scs_15kHz_specs_37 = {
952 asn_MAP_scs_15kHz_value2enum_37, /* "tag" => N; sorted by tag */
953 asn_MAP_scs_15kHz_enum2value_37, /* N => "tag"; sorted by N */
954 3, /* Number of elements in the maps */
955 0, /* Enumeration is not extensible */
956 1, /* Strict enumeration */
957 0, /* Native long size */
960 static const ber_tlv_tag_t asn_DEF_scs_15kHz_tags_37[] = {
961 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
962 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
964 static /* Use -fall-defs-global to expose */
965 asn_TYPE_descriptor_t asn_DEF_scs_15kHz_37 = {
968 &asn_OP_NativeEnumerated,
969 asn_DEF_scs_15kHz_tags_37,
970 sizeof(asn_DEF_scs_15kHz_tags_37)
971 /sizeof(asn_DEF_scs_15kHz_tags_37[0]) - 1, /* 1 */
972 asn_DEF_scs_15kHz_tags_37, /* Same as above */
973 sizeof(asn_DEF_scs_15kHz_tags_37)
974 /sizeof(asn_DEF_scs_15kHz_tags_37[0]), /* 2 */
975 { &asn_OER_type_scs_15kHz_constr_37, &asn_PER_type_scs_15kHz_constr_37, NativeEnumerated_constraint },
976 0, 0, /* Defined elsewhere */
977 &asn_SPC_scs_15kHz_specs_37 /* Additional specs */
980 static const asn_INTEGER_enum_map_t asn_MAP_scs_30kHz_value2enum_41[] = {
985 static const unsigned int asn_MAP_scs_30kHz_enum2value_41[] = {
990 static const asn_INTEGER_specifics_t asn_SPC_scs_30kHz_specs_41 = {
991 asn_MAP_scs_30kHz_value2enum_41, /* "tag" => N; sorted by tag */
992 asn_MAP_scs_30kHz_enum2value_41, /* N => "tag"; sorted by N */
993 3, /* Number of elements in the maps */
994 0, /* Enumeration is not extensible */
995 1, /* Strict enumeration */
996 0, /* Native long size */
999 static const ber_tlv_tag_t asn_DEF_scs_30kHz_tags_41[] = {
1000 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1001 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1003 static /* Use -fall-defs-global to expose */
1004 asn_TYPE_descriptor_t asn_DEF_scs_30kHz_41 = {
1007 &asn_OP_NativeEnumerated,
1008 asn_DEF_scs_30kHz_tags_41,
1009 sizeof(asn_DEF_scs_30kHz_tags_41)
1010 /sizeof(asn_DEF_scs_30kHz_tags_41[0]) - 1, /* 1 */
1011 asn_DEF_scs_30kHz_tags_41, /* Same as above */
1012 sizeof(asn_DEF_scs_30kHz_tags_41)
1013 /sizeof(asn_DEF_scs_30kHz_tags_41[0]), /* 2 */
1014 { &asn_OER_type_scs_30kHz_constr_41, &asn_PER_type_scs_30kHz_constr_41, NativeEnumerated_constraint },
1015 0, 0, /* Defined elsewhere */
1016 &asn_SPC_scs_30kHz_specs_41 /* Additional specs */
1019 static const asn_INTEGER_enum_map_t asn_MAP_scs_60kHz_value2enum_45[] = {
1024 static const unsigned int asn_MAP_scs_60kHz_enum2value_45[] = {
1029 static const asn_INTEGER_specifics_t asn_SPC_scs_60kHz_specs_45 = {
1030 asn_MAP_scs_60kHz_value2enum_45, /* "tag" => N; sorted by tag */
1031 asn_MAP_scs_60kHz_enum2value_45, /* N => "tag"; sorted by N */
1032 3, /* Number of elements in the maps */
1033 0, /* Enumeration is not extensible */
1034 1, /* Strict enumeration */
1035 0, /* Native long size */
1038 static const ber_tlv_tag_t asn_DEF_scs_60kHz_tags_45[] = {
1039 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1040 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1042 static /* Use -fall-defs-global to expose */
1043 asn_TYPE_descriptor_t asn_DEF_scs_60kHz_45 = {
1046 &asn_OP_NativeEnumerated,
1047 asn_DEF_scs_60kHz_tags_45,
1048 sizeof(asn_DEF_scs_60kHz_tags_45)
1049 /sizeof(asn_DEF_scs_60kHz_tags_45[0]) - 1, /* 1 */
1050 asn_DEF_scs_60kHz_tags_45, /* Same as above */
1051 sizeof(asn_DEF_scs_60kHz_tags_45)
1052 /sizeof(asn_DEF_scs_60kHz_tags_45[0]), /* 2 */
1053 { &asn_OER_type_scs_60kHz_constr_45, &asn_PER_type_scs_60kHz_constr_45, NativeEnumerated_constraint },
1054 0, 0, /* Defined elsewhere */
1055 &asn_SPC_scs_60kHz_specs_45 /* Additional specs */
1058 static const asn_INTEGER_enum_map_t asn_MAP_scs_120kHz_value2enum_49[] = {
1063 static const unsigned int asn_MAP_scs_120kHz_enum2value_49[] = {
1068 static const asn_INTEGER_specifics_t asn_SPC_scs_120kHz_specs_49 = {
1069 asn_MAP_scs_120kHz_value2enum_49, /* "tag" => N; sorted by tag */
1070 asn_MAP_scs_120kHz_enum2value_49, /* N => "tag"; sorted by N */
1071 3, /* Number of elements in the maps */
1072 0, /* Enumeration is not extensible */
1073 1, /* Strict enumeration */
1074 0, /* Native long size */
1077 static const ber_tlv_tag_t asn_DEF_scs_120kHz_tags_49[] = {
1078 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
1079 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1081 static /* Use -fall-defs-global to expose */
1082 asn_TYPE_descriptor_t asn_DEF_scs_120kHz_49 = {
1085 &asn_OP_NativeEnumerated,
1086 asn_DEF_scs_120kHz_tags_49,
1087 sizeof(asn_DEF_scs_120kHz_tags_49)
1088 /sizeof(asn_DEF_scs_120kHz_tags_49[0]) - 1, /* 1 */
1089 asn_DEF_scs_120kHz_tags_49, /* Same as above */
1090 sizeof(asn_DEF_scs_120kHz_tags_49)
1091 /sizeof(asn_DEF_scs_120kHz_tags_49[0]), /* 2 */
1092 { &asn_OER_type_scs_120kHz_constr_49, &asn_PER_type_scs_120kHz_constr_49, NativeEnumerated_constraint },
1093 0, 0, /* Defined elsewhere */
1094 &asn_SPC_scs_120kHz_specs_49 /* Additional specs */
1097 static asn_TYPE_member_t asn_MBR_pdsch_ProcessingType1_DifferentTB_PerSlot_36[] = {
1098 { ATF_POINTER, 4, offsetof(struct FeatureSetDownlink__pdsch_ProcessingType1_DifferentTB_PerSlot, scs_15kHz),
1099 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1100 -1, /* IMPLICIT tag at current level */
1101 &asn_DEF_scs_15kHz_37,
1104 0, 0, /* No default value */
1107 { ATF_POINTER, 3, offsetof(struct FeatureSetDownlink__pdsch_ProcessingType1_DifferentTB_PerSlot, scs_30kHz),
1108 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1109 -1, /* IMPLICIT tag at current level */
1110 &asn_DEF_scs_30kHz_41,
1113 0, 0, /* No default value */
1116 { ATF_POINTER, 2, offsetof(struct FeatureSetDownlink__pdsch_ProcessingType1_DifferentTB_PerSlot, scs_60kHz),
1117 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1118 -1, /* IMPLICIT tag at current level */
1119 &asn_DEF_scs_60kHz_45,
1122 0, 0, /* No default value */
1125 { ATF_POINTER, 1, offsetof(struct FeatureSetDownlink__pdsch_ProcessingType1_DifferentTB_PerSlot, scs_120kHz),
1126 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
1127 -1, /* IMPLICIT tag at current level */
1128 &asn_DEF_scs_120kHz_49,
1131 0, 0, /* No default value */
1135 static const int asn_MAP_pdsch_ProcessingType1_DifferentTB_PerSlot_oms_36[] = { 0, 1, 2, 3 };
1136 static const ber_tlv_tag_t asn_DEF_pdsch_ProcessingType1_DifferentTB_PerSlot_tags_36[] = {
1137 (ASN_TAG_CLASS_CONTEXT | (13 << 2)),
1138 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1140 static const asn_TYPE_tag2member_t asn_MAP_pdsch_ProcessingType1_DifferentTB_PerSlot_tag2el_36[] = {
1141 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* scs-15kHz */
1142 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* scs-30kHz */
1143 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* scs-60kHz */
1144 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* scs-120kHz */
1146 static asn_SEQUENCE_specifics_t asn_SPC_pdsch_ProcessingType1_DifferentTB_PerSlot_specs_36 = {
1147 sizeof(struct FeatureSetDownlink__pdsch_ProcessingType1_DifferentTB_PerSlot),
1148 offsetof(struct FeatureSetDownlink__pdsch_ProcessingType1_DifferentTB_PerSlot, _asn_ctx),
1149 asn_MAP_pdsch_ProcessingType1_DifferentTB_PerSlot_tag2el_36,
1150 4, /* Count of tags in the map */
1151 asn_MAP_pdsch_ProcessingType1_DifferentTB_PerSlot_oms_36, /* Optional members */
1152 4, 0, /* Root/Additions */
1153 -1, /* First extension addition */
1155 static /* Use -fall-defs-global to expose */
1156 asn_TYPE_descriptor_t asn_DEF_pdsch_ProcessingType1_DifferentTB_PerSlot_36 = {
1157 "pdsch-ProcessingType1-DifferentTB-PerSlot",
1158 "pdsch-ProcessingType1-DifferentTB-PerSlot",
1160 asn_DEF_pdsch_ProcessingType1_DifferentTB_PerSlot_tags_36,
1161 sizeof(asn_DEF_pdsch_ProcessingType1_DifferentTB_PerSlot_tags_36)
1162 /sizeof(asn_DEF_pdsch_ProcessingType1_DifferentTB_PerSlot_tags_36[0]) - 1, /* 1 */
1163 asn_DEF_pdsch_ProcessingType1_DifferentTB_PerSlot_tags_36, /* Same as above */
1164 sizeof(asn_DEF_pdsch_ProcessingType1_DifferentTB_PerSlot_tags_36)
1165 /sizeof(asn_DEF_pdsch_ProcessingType1_DifferentTB_PerSlot_tags_36[0]), /* 2 */
1166 { 0, 0, SEQUENCE_constraint },
1167 asn_MBR_pdsch_ProcessingType1_DifferentTB_PerSlot_36,
1168 4, /* Elements count */
1169 &asn_SPC_pdsch_ProcessingType1_DifferentTB_PerSlot_specs_36 /* Additional specs */
1172 static asn_TYPE_member_t asn_MBR_typeI_SinglePanelCodebookList_54[] = {
1173 { ATF_POINTER, 0, 0,
1174 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
1176 &asn_DEF_TypeI_SinglePanelCodebook,
1179 0, 0, /* No default value */
1183 static const ber_tlv_tag_t asn_DEF_typeI_SinglePanelCodebookList_tags_54[] = {
1184 (ASN_TAG_CLASS_CONTEXT | (15 << 2)),
1185 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1187 static asn_SET_OF_specifics_t asn_SPC_typeI_SinglePanelCodebookList_specs_54 = {
1188 sizeof(struct FeatureSetDownlink__typeI_SinglePanelCodebookList),
1189 offsetof(struct FeatureSetDownlink__typeI_SinglePanelCodebookList, _asn_ctx),
1190 0, /* XER encoding is XMLDelimitedItemList */
1192 static /* Use -fall-defs-global to expose */
1193 asn_TYPE_descriptor_t asn_DEF_typeI_SinglePanelCodebookList_54 = {
1194 "typeI-SinglePanelCodebookList",
1195 "typeI-SinglePanelCodebookList",
1196 &asn_OP_SEQUENCE_OF,
1197 asn_DEF_typeI_SinglePanelCodebookList_tags_54,
1198 sizeof(asn_DEF_typeI_SinglePanelCodebookList_tags_54)
1199 /sizeof(asn_DEF_typeI_SinglePanelCodebookList_tags_54[0]) - 1, /* 1 */
1200 asn_DEF_typeI_SinglePanelCodebookList_tags_54, /* Same as above */
1201 sizeof(asn_DEF_typeI_SinglePanelCodebookList_tags_54)
1202 /sizeof(asn_DEF_typeI_SinglePanelCodebookList_tags_54[0]), /* 2 */
1203 { &asn_OER_type_typeI_SinglePanelCodebookList_constr_54, &asn_PER_type_typeI_SinglePanelCodebookList_constr_54, SEQUENCE_OF_constraint },
1204 asn_MBR_typeI_SinglePanelCodebookList_54,
1205 1, /* Single element */
1206 &asn_SPC_typeI_SinglePanelCodebookList_specs_54 /* Additional specs */
1209 static asn_TYPE_member_t asn_MBR_typeI_MultiPanelCodebookList_56[] = {
1210 { ATF_POINTER, 0, 0,
1211 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
1213 &asn_DEF_TypeI_MultiPanelCodebook,
1216 0, 0, /* No default value */
1220 static const ber_tlv_tag_t asn_DEF_typeI_MultiPanelCodebookList_tags_56[] = {
1221 (ASN_TAG_CLASS_CONTEXT | (16 << 2)),
1222 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1224 static asn_SET_OF_specifics_t asn_SPC_typeI_MultiPanelCodebookList_specs_56 = {
1225 sizeof(struct FeatureSetDownlink__typeI_MultiPanelCodebookList),
1226 offsetof(struct FeatureSetDownlink__typeI_MultiPanelCodebookList, _asn_ctx),
1227 0, /* XER encoding is XMLDelimitedItemList */
1229 static /* Use -fall-defs-global to expose */
1230 asn_TYPE_descriptor_t asn_DEF_typeI_MultiPanelCodebookList_56 = {
1231 "typeI-MultiPanelCodebookList",
1232 "typeI-MultiPanelCodebookList",
1233 &asn_OP_SEQUENCE_OF,
1234 asn_DEF_typeI_MultiPanelCodebookList_tags_56,
1235 sizeof(asn_DEF_typeI_MultiPanelCodebookList_tags_56)
1236 /sizeof(asn_DEF_typeI_MultiPanelCodebookList_tags_56[0]) - 1, /* 1 */
1237 asn_DEF_typeI_MultiPanelCodebookList_tags_56, /* Same as above */
1238 sizeof(asn_DEF_typeI_MultiPanelCodebookList_tags_56)
1239 /sizeof(asn_DEF_typeI_MultiPanelCodebookList_tags_56[0]), /* 2 */
1240 { &asn_OER_type_typeI_MultiPanelCodebookList_constr_56, &asn_PER_type_typeI_MultiPanelCodebookList_constr_56, SEQUENCE_OF_constraint },
1241 asn_MBR_typeI_MultiPanelCodebookList_56,
1242 1, /* Single element */
1243 &asn_SPC_typeI_MultiPanelCodebookList_specs_56 /* Additional specs */
1246 static asn_TYPE_member_t asn_MBR_typeII_CodebookList_58[] = {
1247 { ATF_POINTER, 0, 0,
1248 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
1250 &asn_DEF_TypeII_Codebook,
1253 0, 0, /* No default value */
1257 static const ber_tlv_tag_t asn_DEF_typeII_CodebookList_tags_58[] = {
1258 (ASN_TAG_CLASS_CONTEXT | (17 << 2)),
1259 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1261 static asn_SET_OF_specifics_t asn_SPC_typeII_CodebookList_specs_58 = {
1262 sizeof(struct FeatureSetDownlink__typeII_CodebookList),
1263 offsetof(struct FeatureSetDownlink__typeII_CodebookList, _asn_ctx),
1264 0, /* XER encoding is XMLDelimitedItemList */
1266 static /* Use -fall-defs-global to expose */
1267 asn_TYPE_descriptor_t asn_DEF_typeII_CodebookList_58 = {
1268 "typeII-CodebookList",
1269 "typeII-CodebookList",
1270 &asn_OP_SEQUENCE_OF,
1271 asn_DEF_typeII_CodebookList_tags_58,
1272 sizeof(asn_DEF_typeII_CodebookList_tags_58)
1273 /sizeof(asn_DEF_typeII_CodebookList_tags_58[0]) - 1, /* 1 */
1274 asn_DEF_typeII_CodebookList_tags_58, /* Same as above */
1275 sizeof(asn_DEF_typeII_CodebookList_tags_58)
1276 /sizeof(asn_DEF_typeII_CodebookList_tags_58[0]), /* 2 */
1277 { &asn_OER_type_typeII_CodebookList_constr_58, &asn_PER_type_typeII_CodebookList_constr_58, SEQUENCE_OF_constraint },
1278 asn_MBR_typeII_CodebookList_58,
1279 1, /* Single element */
1280 &asn_SPC_typeII_CodebookList_specs_58 /* Additional specs */
1283 static asn_TYPE_member_t asn_MBR_typeII_CodebookPortSelectionList_60[] = {
1284 { ATF_POINTER, 0, 0,
1285 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
1287 &asn_DEF_TypeII_CodebookPortSelection,
1290 0, 0, /* No default value */
1294 static const ber_tlv_tag_t asn_DEF_typeII_CodebookPortSelectionList_tags_60[] = {
1295 (ASN_TAG_CLASS_CONTEXT | (18 << 2)),
1296 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1298 static asn_SET_OF_specifics_t asn_SPC_typeII_CodebookPortSelectionList_specs_60 = {
1299 sizeof(struct FeatureSetDownlink__typeII_CodebookPortSelectionList),
1300 offsetof(struct FeatureSetDownlink__typeII_CodebookPortSelectionList, _asn_ctx),
1301 0, /* XER encoding is XMLDelimitedItemList */
1303 static /* Use -fall-defs-global to expose */
1304 asn_TYPE_descriptor_t asn_DEF_typeII_CodebookPortSelectionList_60 = {
1305 "typeII-CodebookPortSelectionList",
1306 "typeII-CodebookPortSelectionList",
1307 &asn_OP_SEQUENCE_OF,
1308 asn_DEF_typeII_CodebookPortSelectionList_tags_60,
1309 sizeof(asn_DEF_typeII_CodebookPortSelectionList_tags_60)
1310 /sizeof(asn_DEF_typeII_CodebookPortSelectionList_tags_60[0]) - 1, /* 1 */
1311 asn_DEF_typeII_CodebookPortSelectionList_tags_60, /* Same as above */
1312 sizeof(asn_DEF_typeII_CodebookPortSelectionList_tags_60)
1313 /sizeof(asn_DEF_typeII_CodebookPortSelectionList_tags_60[0]), /* 2 */
1314 { &asn_OER_type_typeII_CodebookPortSelectionList_constr_60, &asn_PER_type_typeII_CodebookPortSelectionList_constr_60, SEQUENCE_OF_constraint },
1315 asn_MBR_typeII_CodebookPortSelectionList_60,
1316 1, /* Single element */
1317 &asn_SPC_typeII_CodebookPortSelectionList_specs_60 /* Additional specs */
1320 asn_TYPE_member_t asn_MBR_FeatureSetDownlink_1[] = {
1321 { ATF_NOFLAGS, 0, offsetof(struct FeatureSetDownlink, featureSetListPerDownlinkCC),
1322 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1324 &asn_DEF_featureSetListPerDownlinkCC_2,
1326 { &asn_OER_memb_featureSetListPerDownlinkCC_constr_2, &asn_PER_memb_featureSetListPerDownlinkCC_constr_2, memb_featureSetListPerDownlinkCC_constraint_1 },
1327 0, 0, /* No default value */
1328 "featureSetListPerDownlinkCC"
1330 { ATF_POINTER, 18, offsetof(struct FeatureSetDownlink, intraBandFreqSeparationDL),
1331 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1332 -1, /* IMPLICIT tag at current level */
1333 &asn_DEF_FreqSeparationClass,
1336 0, 0, /* No default value */
1337 "intraBandFreqSeparationDL"
1339 { ATF_POINTER, 17, offsetof(struct FeatureSetDownlink, scalingFactor),
1340 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1341 -1, /* IMPLICIT tag at current level */
1342 &asn_DEF_scalingFactor_5,
1345 0, 0, /* No default value */
1348 { ATF_POINTER, 16, offsetof(struct FeatureSetDownlink, crossCarrierScheduling_OtherSCS),
1349 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
1350 -1, /* IMPLICIT tag at current level */
1351 &asn_DEF_crossCarrierScheduling_OtherSCS_9,
1354 0, 0, /* No default value */
1355 "crossCarrierScheduling-OtherSCS"
1357 { ATF_POINTER, 15, offsetof(struct FeatureSetDownlink, scellWithoutSSB),
1358 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
1359 -1, /* IMPLICIT tag at current level */
1360 &asn_DEF_scellWithoutSSB_11,
1363 0, 0, /* No default value */
1366 { ATF_POINTER, 14, offsetof(struct FeatureSetDownlink, csi_RS_MeasSCellWithoutSSB),
1367 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
1368 -1, /* IMPLICIT tag at current level */
1369 &asn_DEF_csi_RS_MeasSCellWithoutSSB_13,
1372 0, 0, /* No default value */
1373 "csi-RS-MeasSCellWithoutSSB"
1375 { ATF_POINTER, 13, offsetof(struct FeatureSetDownlink, srs_AssocCSI_RS),
1376 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
1377 -1, /* IMPLICIT tag at current level */
1378 &asn_DEF_srs_AssocCSI_RS_15,
1381 0, 0, /* No default value */
1384 { ATF_POINTER, 12, offsetof(struct FeatureSetDownlink, type1_3_CSS),
1385 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
1386 -1, /* IMPLICIT tag at current level */
1387 &asn_DEF_type1_3_CSS_17,
1390 0, 0, /* No default value */
1393 { ATF_POINTER, 11, offsetof(struct FeatureSetDownlink, pdcch_MonitoringAnyOccasions),
1394 (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
1395 -1, /* IMPLICIT tag at current level */
1396 &asn_DEF_pdcch_MonitoringAnyOccasions_19,
1399 0, 0, /* No default value */
1400 "pdcch-MonitoringAnyOccasions"
1402 { ATF_POINTER, 10, offsetof(struct FeatureSetDownlink, pdcch_MonitoringAnyOccasionsWithSpanGap),
1403 (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
1404 -1, /* IMPLICIT tag at current level */
1405 &asn_DEF_pdcch_MonitoringAnyOccasionsWithSpanGap_22,
1408 0, 0, /* No default value */
1409 "pdcch-MonitoringAnyOccasionsWithSpanGap"
1411 { ATF_POINTER, 9, offsetof(struct FeatureSetDownlink, ue_SpecificUL_DL_Assignment),
1412 (ASN_TAG_CLASS_CONTEXT | (10 << 2)),
1413 -1, /* IMPLICIT tag at current level */
1414 &asn_DEF_ue_SpecificUL_DL_Assignment_24,
1417 0, 0, /* No default value */
1418 "ue-SpecificUL-DL-Assignment"
1420 { ATF_POINTER, 8, offsetof(struct FeatureSetDownlink, searchSpaceSharingCA_DL),
1421 (ASN_TAG_CLASS_CONTEXT | (11 << 2)),
1422 -1, /* IMPLICIT tag at current level */
1423 &asn_DEF_searchSpaceSharingCA_DL_26,
1426 0, 0, /* No default value */
1427 "searchSpaceSharingCA-DL"
1429 { ATF_POINTER, 7, offsetof(struct FeatureSetDownlink, timeDurationForQCL),
1430 (ASN_TAG_CLASS_CONTEXT | (12 << 2)),
1432 &asn_DEF_timeDurationForQCL_28,
1435 0, 0, /* No default value */
1436 "timeDurationForQCL"
1438 { ATF_POINTER, 6, offsetof(struct FeatureSetDownlink, pdsch_ProcessingType1_DifferentTB_PerSlot),
1439 (ASN_TAG_CLASS_CONTEXT | (13 << 2)),
1441 &asn_DEF_pdsch_ProcessingType1_DifferentTB_PerSlot_36,
1444 0, 0, /* No default value */
1445 "pdsch-ProcessingType1-DifferentTB-PerSlot"
1447 { ATF_POINTER, 5, offsetof(struct FeatureSetDownlink, csi_RS_IM_ReceptionForFeedback),
1448 (ASN_TAG_CLASS_CONTEXT | (14 << 2)),
1449 -1, /* IMPLICIT tag at current level */
1450 &asn_DEF_CSI_RS_IM_ReceptionForFeedback,
1453 0, 0, /* No default value */
1454 "csi-RS-IM-ReceptionForFeedback"
1456 { ATF_POINTER, 4, offsetof(struct FeatureSetDownlink, typeI_SinglePanelCodebookList),
1457 (ASN_TAG_CLASS_CONTEXT | (15 << 2)),
1459 &asn_DEF_typeI_SinglePanelCodebookList_54,
1461 { &asn_OER_memb_typeI_SinglePanelCodebookList_constr_54, &asn_PER_memb_typeI_SinglePanelCodebookList_constr_54, memb_typeI_SinglePanelCodebookList_constraint_1 },
1462 0, 0, /* No default value */
1463 "typeI-SinglePanelCodebookList"
1465 { ATF_POINTER, 3, offsetof(struct FeatureSetDownlink, typeI_MultiPanelCodebookList),
1466 (ASN_TAG_CLASS_CONTEXT | (16 << 2)),
1468 &asn_DEF_typeI_MultiPanelCodebookList_56,
1470 { &asn_OER_memb_typeI_MultiPanelCodebookList_constr_56, &asn_PER_memb_typeI_MultiPanelCodebookList_constr_56, memb_typeI_MultiPanelCodebookList_constraint_1 },
1471 0, 0, /* No default value */
1472 "typeI-MultiPanelCodebookList"
1474 { ATF_POINTER, 2, offsetof(struct FeatureSetDownlink, typeII_CodebookList),
1475 (ASN_TAG_CLASS_CONTEXT | (17 << 2)),
1477 &asn_DEF_typeII_CodebookList_58,
1479 { &asn_OER_memb_typeII_CodebookList_constr_58, &asn_PER_memb_typeII_CodebookList_constr_58, memb_typeII_CodebookList_constraint_1 },
1480 0, 0, /* No default value */
1481 "typeII-CodebookList"
1483 { ATF_POINTER, 1, offsetof(struct FeatureSetDownlink, typeII_CodebookPortSelectionList),
1484 (ASN_TAG_CLASS_CONTEXT | (18 << 2)),
1486 &asn_DEF_typeII_CodebookPortSelectionList_60,
1488 { &asn_OER_memb_typeII_CodebookPortSelectionList_constr_60, &asn_PER_memb_typeII_CodebookPortSelectionList_constr_60, memb_typeII_CodebookPortSelectionList_constraint_1 },
1489 0, 0, /* No default value */
1490 "typeII-CodebookPortSelectionList"
1493 static const int asn_MAP_FeatureSetDownlink_oms_1[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18 };
1494 static const ber_tlv_tag_t asn_DEF_FeatureSetDownlink_tags_1[] = {
1495 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1497 static const asn_TYPE_tag2member_t asn_MAP_FeatureSetDownlink_tag2el_1[] = {
1498 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* featureSetListPerDownlinkCC */
1499 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* intraBandFreqSeparationDL */
1500 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* scalingFactor */
1501 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* crossCarrierScheduling-OtherSCS */
1502 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* scellWithoutSSB */
1503 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* csi-RS-MeasSCellWithoutSSB */
1504 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* srs-AssocCSI-RS */
1505 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* type1-3-CSS */
1506 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* pdcch-MonitoringAnyOccasions */
1507 { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* pdcch-MonitoringAnyOccasionsWithSpanGap */
1508 { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* ue-SpecificUL-DL-Assignment */
1509 { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* searchSpaceSharingCA-DL */
1510 { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* timeDurationForQCL */
1511 { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* pdsch-ProcessingType1-DifferentTB-PerSlot */
1512 { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* csi-RS-IM-ReceptionForFeedback */
1513 { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* typeI-SinglePanelCodebookList */
1514 { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* typeI-MultiPanelCodebookList */
1515 { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* typeII-CodebookList */
1516 { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 } /* typeII-CodebookPortSelectionList */
1518 asn_SEQUENCE_specifics_t asn_SPC_FeatureSetDownlink_specs_1 = {
1519 sizeof(struct FeatureSetDownlink),
1520 offsetof(struct FeatureSetDownlink, _asn_ctx),
1521 asn_MAP_FeatureSetDownlink_tag2el_1,
1522 19, /* Count of tags in the map */
1523 asn_MAP_FeatureSetDownlink_oms_1, /* Optional members */
1524 18, 0, /* Root/Additions */
1525 -1, /* First extension addition */
1527 asn_TYPE_descriptor_t asn_DEF_FeatureSetDownlink = {
1528 "FeatureSetDownlink",
1529 "FeatureSetDownlink",
1531 asn_DEF_FeatureSetDownlink_tags_1,
1532 sizeof(asn_DEF_FeatureSetDownlink_tags_1)
1533 /sizeof(asn_DEF_FeatureSetDownlink_tags_1[0]), /* 1 */
1534 asn_DEF_FeatureSetDownlink_tags_1, /* Same as above */
1535 sizeof(asn_DEF_FeatureSetDownlink_tags_1)
1536 /sizeof(asn_DEF_FeatureSetDownlink_tags_1[0]), /* 1 */
1537 { 0, 0, SEQUENCE_constraint },
1538 asn_MBR_FeatureSetDownlink_1,
1539 19, /* Elements count */
1540 &asn_SPC_FeatureSetDownlink_specs_1 /* Additional specs */