[Epic-ID: ODUHIGH-406][Task-ID: ODUHIGH-441]: Update name of Paging RRC Codec
[o-du/l2.git] / src / codec_utils / RRC / PUCCH-PowerControl.c
1 /*
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`
6  */
7
8 #include "PUCCH-PowerControl.h"
9
10 #include "P0-PUCCH.h"
11 #include "PUCCH-PathlossReferenceRS.h"
12 /*
13  * This type is implemented using NativeEnumerated,
14  * so here we adjust the DEF accordingly.
15  */
16 static int
17 memb_deltaF_PUCCH_f0_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
18                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
19         long value;
20         
21         if(!sptr) {
22                 ASN__CTFAIL(app_key, td, sptr,
23                         "%s: value not given (%s:%d)",
24                         td->name, __FILE__, __LINE__);
25                 return -1;
26         }
27         
28         value = *(const long *)sptr;
29         
30         if((value >= -16 && value <= 15)) {
31                 /* Constraint check succeeded */
32                 return 0;
33         } else {
34                 ASN__CTFAIL(app_key, td, sptr,
35                         "%s: constraint failed (%s:%d)",
36                         td->name, __FILE__, __LINE__);
37                 return -1;
38         }
39 }
40
41 static int
42 memb_deltaF_PUCCH_f1_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
43                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
44         long value;
45         
46         if(!sptr) {
47                 ASN__CTFAIL(app_key, td, sptr,
48                         "%s: value not given (%s:%d)",
49                         td->name, __FILE__, __LINE__);
50                 return -1;
51         }
52         
53         value = *(const long *)sptr;
54         
55         if((value >= -16 && value <= 15)) {
56                 /* Constraint check succeeded */
57                 return 0;
58         } else {
59                 ASN__CTFAIL(app_key, td, sptr,
60                         "%s: constraint failed (%s:%d)",
61                         td->name, __FILE__, __LINE__);
62                 return -1;
63         }
64 }
65
66 static int
67 memb_deltaF_PUCCH_f2_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
68                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
69         long value;
70         
71         if(!sptr) {
72                 ASN__CTFAIL(app_key, td, sptr,
73                         "%s: value not given (%s:%d)",
74                         td->name, __FILE__, __LINE__);
75                 return -1;
76         }
77         
78         value = *(const long *)sptr;
79         
80         if((value >= -16 && value <= 15)) {
81                 /* Constraint check succeeded */
82                 return 0;
83         } else {
84                 ASN__CTFAIL(app_key, td, sptr,
85                         "%s: constraint failed (%s:%d)",
86                         td->name, __FILE__, __LINE__);
87                 return -1;
88         }
89 }
90
91 static int
92 memb_deltaF_PUCCH_f3_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
93                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
94         long value;
95         
96         if(!sptr) {
97                 ASN__CTFAIL(app_key, td, sptr,
98                         "%s: value not given (%s:%d)",
99                         td->name, __FILE__, __LINE__);
100                 return -1;
101         }
102         
103         value = *(const long *)sptr;
104         
105         if((value >= -16 && value <= 15)) {
106                 /* Constraint check succeeded */
107                 return 0;
108         } else {
109                 ASN__CTFAIL(app_key, td, sptr,
110                         "%s: constraint failed (%s:%d)",
111                         td->name, __FILE__, __LINE__);
112                 return -1;
113         }
114 }
115
116 static int
117 memb_deltaF_PUCCH_f4_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
118                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
119         long value;
120         
121         if(!sptr) {
122                 ASN__CTFAIL(app_key, td, sptr,
123                         "%s: value not given (%s:%d)",
124                         td->name, __FILE__, __LINE__);
125                 return -1;
126         }
127         
128         value = *(const long *)sptr;
129         
130         if((value >= -16 && value <= 15)) {
131                 /* Constraint check succeeded */
132                 return 0;
133         } else {
134                 ASN__CTFAIL(app_key, td, sptr,
135                         "%s: constraint failed (%s:%d)",
136                         td->name, __FILE__, __LINE__);
137                 return -1;
138         }
139 }
140
141 static int
142 memb_p0_Set_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
143                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
144         size_t size;
145         
146         if(!sptr) {
147                 ASN__CTFAIL(app_key, td, sptr,
148                         "%s: value not given (%s:%d)",
149                         td->name, __FILE__, __LINE__);
150                 return -1;
151         }
152         
153         /* Determine the number of elements */
154         size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
155         
156         if((size >= 1 && size <= 8)) {
157                 /* Perform validation of the inner elements */
158                 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
159         } else {
160                 ASN__CTFAIL(app_key, td, sptr,
161                         "%s: constraint failed (%s:%d)",
162                         td->name, __FILE__, __LINE__);
163                 return -1;
164         }
165 }
166
167 static int
168 memb_pathlossReferenceRSs_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
169                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
170         size_t size;
171         
172         if(!sptr) {
173                 ASN__CTFAIL(app_key, td, sptr,
174                         "%s: value not given (%s:%d)",
175                         td->name, __FILE__, __LINE__);
176                 return -1;
177         }
178         
179         /* Determine the number of elements */
180         size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
181         
182         if((size >= 1 && size <= 4)) {
183                 /* Perform validation of the inner elements */
184                 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
185         } else {
186                 ASN__CTFAIL(app_key, td, sptr,
187                         "%s: constraint failed (%s:%d)",
188                         td->name, __FILE__, __LINE__);
189                 return -1;
190         }
191 }
192
193 static asn_oer_constraints_t asn_OER_type_p0_Set_constr_7 CC_NOTUSED = {
194         { 0, 0 },
195         -1      /* (SIZE(1..8)) */};
196 static asn_per_constraints_t asn_PER_type_p0_Set_constr_7 CC_NOTUSED = {
197         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
198         { APC_CONSTRAINED,       3,  3,  1,  8 }        /* (SIZE(1..8)) */,
199         0, 0    /* No PER value map */
200 };
201 static asn_oer_constraints_t asn_OER_type_pathlossReferenceRSs_constr_9 CC_NOTUSED = {
202         { 0, 0 },
203         -1      /* (SIZE(1..4)) */};
204 static asn_per_constraints_t asn_PER_type_pathlossReferenceRSs_constr_9 CC_NOTUSED = {
205         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
206         { APC_CONSTRAINED,       2,  2,  1,  4 }        /* (SIZE(1..4)) */,
207         0, 0    /* No PER value map */
208 };
209 static asn_oer_constraints_t asn_OER_type_twoPUCCH_PC_AdjustmentStates_constr_11 CC_NOTUSED = {
210         { 0, 0 },
211         -1};
212 static asn_per_constraints_t asn_PER_type_twoPUCCH_PC_AdjustmentStates_constr_11 CC_NOTUSED = {
213         { APC_CONSTRAINED,       0,  0,  0,  0 }        /* (0..0) */,
214         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
215         0, 0    /* No PER value map */
216 };
217 static asn_oer_constraints_t asn_OER_memb_deltaF_PUCCH_f0_constr_2 CC_NOTUSED = {
218         { 1, 0 }        /* (-16..15) */,
219         -1};
220 static asn_per_constraints_t asn_PER_memb_deltaF_PUCCH_f0_constr_2 CC_NOTUSED = {
221         { APC_CONSTRAINED,       5,  5, -16,  15 }      /* (-16..15) */,
222         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
223         0, 0    /* No PER value map */
224 };
225 static asn_oer_constraints_t asn_OER_memb_deltaF_PUCCH_f1_constr_3 CC_NOTUSED = {
226         { 1, 0 }        /* (-16..15) */,
227         -1};
228 static asn_per_constraints_t asn_PER_memb_deltaF_PUCCH_f1_constr_3 CC_NOTUSED = {
229         { APC_CONSTRAINED,       5,  5, -16,  15 }      /* (-16..15) */,
230         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
231         0, 0    /* No PER value map */
232 };
233 static asn_oer_constraints_t asn_OER_memb_deltaF_PUCCH_f2_constr_4 CC_NOTUSED = {
234         { 1, 0 }        /* (-16..15) */,
235         -1};
236 static asn_per_constraints_t asn_PER_memb_deltaF_PUCCH_f2_constr_4 CC_NOTUSED = {
237         { APC_CONSTRAINED,       5,  5, -16,  15 }      /* (-16..15) */,
238         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
239         0, 0    /* No PER value map */
240 };
241 static asn_oer_constraints_t asn_OER_memb_deltaF_PUCCH_f3_constr_5 CC_NOTUSED = {
242         { 1, 0 }        /* (-16..15) */,
243         -1};
244 static asn_per_constraints_t asn_PER_memb_deltaF_PUCCH_f3_constr_5 CC_NOTUSED = {
245         { APC_CONSTRAINED,       5,  5, -16,  15 }      /* (-16..15) */,
246         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
247         0, 0    /* No PER value map */
248 };
249 static asn_oer_constraints_t asn_OER_memb_deltaF_PUCCH_f4_constr_6 CC_NOTUSED = {
250         { 1, 0 }        /* (-16..15) */,
251         -1};
252 static asn_per_constraints_t asn_PER_memb_deltaF_PUCCH_f4_constr_6 CC_NOTUSED = {
253         { APC_CONSTRAINED,       5,  5, -16,  15 }      /* (-16..15) */,
254         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
255         0, 0    /* No PER value map */
256 };
257 static asn_oer_constraints_t asn_OER_memb_p0_Set_constr_7 CC_NOTUSED = {
258         { 0, 0 },
259         -1      /* (SIZE(1..8)) */};
260 static asn_per_constraints_t asn_PER_memb_p0_Set_constr_7 CC_NOTUSED = {
261         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
262         { APC_CONSTRAINED,       3,  3,  1,  8 }        /* (SIZE(1..8)) */,
263         0, 0    /* No PER value map */
264 };
265 static asn_oer_constraints_t asn_OER_memb_pathlossReferenceRSs_constr_9 CC_NOTUSED = {
266         { 0, 0 },
267         -1      /* (SIZE(1..4)) */};
268 static asn_per_constraints_t asn_PER_memb_pathlossReferenceRSs_constr_9 CC_NOTUSED = {
269         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
270         { APC_CONSTRAINED,       2,  2,  1,  4 }        /* (SIZE(1..4)) */,
271         0, 0    /* No PER value map */
272 };
273 static asn_TYPE_member_t asn_MBR_p0_Set_7[] = {
274         { ATF_POINTER, 0, 0,
275                 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
276                 0,
277                 &asn_DEF_P0_PUCCH,
278                 0,
279                 { 0, 0, 0 },
280                 0, 0, /* No default value */
281                 ""
282                 },
283 };
284 static const ber_tlv_tag_t asn_DEF_p0_Set_tags_7[] = {
285         (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
286         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
287 };
288 static asn_SET_OF_specifics_t asn_SPC_p0_Set_specs_7 = {
289         sizeof(struct PUCCH_PowerControl__p0_Set),
290         offsetof(struct PUCCH_PowerControl__p0_Set, _asn_ctx),
291         0,      /* XER encoding is XMLDelimitedItemList */
292 };
293 static /* Use -fall-defs-global to expose */
294 asn_TYPE_descriptor_t asn_DEF_p0_Set_7 = {
295         "p0-Set",
296         "p0-Set",
297         &asn_OP_SEQUENCE_OF,
298         asn_DEF_p0_Set_tags_7,
299         sizeof(asn_DEF_p0_Set_tags_7)
300                 /sizeof(asn_DEF_p0_Set_tags_7[0]) - 1, /* 1 */
301         asn_DEF_p0_Set_tags_7,  /* Same as above */
302         sizeof(asn_DEF_p0_Set_tags_7)
303                 /sizeof(asn_DEF_p0_Set_tags_7[0]), /* 2 */
304         { &asn_OER_type_p0_Set_constr_7, &asn_PER_type_p0_Set_constr_7, SEQUENCE_OF_constraint },
305         asn_MBR_p0_Set_7,
306         1,      /* Single element */
307         &asn_SPC_p0_Set_specs_7 /* Additional specs */
308 };
309
310 static asn_TYPE_member_t asn_MBR_pathlossReferenceRSs_9[] = {
311         { ATF_POINTER, 0, 0,
312                 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
313                 0,
314                 &asn_DEF_PUCCH_PathlossReferenceRS,
315                 0,
316                 { 0, 0, 0 },
317                 0, 0, /* No default value */
318                 ""
319                 },
320 };
321 static const ber_tlv_tag_t asn_DEF_pathlossReferenceRSs_tags_9[] = {
322         (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
323         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
324 };
325 static asn_SET_OF_specifics_t asn_SPC_pathlossReferenceRSs_specs_9 = {
326         sizeof(struct PUCCH_PowerControl__pathlossReferenceRSs),
327         offsetof(struct PUCCH_PowerControl__pathlossReferenceRSs, _asn_ctx),
328         0,      /* XER encoding is XMLDelimitedItemList */
329 };
330 static /* Use -fall-defs-global to expose */
331 asn_TYPE_descriptor_t asn_DEF_pathlossReferenceRSs_9 = {
332         "pathlossReferenceRSs",
333         "pathlossReferenceRSs",
334         &asn_OP_SEQUENCE_OF,
335         asn_DEF_pathlossReferenceRSs_tags_9,
336         sizeof(asn_DEF_pathlossReferenceRSs_tags_9)
337                 /sizeof(asn_DEF_pathlossReferenceRSs_tags_9[0]) - 1, /* 1 */
338         asn_DEF_pathlossReferenceRSs_tags_9,    /* Same as above */
339         sizeof(asn_DEF_pathlossReferenceRSs_tags_9)
340                 /sizeof(asn_DEF_pathlossReferenceRSs_tags_9[0]), /* 2 */
341         { &asn_OER_type_pathlossReferenceRSs_constr_9, &asn_PER_type_pathlossReferenceRSs_constr_9, SEQUENCE_OF_constraint },
342         asn_MBR_pathlossReferenceRSs_9,
343         1,      /* Single element */
344         &asn_SPC_pathlossReferenceRSs_specs_9   /* Additional specs */
345 };
346
347 static const asn_INTEGER_enum_map_t asn_MAP_twoPUCCH_PC_AdjustmentStates_value2enum_11[] = {
348         { 0,    9,      "twoStates" }
349 };
350 static const unsigned int asn_MAP_twoPUCCH_PC_AdjustmentStates_enum2value_11[] = {
351         0       /* twoStates(0) */
352 };
353 static const asn_INTEGER_specifics_t asn_SPC_twoPUCCH_PC_AdjustmentStates_specs_11 = {
354         asn_MAP_twoPUCCH_PC_AdjustmentStates_value2enum_11,     /* "tag" => N; sorted by tag */
355         asn_MAP_twoPUCCH_PC_AdjustmentStates_enum2value_11,     /* N => "tag"; sorted by N */
356         1,      /* Number of elements in the maps */
357         0,      /* Enumeration is not extensible */
358         1,      /* Strict enumeration */
359         0,      /* Native long size */
360         0
361 };
362 static const ber_tlv_tag_t asn_DEF_twoPUCCH_PC_AdjustmentStates_tags_11[] = {
363         (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
364         (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
365 };
366 static /* Use -fall-defs-global to expose */
367 asn_TYPE_descriptor_t asn_DEF_twoPUCCH_PC_AdjustmentStates_11 = {
368         "twoPUCCH-PC-AdjustmentStates",
369         "twoPUCCH-PC-AdjustmentStates",
370         &asn_OP_NativeEnumerated,
371         asn_DEF_twoPUCCH_PC_AdjustmentStates_tags_11,
372         sizeof(asn_DEF_twoPUCCH_PC_AdjustmentStates_tags_11)
373                 /sizeof(asn_DEF_twoPUCCH_PC_AdjustmentStates_tags_11[0]) - 1, /* 1 */
374         asn_DEF_twoPUCCH_PC_AdjustmentStates_tags_11,   /* Same as above */
375         sizeof(asn_DEF_twoPUCCH_PC_AdjustmentStates_tags_11)
376                 /sizeof(asn_DEF_twoPUCCH_PC_AdjustmentStates_tags_11[0]), /* 2 */
377         { &asn_OER_type_twoPUCCH_PC_AdjustmentStates_constr_11, &asn_PER_type_twoPUCCH_PC_AdjustmentStates_constr_11, NativeEnumerated_constraint },
378         0, 0,   /* Defined elsewhere */
379         &asn_SPC_twoPUCCH_PC_AdjustmentStates_specs_11  /* Additional specs */
380 };
381
382 asn_TYPE_member_t asn_MBR_PUCCH_PowerControl_1[] = {
383         { ATF_POINTER, 8, offsetof(struct PUCCH_PowerControl, deltaF_PUCCH_f0),
384                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
385                 -1,     /* IMPLICIT tag at current level */
386                 &asn_DEF_NativeInteger,
387                 0,
388                 { &asn_OER_memb_deltaF_PUCCH_f0_constr_2, &asn_PER_memb_deltaF_PUCCH_f0_constr_2,  memb_deltaF_PUCCH_f0_constraint_1 },
389                 0, 0, /* No default value */
390                 "deltaF-PUCCH-f0"
391                 },
392         { ATF_POINTER, 7, offsetof(struct PUCCH_PowerControl, deltaF_PUCCH_f1),
393                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
394                 -1,     /* IMPLICIT tag at current level */
395                 &asn_DEF_NativeInteger,
396                 0,
397                 { &asn_OER_memb_deltaF_PUCCH_f1_constr_3, &asn_PER_memb_deltaF_PUCCH_f1_constr_3,  memb_deltaF_PUCCH_f1_constraint_1 },
398                 0, 0, /* No default value */
399                 "deltaF-PUCCH-f1"
400                 },
401         { ATF_POINTER, 6, offsetof(struct PUCCH_PowerControl, deltaF_PUCCH_f2),
402                 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
403                 -1,     /* IMPLICIT tag at current level */
404                 &asn_DEF_NativeInteger,
405                 0,
406                 { &asn_OER_memb_deltaF_PUCCH_f2_constr_4, &asn_PER_memb_deltaF_PUCCH_f2_constr_4,  memb_deltaF_PUCCH_f2_constraint_1 },
407                 0, 0, /* No default value */
408                 "deltaF-PUCCH-f2"
409                 },
410         { ATF_POINTER, 5, offsetof(struct PUCCH_PowerControl, deltaF_PUCCH_f3),
411                 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
412                 -1,     /* IMPLICIT tag at current level */
413                 &asn_DEF_NativeInteger,
414                 0,
415                 { &asn_OER_memb_deltaF_PUCCH_f3_constr_5, &asn_PER_memb_deltaF_PUCCH_f3_constr_5,  memb_deltaF_PUCCH_f3_constraint_1 },
416                 0, 0, /* No default value */
417                 "deltaF-PUCCH-f3"
418                 },
419         { ATF_POINTER, 4, offsetof(struct PUCCH_PowerControl, deltaF_PUCCH_f4),
420                 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
421                 -1,     /* IMPLICIT tag at current level */
422                 &asn_DEF_NativeInteger,
423                 0,
424                 { &asn_OER_memb_deltaF_PUCCH_f4_constr_6, &asn_PER_memb_deltaF_PUCCH_f4_constr_6,  memb_deltaF_PUCCH_f4_constraint_1 },
425                 0, 0, /* No default value */
426                 "deltaF-PUCCH-f4"
427                 },
428         { ATF_POINTER, 3, offsetof(struct PUCCH_PowerControl, p0_Set),
429                 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
430                 0,
431                 &asn_DEF_p0_Set_7,
432                 0,
433                 { &asn_OER_memb_p0_Set_constr_7, &asn_PER_memb_p0_Set_constr_7,  memb_p0_Set_constraint_1 },
434                 0, 0, /* No default value */
435                 "p0-Set"
436                 },
437         { ATF_POINTER, 2, offsetof(struct PUCCH_PowerControl, pathlossReferenceRSs),
438                 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
439                 0,
440                 &asn_DEF_pathlossReferenceRSs_9,
441                 0,
442                 { &asn_OER_memb_pathlossReferenceRSs_constr_9, &asn_PER_memb_pathlossReferenceRSs_constr_9,  memb_pathlossReferenceRSs_constraint_1 },
443                 0, 0, /* No default value */
444                 "pathlossReferenceRSs"
445                 },
446         { ATF_POINTER, 1, offsetof(struct PUCCH_PowerControl, twoPUCCH_PC_AdjustmentStates),
447                 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
448                 -1,     /* IMPLICIT tag at current level */
449                 &asn_DEF_twoPUCCH_PC_AdjustmentStates_11,
450                 0,
451                 { 0, 0, 0 },
452                 0, 0, /* No default value */
453                 "twoPUCCH-PC-AdjustmentStates"
454                 },
455 };
456 static const int asn_MAP_PUCCH_PowerControl_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7 };
457 static const ber_tlv_tag_t asn_DEF_PUCCH_PowerControl_tags_1[] = {
458         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
459 };
460 static const asn_TYPE_tag2member_t asn_MAP_PUCCH_PowerControl_tag2el_1[] = {
461     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* deltaF-PUCCH-f0 */
462     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* deltaF-PUCCH-f1 */
463     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* deltaF-PUCCH-f2 */
464     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* deltaF-PUCCH-f3 */
465     { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* deltaF-PUCCH-f4 */
466     { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* p0-Set */
467     { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* pathlossReferenceRSs */
468     { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* twoPUCCH-PC-AdjustmentStates */
469 };
470 asn_SEQUENCE_specifics_t asn_SPC_PUCCH_PowerControl_specs_1 = {
471         sizeof(struct PUCCH_PowerControl),
472         offsetof(struct PUCCH_PowerControl, _asn_ctx),
473         asn_MAP_PUCCH_PowerControl_tag2el_1,
474         8,      /* Count of tags in the map */
475         asn_MAP_PUCCH_PowerControl_oms_1,       /* Optional members */
476         8, 0,   /* Root/Additions */
477         8,      /* First extension addition */
478 };
479 asn_TYPE_descriptor_t asn_DEF_PUCCH_PowerControl = {
480         "PUCCH-PowerControl",
481         "PUCCH-PowerControl",
482         &asn_OP_SEQUENCE,
483         asn_DEF_PUCCH_PowerControl_tags_1,
484         sizeof(asn_DEF_PUCCH_PowerControl_tags_1)
485                 /sizeof(asn_DEF_PUCCH_PowerControl_tags_1[0]), /* 1 */
486         asn_DEF_PUCCH_PowerControl_tags_1,      /* Same as above */
487         sizeof(asn_DEF_PUCCH_PowerControl_tags_1)
488                 /sizeof(asn_DEF_PUCCH_PowerControl_tags_1[0]), /* 1 */
489         { 0, 0, SEQUENCE_constraint },
490         asn_MBR_PUCCH_PowerControl_1,
491         8,      /* Elements count */
492         &asn_SPC_PUCCH_PowerControl_specs_1     /* Additional specs */
493 };
494