2 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3 * From ASN.1 module "NR-RRC-Definitions"
4 * found in "./22April22_Paging/rrc_15.3_asn.asn1"
5 * `asn1c -D ./22April22_Paging -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
8 #include "PDCCH-Config.h"
10 #include "ControlResourceSet.h"
11 #include "SearchSpace.h"
12 #include "DownlinkPreemption.h"
13 #include "PUSCH-TPC-CommandConfig.h"
14 #include "PUCCH-TPC-CommandConfig.h"
15 #include "SRS-TPC-CommandConfig.h"
17 memb_controlResourceSetToAddModList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
18 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
22 ASN__CTFAIL(app_key, td, sptr,
23 "%s: value not given (%s:%d)",
24 td->name, __FILE__, __LINE__);
28 /* Determine the number of elements */
29 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
31 if((size >= 1 && size <= 3)) {
32 /* Perform validation of the inner elements */
33 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
35 ASN__CTFAIL(app_key, td, sptr,
36 "%s: constraint failed (%s:%d)",
37 td->name, __FILE__, __LINE__);
43 memb_controlResourceSetToReleaseList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
44 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
48 ASN__CTFAIL(app_key, td, sptr,
49 "%s: value not given (%s:%d)",
50 td->name, __FILE__, __LINE__);
54 /* Determine the number of elements */
55 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
57 if((size >= 1 && size <= 3)) {
58 /* Perform validation of the inner elements */
59 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
61 ASN__CTFAIL(app_key, td, sptr,
62 "%s: constraint failed (%s:%d)",
63 td->name, __FILE__, __LINE__);
69 memb_searchSpacesToAddModList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
70 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
74 ASN__CTFAIL(app_key, td, sptr,
75 "%s: value not given (%s:%d)",
76 td->name, __FILE__, __LINE__);
80 /* Determine the number of elements */
81 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
83 if((size >= 1 && size <= 10)) {
84 /* Perform validation of the inner elements */
85 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
87 ASN__CTFAIL(app_key, td, sptr,
88 "%s: constraint failed (%s:%d)",
89 td->name, __FILE__, __LINE__);
95 memb_searchSpacesToReleaseList_constraint_1(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 <= 10)) {
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__);
120 static asn_oer_constraints_t asn_OER_type_controlResourceSetToAddModList_constr_2 CC_NOTUSED = {
122 -1 /* (SIZE(1..3)) */};
123 static asn_per_constraints_t asn_PER_type_controlResourceSetToAddModList_constr_2 CC_NOTUSED = {
124 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
125 { APC_CONSTRAINED, 2, 2, 1, 3 } /* (SIZE(1..3)) */,
126 0, 0 /* No PER value map */
128 static asn_oer_constraints_t asn_OER_type_controlResourceSetToReleaseList_constr_4 CC_NOTUSED = {
130 -1 /* (SIZE(1..3)) */};
131 static asn_per_constraints_t asn_PER_type_controlResourceSetToReleaseList_constr_4 CC_NOTUSED = {
132 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
133 { APC_CONSTRAINED, 2, 2, 1, 3 } /* (SIZE(1..3)) */,
134 0, 0 /* No PER value map */
136 static asn_oer_constraints_t asn_OER_type_searchSpacesToAddModList_constr_6 CC_NOTUSED = {
138 -1 /* (SIZE(1..10)) */};
139 static asn_per_constraints_t asn_PER_type_searchSpacesToAddModList_constr_6 CC_NOTUSED = {
140 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
141 { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */,
142 0, 0 /* No PER value map */
144 static asn_oer_constraints_t asn_OER_type_searchSpacesToReleaseList_constr_8 CC_NOTUSED = {
146 -1 /* (SIZE(1..10)) */};
147 static asn_per_constraints_t asn_PER_type_searchSpacesToReleaseList_constr_8 CC_NOTUSED = {
148 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
149 { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */,
150 0, 0 /* No PER value map */
152 static asn_oer_constraints_t asn_OER_type_downlinkPreemption_constr_10 CC_NOTUSED = {
155 static asn_per_constraints_t asn_PER_type_downlinkPreemption_constr_10 CC_NOTUSED = {
156 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
157 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
158 0, 0 /* No PER value map */
160 static asn_oer_constraints_t asn_OER_type_tpc_PUSCH_constr_13 CC_NOTUSED = {
163 static asn_per_constraints_t asn_PER_type_tpc_PUSCH_constr_13 CC_NOTUSED = {
164 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
165 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
166 0, 0 /* No PER value map */
168 static asn_oer_constraints_t asn_OER_type_tpc_PUCCH_constr_16 CC_NOTUSED = {
171 static asn_per_constraints_t asn_PER_type_tpc_PUCCH_constr_16 CC_NOTUSED = {
172 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
173 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
174 0, 0 /* No PER value map */
176 static asn_oer_constraints_t asn_OER_type_tpc_SRS_constr_19 CC_NOTUSED = {
179 static asn_per_constraints_t asn_PER_type_tpc_SRS_constr_19 CC_NOTUSED = {
180 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
181 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
182 0, 0 /* No PER value map */
184 static asn_oer_constraints_t asn_OER_memb_controlResourceSetToAddModList_constr_2 CC_NOTUSED = {
186 -1 /* (SIZE(1..3)) */};
187 static asn_per_constraints_t asn_PER_memb_controlResourceSetToAddModList_constr_2 CC_NOTUSED = {
188 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
189 { APC_CONSTRAINED, 2, 2, 1, 3 } /* (SIZE(1..3)) */,
190 0, 0 /* No PER value map */
192 static asn_oer_constraints_t asn_OER_memb_controlResourceSetToReleaseList_constr_4 CC_NOTUSED = {
194 -1 /* (SIZE(1..3)) */};
195 static asn_per_constraints_t asn_PER_memb_controlResourceSetToReleaseList_constr_4 CC_NOTUSED = {
196 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
197 { APC_CONSTRAINED, 2, 2, 1, 3 } /* (SIZE(1..3)) */,
198 0, 0 /* No PER value map */
200 static asn_oer_constraints_t asn_OER_memb_searchSpacesToAddModList_constr_6 CC_NOTUSED = {
202 -1 /* (SIZE(1..10)) */};
203 static asn_per_constraints_t asn_PER_memb_searchSpacesToAddModList_constr_6 CC_NOTUSED = {
204 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
205 { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */,
206 0, 0 /* No PER value map */
208 static asn_oer_constraints_t asn_OER_memb_searchSpacesToReleaseList_constr_8 CC_NOTUSED = {
210 -1 /* (SIZE(1..10)) */};
211 static asn_per_constraints_t asn_PER_memb_searchSpacesToReleaseList_constr_8 CC_NOTUSED = {
212 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
213 { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */,
214 0, 0 /* No PER value map */
216 static asn_TYPE_member_t asn_MBR_controlResourceSetToAddModList_2[] = {
218 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
220 &asn_DEF_ControlResourceSet,
223 0, 0, /* No default value */
227 static const ber_tlv_tag_t asn_DEF_controlResourceSetToAddModList_tags_2[] = {
228 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
229 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
231 static asn_SET_OF_specifics_t asn_SPC_controlResourceSetToAddModList_specs_2 = {
232 sizeof(struct PDCCH_Config__controlResourceSetToAddModList),
233 offsetof(struct PDCCH_Config__controlResourceSetToAddModList, _asn_ctx),
234 0, /* XER encoding is XMLDelimitedItemList */
236 static /* Use -fall-defs-global to expose */
237 asn_TYPE_descriptor_t asn_DEF_controlResourceSetToAddModList_2 = {
238 "controlResourceSetToAddModList",
239 "controlResourceSetToAddModList",
241 asn_DEF_controlResourceSetToAddModList_tags_2,
242 sizeof(asn_DEF_controlResourceSetToAddModList_tags_2)
243 /sizeof(asn_DEF_controlResourceSetToAddModList_tags_2[0]) - 1, /* 1 */
244 asn_DEF_controlResourceSetToAddModList_tags_2, /* Same as above */
245 sizeof(asn_DEF_controlResourceSetToAddModList_tags_2)
246 /sizeof(asn_DEF_controlResourceSetToAddModList_tags_2[0]), /* 2 */
247 { &asn_OER_type_controlResourceSetToAddModList_constr_2, &asn_PER_type_controlResourceSetToAddModList_constr_2, SEQUENCE_OF_constraint },
248 asn_MBR_controlResourceSetToAddModList_2,
249 1, /* Single element */
250 &asn_SPC_controlResourceSetToAddModList_specs_2 /* Additional specs */
253 static asn_TYPE_member_t asn_MBR_controlResourceSetToReleaseList_4[] = {
255 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
257 &asn_DEF_ControlResourceSetId,
260 0, 0, /* No default value */
264 static const ber_tlv_tag_t asn_DEF_controlResourceSetToReleaseList_tags_4[] = {
265 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
266 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
268 static asn_SET_OF_specifics_t asn_SPC_controlResourceSetToReleaseList_specs_4 = {
269 sizeof(struct PDCCH_Config__controlResourceSetToReleaseList),
270 offsetof(struct PDCCH_Config__controlResourceSetToReleaseList, _asn_ctx),
271 0, /* XER encoding is XMLDelimitedItemList */
273 static /* Use -fall-defs-global to expose */
274 asn_TYPE_descriptor_t asn_DEF_controlResourceSetToReleaseList_4 = {
275 "controlResourceSetToReleaseList",
276 "controlResourceSetToReleaseList",
278 asn_DEF_controlResourceSetToReleaseList_tags_4,
279 sizeof(asn_DEF_controlResourceSetToReleaseList_tags_4)
280 /sizeof(asn_DEF_controlResourceSetToReleaseList_tags_4[0]) - 1, /* 1 */
281 asn_DEF_controlResourceSetToReleaseList_tags_4, /* Same as above */
282 sizeof(asn_DEF_controlResourceSetToReleaseList_tags_4)
283 /sizeof(asn_DEF_controlResourceSetToReleaseList_tags_4[0]), /* 2 */
284 { &asn_OER_type_controlResourceSetToReleaseList_constr_4, &asn_PER_type_controlResourceSetToReleaseList_constr_4, SEQUENCE_OF_constraint },
285 asn_MBR_controlResourceSetToReleaseList_4,
286 1, /* Single element */
287 &asn_SPC_controlResourceSetToReleaseList_specs_4 /* Additional specs */
290 static asn_TYPE_member_t asn_MBR_searchSpacesToAddModList_6[] = {
292 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
294 &asn_DEF_SearchSpace,
297 0, 0, /* No default value */
301 static const ber_tlv_tag_t asn_DEF_searchSpacesToAddModList_tags_6[] = {
302 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
303 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
305 static asn_SET_OF_specifics_t asn_SPC_searchSpacesToAddModList_specs_6 = {
306 sizeof(struct PDCCH_Config__searchSpacesToAddModList),
307 offsetof(struct PDCCH_Config__searchSpacesToAddModList, _asn_ctx),
308 0, /* XER encoding is XMLDelimitedItemList */
310 static /* Use -fall-defs-global to expose */
311 asn_TYPE_descriptor_t asn_DEF_searchSpacesToAddModList_6 = {
312 "searchSpacesToAddModList",
313 "searchSpacesToAddModList",
315 asn_DEF_searchSpacesToAddModList_tags_6,
316 sizeof(asn_DEF_searchSpacesToAddModList_tags_6)
317 /sizeof(asn_DEF_searchSpacesToAddModList_tags_6[0]) - 1, /* 1 */
318 asn_DEF_searchSpacesToAddModList_tags_6, /* Same as above */
319 sizeof(asn_DEF_searchSpacesToAddModList_tags_6)
320 /sizeof(asn_DEF_searchSpacesToAddModList_tags_6[0]), /* 2 */
321 { &asn_OER_type_searchSpacesToAddModList_constr_6, &asn_PER_type_searchSpacesToAddModList_constr_6, SEQUENCE_OF_constraint },
322 asn_MBR_searchSpacesToAddModList_6,
323 1, /* Single element */
324 &asn_SPC_searchSpacesToAddModList_specs_6 /* Additional specs */
327 static asn_TYPE_member_t asn_MBR_searchSpacesToReleaseList_8[] = {
329 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
331 &asn_DEF_SearchSpaceId,
334 0, 0, /* No default value */
338 static const ber_tlv_tag_t asn_DEF_searchSpacesToReleaseList_tags_8[] = {
339 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
340 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
342 static asn_SET_OF_specifics_t asn_SPC_searchSpacesToReleaseList_specs_8 = {
343 sizeof(struct PDCCH_Config__searchSpacesToReleaseList),
344 offsetof(struct PDCCH_Config__searchSpacesToReleaseList, _asn_ctx),
345 0, /* XER encoding is XMLDelimitedItemList */
347 static /* Use -fall-defs-global to expose */
348 asn_TYPE_descriptor_t asn_DEF_searchSpacesToReleaseList_8 = {
349 "searchSpacesToReleaseList",
350 "searchSpacesToReleaseList",
352 asn_DEF_searchSpacesToReleaseList_tags_8,
353 sizeof(asn_DEF_searchSpacesToReleaseList_tags_8)
354 /sizeof(asn_DEF_searchSpacesToReleaseList_tags_8[0]) - 1, /* 1 */
355 asn_DEF_searchSpacesToReleaseList_tags_8, /* Same as above */
356 sizeof(asn_DEF_searchSpacesToReleaseList_tags_8)
357 /sizeof(asn_DEF_searchSpacesToReleaseList_tags_8[0]), /* 2 */
358 { &asn_OER_type_searchSpacesToReleaseList_constr_8, &asn_PER_type_searchSpacesToReleaseList_constr_8, SEQUENCE_OF_constraint },
359 asn_MBR_searchSpacesToReleaseList_8,
360 1, /* Single element */
361 &asn_SPC_searchSpacesToReleaseList_specs_8 /* Additional specs */
364 static asn_TYPE_member_t asn_MBR_downlinkPreemption_10[] = {
365 { ATF_NOFLAGS, 0, offsetof(struct PDCCH_Config__downlinkPreemption, choice.release),
366 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
367 -1, /* IMPLICIT tag at current level */
371 0, 0, /* No default value */
374 { ATF_POINTER, 0, offsetof(struct PDCCH_Config__downlinkPreemption, choice.setup),
375 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
376 -1, /* IMPLICIT tag at current level */
377 &asn_DEF_DownlinkPreemption,
380 0, 0, /* No default value */
384 static const asn_TYPE_tag2member_t asn_MAP_downlinkPreemption_tag2el_10[] = {
385 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
386 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
388 static asn_CHOICE_specifics_t asn_SPC_downlinkPreemption_specs_10 = {
389 sizeof(struct PDCCH_Config__downlinkPreemption),
390 offsetof(struct PDCCH_Config__downlinkPreemption, _asn_ctx),
391 offsetof(struct PDCCH_Config__downlinkPreemption, present),
392 sizeof(((struct PDCCH_Config__downlinkPreemption *)0)->present),
393 asn_MAP_downlinkPreemption_tag2el_10,
394 2, /* Count of tags in the map */
396 -1 /* Extensions start */
398 static /* Use -fall-defs-global to expose */
399 asn_TYPE_descriptor_t asn_DEF_downlinkPreemption_10 = {
400 "downlinkPreemption",
401 "downlinkPreemption",
403 0, /* No effective tags (pointer) */
404 0, /* No effective tags (count) */
405 0, /* No tags (pointer) */
406 0, /* No tags (count) */
407 { &asn_OER_type_downlinkPreemption_constr_10, &asn_PER_type_downlinkPreemption_constr_10, CHOICE_constraint },
408 asn_MBR_downlinkPreemption_10,
409 2, /* Elements count */
410 &asn_SPC_downlinkPreemption_specs_10 /* Additional specs */
413 static asn_TYPE_member_t asn_MBR_tpc_PUSCH_13[] = {
414 { ATF_NOFLAGS, 0, offsetof(struct PDCCH_Config__tpc_PUSCH, choice.release),
415 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
416 -1, /* IMPLICIT tag at current level */
420 0, 0, /* No default value */
423 { ATF_POINTER, 0, offsetof(struct PDCCH_Config__tpc_PUSCH, choice.setup),
424 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
425 -1, /* IMPLICIT tag at current level */
426 &asn_DEF_PUSCH_TPC_CommandConfig,
429 0, 0, /* No default value */
433 static const asn_TYPE_tag2member_t asn_MAP_tpc_PUSCH_tag2el_13[] = {
434 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
435 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
437 static asn_CHOICE_specifics_t asn_SPC_tpc_PUSCH_specs_13 = {
438 sizeof(struct PDCCH_Config__tpc_PUSCH),
439 offsetof(struct PDCCH_Config__tpc_PUSCH, _asn_ctx),
440 offsetof(struct PDCCH_Config__tpc_PUSCH, present),
441 sizeof(((struct PDCCH_Config__tpc_PUSCH *)0)->present),
442 asn_MAP_tpc_PUSCH_tag2el_13,
443 2, /* Count of tags in the map */
445 -1 /* Extensions start */
447 static /* Use -fall-defs-global to expose */
448 asn_TYPE_descriptor_t asn_DEF_tpc_PUSCH_13 = {
452 0, /* No effective tags (pointer) */
453 0, /* No effective tags (count) */
454 0, /* No tags (pointer) */
455 0, /* No tags (count) */
456 { &asn_OER_type_tpc_PUSCH_constr_13, &asn_PER_type_tpc_PUSCH_constr_13, CHOICE_constraint },
457 asn_MBR_tpc_PUSCH_13,
458 2, /* Elements count */
459 &asn_SPC_tpc_PUSCH_specs_13 /* Additional specs */
462 static asn_TYPE_member_t asn_MBR_tpc_PUCCH_16[] = {
463 { ATF_NOFLAGS, 0, offsetof(struct PDCCH_Config__tpc_PUCCH, choice.release),
464 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
465 -1, /* IMPLICIT tag at current level */
469 0, 0, /* No default value */
472 { ATF_POINTER, 0, offsetof(struct PDCCH_Config__tpc_PUCCH, choice.setup),
473 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
474 -1, /* IMPLICIT tag at current level */
475 &asn_DEF_PUCCH_TPC_CommandConfig,
478 0, 0, /* No default value */
482 static const asn_TYPE_tag2member_t asn_MAP_tpc_PUCCH_tag2el_16[] = {
483 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
484 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
486 static asn_CHOICE_specifics_t asn_SPC_tpc_PUCCH_specs_16 = {
487 sizeof(struct PDCCH_Config__tpc_PUCCH),
488 offsetof(struct PDCCH_Config__tpc_PUCCH, _asn_ctx),
489 offsetof(struct PDCCH_Config__tpc_PUCCH, present),
490 sizeof(((struct PDCCH_Config__tpc_PUCCH *)0)->present),
491 asn_MAP_tpc_PUCCH_tag2el_16,
492 2, /* Count of tags in the map */
494 -1 /* Extensions start */
496 static /* Use -fall-defs-global to expose */
497 asn_TYPE_descriptor_t asn_DEF_tpc_PUCCH_16 = {
501 0, /* No effective tags (pointer) */
502 0, /* No effective tags (count) */
503 0, /* No tags (pointer) */
504 0, /* No tags (count) */
505 { &asn_OER_type_tpc_PUCCH_constr_16, &asn_PER_type_tpc_PUCCH_constr_16, CHOICE_constraint },
506 asn_MBR_tpc_PUCCH_16,
507 2, /* Elements count */
508 &asn_SPC_tpc_PUCCH_specs_16 /* Additional specs */
511 static asn_TYPE_member_t asn_MBR_tpc_SRS_19[] = {
512 { ATF_NOFLAGS, 0, offsetof(struct PDCCH_Config__tpc_SRS, choice.release),
513 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
514 -1, /* IMPLICIT tag at current level */
518 0, 0, /* No default value */
521 { ATF_POINTER, 0, offsetof(struct PDCCH_Config__tpc_SRS, choice.setup),
522 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
523 -1, /* IMPLICIT tag at current level */
524 &asn_DEF_SRS_TPC_CommandConfig,
527 0, 0, /* No default value */
531 static const asn_TYPE_tag2member_t asn_MAP_tpc_SRS_tag2el_19[] = {
532 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
533 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
535 static asn_CHOICE_specifics_t asn_SPC_tpc_SRS_specs_19 = {
536 sizeof(struct PDCCH_Config__tpc_SRS),
537 offsetof(struct PDCCH_Config__tpc_SRS, _asn_ctx),
538 offsetof(struct PDCCH_Config__tpc_SRS, present),
539 sizeof(((struct PDCCH_Config__tpc_SRS *)0)->present),
540 asn_MAP_tpc_SRS_tag2el_19,
541 2, /* Count of tags in the map */
543 -1 /* Extensions start */
545 static /* Use -fall-defs-global to expose */
546 asn_TYPE_descriptor_t asn_DEF_tpc_SRS_19 = {
550 0, /* No effective tags (pointer) */
551 0, /* No effective tags (count) */
552 0, /* No tags (pointer) */
553 0, /* No tags (count) */
554 { &asn_OER_type_tpc_SRS_constr_19, &asn_PER_type_tpc_SRS_constr_19, CHOICE_constraint },
556 2, /* Elements count */
557 &asn_SPC_tpc_SRS_specs_19 /* Additional specs */
560 asn_TYPE_member_t asn_MBR_PDCCH_Config_1[] = {
561 { ATF_POINTER, 8, offsetof(struct PDCCH_Config, controlResourceSetToAddModList),
562 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
564 &asn_DEF_controlResourceSetToAddModList_2,
566 { &asn_OER_memb_controlResourceSetToAddModList_constr_2, &asn_PER_memb_controlResourceSetToAddModList_constr_2, memb_controlResourceSetToAddModList_constraint_1 },
567 0, 0, /* No default value */
568 "controlResourceSetToAddModList"
570 { ATF_POINTER, 7, offsetof(struct PDCCH_Config, controlResourceSetToReleaseList),
571 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
573 &asn_DEF_controlResourceSetToReleaseList_4,
575 { &asn_OER_memb_controlResourceSetToReleaseList_constr_4, &asn_PER_memb_controlResourceSetToReleaseList_constr_4, memb_controlResourceSetToReleaseList_constraint_1 },
576 0, 0, /* No default value */
577 "controlResourceSetToReleaseList"
579 { ATF_POINTER, 6, offsetof(struct PDCCH_Config, searchSpacesToAddModList),
580 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
582 &asn_DEF_searchSpacesToAddModList_6,
584 { &asn_OER_memb_searchSpacesToAddModList_constr_6, &asn_PER_memb_searchSpacesToAddModList_constr_6, memb_searchSpacesToAddModList_constraint_1 },
585 0, 0, /* No default value */
586 "searchSpacesToAddModList"
588 { ATF_POINTER, 5, offsetof(struct PDCCH_Config, searchSpacesToReleaseList),
589 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
591 &asn_DEF_searchSpacesToReleaseList_8,
593 { &asn_OER_memb_searchSpacesToReleaseList_constr_8, &asn_PER_memb_searchSpacesToReleaseList_constr_8, memb_searchSpacesToReleaseList_constraint_1 },
594 0, 0, /* No default value */
595 "searchSpacesToReleaseList"
597 { ATF_POINTER, 4, offsetof(struct PDCCH_Config, downlinkPreemption),
598 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
599 +1, /* EXPLICIT tag at current level */
600 &asn_DEF_downlinkPreemption_10,
603 0, 0, /* No default value */
606 { ATF_POINTER, 3, offsetof(struct PDCCH_Config, tpc_PUSCH),
607 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
608 +1, /* EXPLICIT tag at current level */
609 &asn_DEF_tpc_PUSCH_13,
612 0, 0, /* No default value */
615 { ATF_POINTER, 2, offsetof(struct PDCCH_Config, tpc_PUCCH),
616 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
617 +1, /* EXPLICIT tag at current level */
618 &asn_DEF_tpc_PUCCH_16,
621 0, 0, /* No default value */
624 { ATF_POINTER, 1, offsetof(struct PDCCH_Config, tpc_SRS),
625 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
626 +1, /* EXPLICIT tag at current level */
630 0, 0, /* No default value */
634 static const int asn_MAP_PDCCH_Config_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7 };
635 static const ber_tlv_tag_t asn_DEF_PDCCH_Config_tags_1[] = {
636 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
638 static const asn_TYPE_tag2member_t asn_MAP_PDCCH_Config_tag2el_1[] = {
639 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* controlResourceSetToAddModList */
640 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* controlResourceSetToReleaseList */
641 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* searchSpacesToAddModList */
642 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* searchSpacesToReleaseList */
643 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* downlinkPreemption */
644 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* tpc-PUSCH */
645 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* tpc-PUCCH */
646 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* tpc-SRS */
648 asn_SEQUENCE_specifics_t asn_SPC_PDCCH_Config_specs_1 = {
649 sizeof(struct PDCCH_Config),
650 offsetof(struct PDCCH_Config, _asn_ctx),
651 asn_MAP_PDCCH_Config_tag2el_1,
652 8, /* Count of tags in the map */
653 asn_MAP_PDCCH_Config_oms_1, /* Optional members */
654 8, 0, /* Root/Additions */
655 8, /* First extension addition */
657 asn_TYPE_descriptor_t asn_DEF_PDCCH_Config = {
661 asn_DEF_PDCCH_Config_tags_1,
662 sizeof(asn_DEF_PDCCH_Config_tags_1)
663 /sizeof(asn_DEF_PDCCH_Config_tags_1[0]), /* 1 */
664 asn_DEF_PDCCH_Config_tags_1, /* Same as above */
665 sizeof(asn_DEF_PDCCH_Config_tags_1)
666 /sizeof(asn_DEF_PDCCH_Config_tags_1[0]), /* 1 */
667 { 0, 0, SEQUENCE_constraint },
668 asn_MBR_PDCCH_Config_1,
669 8, /* Elements count */
670 &asn_SPC_PDCCH_Config_specs_1 /* Additional specs */