[Epic-ID: ODUHIGH-406][Task-ID: ODUHIGH-441]: Update name of Paging RRC Codec
[o-du/l2.git] / src / codec_utils / RRC / SearchSpace.h
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 #ifndef _SearchSpace_H_
9 #define _SearchSpace_H_
10
11
12 #include <asn_application.h>
13
14 /* Including external dependencies */
15 #include "SearchSpaceId.h"
16 #include "ControlResourceSetId.h"
17 #include <NativeInteger.h>
18 #include <BIT_STRING.h>
19 #include <NULL.h>
20 #include <constr_CHOICE.h>
21 #include <NativeEnumerated.h>
22 #include <constr_SEQUENCE.h>
23
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27
28 /* Dependencies */
29 typedef enum SearchSpace__monitoringSlotPeriodicityAndOffset_PR {
30         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_NOTHING,     /* No components present */
31         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl1,
32         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl2,
33         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl4,
34         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl5,
35         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl8,
36         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl10,
37         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl16,
38         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl20,
39         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl40,
40         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl80,
41         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl160,
42         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl320,
43         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl640,
44         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl1280,
45         SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl2560
46 } SearchSpace__monitoringSlotPeriodicityAndOffset_PR;
47 typedef enum SearchSpace__nrofCandidates__aggregationLevel1 {
48         SearchSpace__nrofCandidates__aggregationLevel1_n0       = 0,
49         SearchSpace__nrofCandidates__aggregationLevel1_n1       = 1,
50         SearchSpace__nrofCandidates__aggregationLevel1_n2       = 2,
51         SearchSpace__nrofCandidates__aggregationLevel1_n3       = 3,
52         SearchSpace__nrofCandidates__aggregationLevel1_n4       = 4,
53         SearchSpace__nrofCandidates__aggregationLevel1_n5       = 5,
54         SearchSpace__nrofCandidates__aggregationLevel1_n6       = 6,
55         SearchSpace__nrofCandidates__aggregationLevel1_n8       = 7
56 } e_SearchSpace__nrofCandidates__aggregationLevel1;
57 typedef enum SearchSpace__nrofCandidates__aggregationLevel2 {
58         SearchSpace__nrofCandidates__aggregationLevel2_n0       = 0,
59         SearchSpace__nrofCandidates__aggregationLevel2_n1       = 1,
60         SearchSpace__nrofCandidates__aggregationLevel2_n2       = 2,
61         SearchSpace__nrofCandidates__aggregationLevel2_n3       = 3,
62         SearchSpace__nrofCandidates__aggregationLevel2_n4       = 4,
63         SearchSpace__nrofCandidates__aggregationLevel2_n5       = 5,
64         SearchSpace__nrofCandidates__aggregationLevel2_n6       = 6,
65         SearchSpace__nrofCandidates__aggregationLevel2_n8       = 7
66 } e_SearchSpace__nrofCandidates__aggregationLevel2;
67 typedef enum SearchSpace__nrofCandidates__aggregationLevel4 {
68         SearchSpace__nrofCandidates__aggregationLevel4_n0       = 0,
69         SearchSpace__nrofCandidates__aggregationLevel4_n1       = 1,
70         SearchSpace__nrofCandidates__aggregationLevel4_n2       = 2,
71         SearchSpace__nrofCandidates__aggregationLevel4_n3       = 3,
72         SearchSpace__nrofCandidates__aggregationLevel4_n4       = 4,
73         SearchSpace__nrofCandidates__aggregationLevel4_n5       = 5,
74         SearchSpace__nrofCandidates__aggregationLevel4_n6       = 6,
75         SearchSpace__nrofCandidates__aggregationLevel4_n8       = 7
76 } e_SearchSpace__nrofCandidates__aggregationLevel4;
77 typedef enum SearchSpace__nrofCandidates__aggregationLevel8 {
78         SearchSpace__nrofCandidates__aggregationLevel8_n0       = 0,
79         SearchSpace__nrofCandidates__aggregationLevel8_n1       = 1,
80         SearchSpace__nrofCandidates__aggregationLevel8_n2       = 2,
81         SearchSpace__nrofCandidates__aggregationLevel8_n3       = 3,
82         SearchSpace__nrofCandidates__aggregationLevel8_n4       = 4,
83         SearchSpace__nrofCandidates__aggregationLevel8_n5       = 5,
84         SearchSpace__nrofCandidates__aggregationLevel8_n6       = 6,
85         SearchSpace__nrofCandidates__aggregationLevel8_n8       = 7
86 } e_SearchSpace__nrofCandidates__aggregationLevel8;
87 typedef enum SearchSpace__nrofCandidates__aggregationLevel16 {
88         SearchSpace__nrofCandidates__aggregationLevel16_n0      = 0,
89         SearchSpace__nrofCandidates__aggregationLevel16_n1      = 1,
90         SearchSpace__nrofCandidates__aggregationLevel16_n2      = 2,
91         SearchSpace__nrofCandidates__aggregationLevel16_n3      = 3,
92         SearchSpace__nrofCandidates__aggregationLevel16_n4      = 4,
93         SearchSpace__nrofCandidates__aggregationLevel16_n5      = 5,
94         SearchSpace__nrofCandidates__aggregationLevel16_n6      = 6,
95         SearchSpace__nrofCandidates__aggregationLevel16_n8      = 7
96 } e_SearchSpace__nrofCandidates__aggregationLevel16;
97 typedef enum SearchSpace__searchSpaceType_PR {
98         SearchSpace__searchSpaceType_PR_NOTHING,        /* No components present */
99         SearchSpace__searchSpaceType_PR_common,
100         SearchSpace__searchSpaceType_PR_ue_Specific
101 } SearchSpace__searchSpaceType_PR;
102 typedef enum SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel1 {
103         SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel1_n1   = 0,
104         SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel1_n2   = 1
105 } e_SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel1;
106 typedef enum SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel2 {
107         SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel2_n1   = 0,
108         SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel2_n2   = 1
109 } e_SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel2;
110 typedef enum SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel4 {
111         SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel4_n1   = 0,
112         SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel4_n2   = 1
113 } e_SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel4;
114 typedef enum SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel8 {
115         SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel8_n1   = 0,
116         SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel8_n2   = 1
117 } e_SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel8;
118 typedef enum SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel16 {
119         SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel16_n1  = 0,
120         SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel16_n2  = 1
121 } e_SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI__aggregationLevel16;
122 typedef enum SearchSpace__searchSpaceType__common__dci_Format2_3__dummy1 {
123         SearchSpace__searchSpaceType__common__dci_Format2_3__dummy1_sl1 = 0,
124         SearchSpace__searchSpaceType__common__dci_Format2_3__dummy1_sl2 = 1,
125         SearchSpace__searchSpaceType__common__dci_Format2_3__dummy1_sl4 = 2,
126         SearchSpace__searchSpaceType__common__dci_Format2_3__dummy1_sl5 = 3,
127         SearchSpace__searchSpaceType__common__dci_Format2_3__dummy1_sl8 = 4,
128         SearchSpace__searchSpaceType__common__dci_Format2_3__dummy1_sl10        = 5,
129         SearchSpace__searchSpaceType__common__dci_Format2_3__dummy1_sl16        = 6,
130         SearchSpace__searchSpaceType__common__dci_Format2_3__dummy1_sl20        = 7
131 } e_SearchSpace__searchSpaceType__common__dci_Format2_3__dummy1;
132 typedef enum SearchSpace__searchSpaceType__common__dci_Format2_3__dummy2 {
133         SearchSpace__searchSpaceType__common__dci_Format2_3__dummy2_n1  = 0,
134         SearchSpace__searchSpaceType__common__dci_Format2_3__dummy2_n2  = 1
135 } e_SearchSpace__searchSpaceType__common__dci_Format2_3__dummy2;
136 typedef enum SearchSpace__searchSpaceType__ue_Specific__dci_Formats {
137         SearchSpace__searchSpaceType__ue_Specific__dci_Formats_formats0_0_And_1_0       = 0,
138         SearchSpace__searchSpaceType__ue_Specific__dci_Formats_formats0_1_And_1_1       = 1
139 } e_SearchSpace__searchSpaceType__ue_Specific__dci_Formats;
140
141 /* SearchSpace */
142 typedef struct SearchSpace {
143         SearchSpaceId_t  searchSpaceId;
144         ControlResourceSetId_t  *controlResourceSetId;  /* OPTIONAL */
145         struct SearchSpace__monitoringSlotPeriodicityAndOffset {
146                 SearchSpace__monitoringSlotPeriodicityAndOffset_PR present;
147                 union SearchSpace__monitoringSlotPeriodicityAndOffset_u {
148                         NULL_t   sl1;
149                         long     sl2;
150                         long     sl4;
151                         long     sl5;
152                         long     sl8;
153                         long     sl10;
154                         long     sl16;
155                         long     sl20;
156                         long     sl40;
157                         long     sl80;
158                         long     sl160;
159                         long     sl320;
160                         long     sl640;
161                         long     sl1280;
162                         long     sl2560;
163                 } choice;
164                 
165                 /* Context for parsing across buffer boundaries */
166                 asn_struct_ctx_t _asn_ctx;
167         } *monitoringSlotPeriodicityAndOffset;
168         long    *duration;      /* OPTIONAL */
169         BIT_STRING_t    *monitoringSymbolsWithinSlot;   /* OPTIONAL */
170         struct SearchSpace__nrofCandidates {
171                 long     aggregationLevel1;
172                 long     aggregationLevel2;
173                 long     aggregationLevel4;
174                 long     aggregationLevel8;
175                 long     aggregationLevel16;
176                 
177                 /* Context for parsing across buffer boundaries */
178                 asn_struct_ctx_t _asn_ctx;
179         } *nrofCandidates;
180         struct SearchSpace__searchSpaceType {
181                 SearchSpace__searchSpaceType_PR present;
182                 union SearchSpace__searchSpaceType_u {
183                         struct SearchSpace__searchSpaceType__common {
184                                 struct SearchSpace__searchSpaceType__common__dci_Format0_0_AndFormat1_0 {
185                                         /*
186                                          * This type is extensible,
187                                          * possible extensions are below.
188                                          */
189                                         
190                                         /* Context for parsing across buffer boundaries */
191                                         asn_struct_ctx_t _asn_ctx;
192                                 } *dci_Format0_0_AndFormat1_0;
193                                 struct SearchSpace__searchSpaceType__common__dci_Format2_0 {
194                                         struct SearchSpace__searchSpaceType__common__dci_Format2_0__nrofCandidates_SFI {
195                                                 long    *aggregationLevel1;     /* OPTIONAL */
196                                                 long    *aggregationLevel2;     /* OPTIONAL */
197                                                 long    *aggregationLevel4;     /* OPTIONAL */
198                                                 long    *aggregationLevel8;     /* OPTIONAL */
199                                                 long    *aggregationLevel16;    /* OPTIONAL */
200                                                 
201                                                 /* Context for parsing across buffer boundaries */
202                                                 asn_struct_ctx_t _asn_ctx;
203                                         } nrofCandidates_SFI;
204                                         /*
205                                          * This type is extensible,
206                                          * possible extensions are below.
207                                          */
208                                         
209                                         /* Context for parsing across buffer boundaries */
210                                         asn_struct_ctx_t _asn_ctx;
211                                 } *dci_Format2_0;
212                                 struct SearchSpace__searchSpaceType__common__dci_Format2_1 {
213                                         /*
214                                          * This type is extensible,
215                                          * possible extensions are below.
216                                          */
217                                         
218                                         /* Context for parsing across buffer boundaries */
219                                         asn_struct_ctx_t _asn_ctx;
220                                 } *dci_Format2_1;
221                                 struct SearchSpace__searchSpaceType__common__dci_Format2_2 {
222                                         /*
223                                          * This type is extensible,
224                                          * possible extensions are below.
225                                          */
226                                         
227                                         /* Context for parsing across buffer boundaries */
228                                         asn_struct_ctx_t _asn_ctx;
229                                 } *dci_Format2_2;
230                                 struct SearchSpace__searchSpaceType__common__dci_Format2_3 {
231                                         long    *dummy1;        /* OPTIONAL */
232                                         long     dummy2;
233                                         /*
234                                          * This type is extensible,
235                                          * possible extensions are below.
236                                          */
237                                         
238                                         /* Context for parsing across buffer boundaries */
239                                         asn_struct_ctx_t _asn_ctx;
240                                 } *dci_Format2_3;
241                                 
242                                 /* Context for parsing across buffer boundaries */
243                                 asn_struct_ctx_t _asn_ctx;
244                         } *common;
245                         struct SearchSpace__searchSpaceType__ue_Specific {
246                                 long     dci_Formats;
247                                 /*
248                                  * This type is extensible,
249                                  * possible extensions are below.
250                                  */
251                                 
252                                 /* Context for parsing across buffer boundaries */
253                                 asn_struct_ctx_t _asn_ctx;
254                         } *ue_Specific;
255                 } choice;
256                 
257                 /* Context for parsing across buffer boundaries */
258                 asn_struct_ctx_t _asn_ctx;
259         } *searchSpaceType;
260         
261         /* Context for parsing across buffer boundaries */
262         asn_struct_ctx_t _asn_ctx;
263 } SearchSpace_t;
264
265 /* Implementation */
266 /* extern asn_TYPE_descriptor_t asn_DEF_aggregationLevel1_23;   // (Use -fall-defs-global to expose) */
267 /* extern asn_TYPE_descriptor_t asn_DEF_aggregationLevel2_32;   // (Use -fall-defs-global to expose) */
268 /* extern asn_TYPE_descriptor_t asn_DEF_aggregationLevel4_41;   // (Use -fall-defs-global to expose) */
269 /* extern asn_TYPE_descriptor_t asn_DEF_aggregationLevel8_50;   // (Use -fall-defs-global to expose) */
270 /* extern asn_TYPE_descriptor_t asn_DEF_aggregationLevel16_59;  // (Use -fall-defs-global to expose) */
271 /* extern asn_TYPE_descriptor_t asn_DEF_aggregationLevel1_74;   // (Use -fall-defs-global to expose) */
272 /* extern asn_TYPE_descriptor_t asn_DEF_aggregationLevel2_77;   // (Use -fall-defs-global to expose) */
273 /* extern asn_TYPE_descriptor_t asn_DEF_aggregationLevel4_80;   // (Use -fall-defs-global to expose) */
274 /* extern asn_TYPE_descriptor_t asn_DEF_aggregationLevel8_83;   // (Use -fall-defs-global to expose) */
275 /* extern asn_TYPE_descriptor_t asn_DEF_aggregationLevel16_86;  // (Use -fall-defs-global to expose) */
276 /* extern asn_TYPE_descriptor_t asn_DEF_dummy1_95;      // (Use -fall-defs-global to expose) */
277 /* extern asn_TYPE_descriptor_t asn_DEF_dummy2_104;     // (Use -fall-defs-global to expose) */
278 /* extern asn_TYPE_descriptor_t asn_DEF_dci_Formats_109;        // (Use -fall-defs-global to expose) */
279 extern asn_TYPE_descriptor_t asn_DEF_SearchSpace;
280 extern asn_SEQUENCE_specifics_t asn_SPC_SearchSpace_specs_1;
281 extern asn_TYPE_member_t asn_MBR_SearchSpace_1[7];
282
283 #ifdef __cplusplus
284 }
285 #endif
286
287 #endif  /* _SearchSpace_H_ */
288 #include <asn_internal.h>