[Epic-ID: ODUHIGH-405][Task-ID: ODUHIGH-423] Modified RRC asn structures
[o-du/l2.git] / src / codec_utils / RRC / PUCCH-Config.h
1 /*
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`
6  */
7
8 #ifndef _PUCCH_Config_H_
9 #define _PUCCH_Config_H_
10
11
12 #include <asn_application.h>
13
14 /* Including external dependencies */
15 #include <asn_SEQUENCE_OF.h>
16 #include <constr_SEQUENCE_OF.h>
17 #include "PUCCH-ResourceSetId.h"
18 #include "PUCCH-ResourceId.h"
19 #include <NULL.h>
20 #include <constr_CHOICE.h>
21 #include "SchedulingRequestResourceId.h"
22 #include <NativeInteger.h>
23 #include "PUCCH-SpatialRelationInfoId.h"
24 #include <constr_SEQUENCE.h>
25
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29
30 /* Dependencies */
31 typedef enum PUCCH_Config__format1_PR {
32         PUCCH_Config__format1_PR_NOTHING,       /* No components present */
33         PUCCH_Config__format1_PR_release,
34         PUCCH_Config__format1_PR_setup
35 } PUCCH_Config__format1_PR;
36 typedef enum PUCCH_Config__format2_PR {
37         PUCCH_Config__format2_PR_NOTHING,       /* No components present */
38         PUCCH_Config__format2_PR_release,
39         PUCCH_Config__format2_PR_setup
40 } PUCCH_Config__format2_PR;
41 typedef enum PUCCH_Config__format3_PR {
42         PUCCH_Config__format3_PR_NOTHING,       /* No components present */
43         PUCCH_Config__format3_PR_release,
44         PUCCH_Config__format3_PR_setup
45 } PUCCH_Config__format3_PR;
46 typedef enum PUCCH_Config__format4_PR {
47         PUCCH_Config__format4_PR_NOTHING,       /* No components present */
48         PUCCH_Config__format4_PR_release,
49         PUCCH_Config__format4_PR_setup
50 } PUCCH_Config__format4_PR;
51
52 /* Forward declarations */
53 struct PUCCH_PowerControl;
54 struct PUCCH_ResourceSet;
55 struct PUCCH_Resource;
56 struct PUCCH_FormatConfig;
57 struct SchedulingRequestResourceConfig;
58 struct PUCCH_SpatialRelationInfo;
59
60 /* PUCCH-Config */
61 typedef struct PUCCH_Config {
62         struct PUCCH_Config__resourceSetToAddModList {
63                 A_SEQUENCE_OF(struct PUCCH_ResourceSet) list;
64                 
65                 /* Context for parsing across buffer boundaries */
66                 asn_struct_ctx_t _asn_ctx;
67         } *resourceSetToAddModList;
68         struct PUCCH_Config__resourceSetToReleaseList {
69                 A_SEQUENCE_OF(PUCCH_ResourceSetId_t) list;
70                 
71                 /* Context for parsing across buffer boundaries */
72                 asn_struct_ctx_t _asn_ctx;
73         } *resourceSetToReleaseList;
74         struct PUCCH_Config__resourceToAddModList {
75                 A_SEQUENCE_OF(struct PUCCH_Resource) list;
76                 
77                 /* Context for parsing across buffer boundaries */
78                 asn_struct_ctx_t _asn_ctx;
79         } *resourceToAddModList;
80         struct PUCCH_Config__resourceToReleaseList {
81                 A_SEQUENCE_OF(PUCCH_ResourceId_t) list;
82                 
83                 /* Context for parsing across buffer boundaries */
84                 asn_struct_ctx_t _asn_ctx;
85         } *resourceToReleaseList;
86         struct PUCCH_Config__format1 {
87                 PUCCH_Config__format1_PR present;
88                 union PUCCH_Config__format1_u {
89                         NULL_t   release;
90                         struct PUCCH_FormatConfig       *setup;
91                 } choice;
92                 
93                 /* Context for parsing across buffer boundaries */
94                 asn_struct_ctx_t _asn_ctx;
95         } *format1;
96         struct PUCCH_Config__format2 {
97                 PUCCH_Config__format2_PR present;
98                 union PUCCH_Config__format2_u {
99                         NULL_t   release;
100                         struct PUCCH_FormatConfig       *setup;
101                 } choice;
102                 
103                 /* Context for parsing across buffer boundaries */
104                 asn_struct_ctx_t _asn_ctx;
105         } *format2;
106         struct PUCCH_Config__format3 {
107                 PUCCH_Config__format3_PR present;
108                 union PUCCH_Config__format3_u {
109                         NULL_t   release;
110                         struct PUCCH_FormatConfig       *setup;
111                 } choice;
112                 
113                 /* Context for parsing across buffer boundaries */
114                 asn_struct_ctx_t _asn_ctx;
115         } *format3;
116         struct PUCCH_Config__format4 {
117                 PUCCH_Config__format4_PR present;
118                 union PUCCH_Config__format4_u {
119                         NULL_t   release;
120                         struct PUCCH_FormatConfig       *setup;
121                 } choice;
122                 
123                 /* Context for parsing across buffer boundaries */
124                 asn_struct_ctx_t _asn_ctx;
125         } *format4;
126         struct PUCCH_Config__schedulingRequestResourceToAddModList {
127                 A_SEQUENCE_OF(struct SchedulingRequestResourceConfig) list;
128                 
129                 /* Context for parsing across buffer boundaries */
130                 asn_struct_ctx_t _asn_ctx;
131         } *schedulingRequestResourceToAddModList;
132         struct PUCCH_Config__schedulingRequestResourceToReleaseList {
133                 A_SEQUENCE_OF(SchedulingRequestResourceId_t) list;
134                 
135                 /* Context for parsing across buffer boundaries */
136                 asn_struct_ctx_t _asn_ctx;
137         } *schedulingRequestResourceToReleaseList;
138         struct PUCCH_Config__multi_CSI_PUCCH_ResourceList {
139                 A_SEQUENCE_OF(PUCCH_ResourceId_t) list;
140                 
141                 /* Context for parsing across buffer boundaries */
142                 asn_struct_ctx_t _asn_ctx;
143         } *multi_CSI_PUCCH_ResourceList;
144         struct PUCCH_Config__dl_DataToUL_ACK {
145                 A_SEQUENCE_OF(long) list;
146                 
147                 /* Context for parsing across buffer boundaries */
148                 asn_struct_ctx_t _asn_ctx;
149         } *dl_DataToUL_ACK;
150         struct PUCCH_Config__spatialRelationInfoToAddModList {
151                 A_SEQUENCE_OF(struct PUCCH_SpatialRelationInfo) list;
152                 
153                 /* Context for parsing across buffer boundaries */
154                 asn_struct_ctx_t _asn_ctx;
155         } *spatialRelationInfoToAddModList;
156         struct PUCCH_Config__spatialRelationInfoToReleaseList {
157                 A_SEQUENCE_OF(PUCCH_SpatialRelationInfoId_t) list;
158                 
159                 /* Context for parsing across buffer boundaries */
160                 asn_struct_ctx_t _asn_ctx;
161         } *spatialRelationInfoToReleaseList;
162         struct PUCCH_PowerControl       *pucch_PowerControl;    /* OPTIONAL */
163         /*
164          * This type is extensible,
165          * possible extensions are below.
166          */
167         
168         /* Context for parsing across buffer boundaries */
169         asn_struct_ctx_t _asn_ctx;
170 } PUCCH_Config_t;
171
172 /* Implementation */
173 extern asn_TYPE_descriptor_t asn_DEF_PUCCH_Config;
174 extern asn_SEQUENCE_specifics_t asn_SPC_PUCCH_Config_specs_1;
175 extern asn_TYPE_member_t asn_MBR_PUCCH_Config_1[15];
176
177 #ifdef __cplusplus
178 }
179 #endif
180
181 #endif  /* _PUCCH_Config_H_ */
182 #include <asn_internal.h>