[Epic-ID: ODUHIGH-405][Task-ID: ODUHIGH-423] Modified RRC asn structures
[o-du/l2.git] / src / codec_utils / RRC / BandNR.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 _BandNR_H_
9 #define _BandNR_H_
10
11
12 #include <asn_application.h>
13
14 /* Including external dependencies */
15 #include "FreqBandIndicatorNR.h"
16 #include <BIT_STRING.h>
17 #include <NativeEnumerated.h>
18 #include <constr_SEQUENCE.h>
19 #include <constr_CHOICE.h>
20
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24
25 /* Dependencies */
26 typedef enum BandNR__extendedCP {
27         BandNR__extendedCP_supported    = 0
28 } e_BandNR__extendedCP;
29 typedef enum BandNR__multipleTCI {
30         BandNR__multipleTCI_supported   = 0
31 } e_BandNR__multipleTCI;
32 typedef enum BandNR__bwp_WithoutRestriction {
33         BandNR__bwp_WithoutRestriction_supported        = 0
34 } e_BandNR__bwp_WithoutRestriction;
35 typedef enum BandNR__bwp_SameNumerology {
36         BandNR__bwp_SameNumerology_upto2        = 0,
37         BandNR__bwp_SameNumerology_upto4        = 1
38 } e_BandNR__bwp_SameNumerology;
39 typedef enum BandNR__bwp_DiffNumerology {
40         BandNR__bwp_DiffNumerology_upto4        = 0
41 } e_BandNR__bwp_DiffNumerology;
42 typedef enum BandNR__crossCarrierScheduling_SameSCS {
43         BandNR__crossCarrierScheduling_SameSCS_supported        = 0
44 } e_BandNR__crossCarrierScheduling_SameSCS;
45 typedef enum BandNR__pdsch_256QAM_FR2 {
46         BandNR__pdsch_256QAM_FR2_supported      = 0
47 } e_BandNR__pdsch_256QAM_FR2;
48 typedef enum BandNR__pusch_256QAM {
49         BandNR__pusch_256QAM_supported  = 0
50 } e_BandNR__pusch_256QAM;
51 typedef enum BandNR__ue_PowerClass {
52         BandNR__ue_PowerClass_pc1       = 0,
53         BandNR__ue_PowerClass_pc2       = 1,
54         BandNR__ue_PowerClass_pc3       = 2,
55         BandNR__ue_PowerClass_pc4       = 3
56 } e_BandNR__ue_PowerClass;
57 typedef enum BandNR__rateMatchingLTE_CRS {
58         BandNR__rateMatchingLTE_CRS_supported   = 0
59 } e_BandNR__rateMatchingLTE_CRS;
60 typedef enum BandNR__channelBWs_DL_v1530_PR {
61         BandNR__channelBWs_DL_v1530_PR_NOTHING, /* No components present */
62         BandNR__channelBWs_DL_v1530_PR_fr1,
63         BandNR__channelBWs_DL_v1530_PR_fr2
64 } BandNR__channelBWs_DL_v1530_PR;
65 typedef enum BandNR__channelBWs_UL_v1530_PR {
66         BandNR__channelBWs_UL_v1530_PR_NOTHING, /* No components present */
67         BandNR__channelBWs_UL_v1530_PR_fr1,
68         BandNR__channelBWs_UL_v1530_PR_fr2
69 } BandNR__channelBWs_UL_v1530_PR;
70 typedef enum BandNR__ext1__maxUplinkDutyCycle_PC2_FR1 {
71         BandNR__ext1__maxUplinkDutyCycle_PC2_FR1_n60    = 0,
72         BandNR__ext1__maxUplinkDutyCycle_PC2_FR1_n70    = 1,
73         BandNR__ext1__maxUplinkDutyCycle_PC2_FR1_n80    = 2,
74         BandNR__ext1__maxUplinkDutyCycle_PC2_FR1_n90    = 3,
75         BandNR__ext1__maxUplinkDutyCycle_PC2_FR1_n100   = 4
76 } e_BandNR__ext1__maxUplinkDutyCycle_PC2_FR1;
77
78 /* Forward declarations */
79 struct MIMO_ParametersPerBand;
80
81 /* BandNR */
82 typedef struct BandNR {
83         FreqBandIndicatorNR_t    bandNR;
84         BIT_STRING_t    *modifiedMPR_Behaviour; /* OPTIONAL */
85         struct MIMO_ParametersPerBand   *mimo_ParametersPerBand;        /* OPTIONAL */
86         long    *extendedCP;    /* OPTIONAL */
87         long    *multipleTCI;   /* OPTIONAL */
88         long    *bwp_WithoutRestriction;        /* OPTIONAL */
89         long    *bwp_SameNumerology;    /* OPTIONAL */
90         long    *bwp_DiffNumerology;    /* OPTIONAL */
91         long    *crossCarrierScheduling_SameSCS;        /* OPTIONAL */
92         long    *pdsch_256QAM_FR2;      /* OPTIONAL */
93         long    *pusch_256QAM;  /* OPTIONAL */
94         long    *ue_PowerClass; /* OPTIONAL */
95         long    *rateMatchingLTE_CRS;   /* OPTIONAL */
96         struct BandNR__channelBWs_DL_v1530 {
97                 BandNR__channelBWs_DL_v1530_PR present;
98                 union BandNR__channelBWs_DL_v1530_u {
99                         struct BandNR__channelBWs_DL_v1530__fr1 {
100                                 BIT_STRING_t    *scs_15kHz;     /* OPTIONAL */
101                                 BIT_STRING_t    *scs_30kHz;     /* OPTIONAL */
102                                 BIT_STRING_t    *scs_60kHz;     /* OPTIONAL */
103                                 
104                                 /* Context for parsing across buffer boundaries */
105                                 asn_struct_ctx_t _asn_ctx;
106                         } *fr1;
107                         struct BandNR__channelBWs_DL_v1530__fr2 {
108                                 BIT_STRING_t    *scs_60kHz;     /* OPTIONAL */
109                                 BIT_STRING_t    *scs_120kHz;    /* OPTIONAL */
110                                 
111                                 /* Context for parsing across buffer boundaries */
112                                 asn_struct_ctx_t _asn_ctx;
113                         } *fr2;
114                 } choice;
115                 
116                 /* Context for parsing across buffer boundaries */
117                 asn_struct_ctx_t _asn_ctx;
118         } *channelBWs_DL_v1530;
119         struct BandNR__channelBWs_UL_v1530 {
120                 BandNR__channelBWs_UL_v1530_PR present;
121                 union BandNR__channelBWs_UL_v1530_u {
122                         struct BandNR__channelBWs_UL_v1530__fr1 {
123                                 BIT_STRING_t    *scs_15kHz;     /* OPTIONAL */
124                                 BIT_STRING_t    *scs_30kHz;     /* OPTIONAL */
125                                 BIT_STRING_t    *scs_60kHz;     /* OPTIONAL */
126                                 
127                                 /* Context for parsing across buffer boundaries */
128                                 asn_struct_ctx_t _asn_ctx;
129                         } *fr1;
130                         struct BandNR__channelBWs_UL_v1530__fr2 {
131                                 BIT_STRING_t    *scs_60kHz;     /* OPTIONAL */
132                                 BIT_STRING_t    *scs_120kHz;    /* OPTIONAL */
133                                 
134                                 /* Context for parsing across buffer boundaries */
135                                 asn_struct_ctx_t _asn_ctx;
136                         } *fr2;
137                 } choice;
138                 
139                 /* Context for parsing across buffer boundaries */
140                 asn_struct_ctx_t _asn_ctx;
141         } *channelBWs_UL_v1530;
142         /*
143          * This type is extensible,
144          * possible extensions are below.
145          */
146         struct BandNR__ext1 {
147                 long    *maxUplinkDutyCycle_PC2_FR1;    /* OPTIONAL */
148                 
149                 /* Context for parsing across buffer boundaries */
150                 asn_struct_ctx_t _asn_ctx;
151         } *ext1;
152         
153         /* Context for parsing across buffer boundaries */
154         asn_struct_ctx_t _asn_ctx;
155 } BandNR_t;
156
157 /* Implementation */
158 /* extern asn_TYPE_descriptor_t asn_DEF_extendedCP_5;   // (Use -fall-defs-global to expose) */
159 /* extern asn_TYPE_descriptor_t asn_DEF_multipleTCI_7;  // (Use -fall-defs-global to expose) */
160 /* extern asn_TYPE_descriptor_t asn_DEF_bwp_WithoutRestriction_9;       // (Use -fall-defs-global to expose) */
161 /* extern asn_TYPE_descriptor_t asn_DEF_bwp_SameNumerology_11;  // (Use -fall-defs-global to expose) */
162 /* extern asn_TYPE_descriptor_t asn_DEF_bwp_DiffNumerology_14;  // (Use -fall-defs-global to expose) */
163 /* extern asn_TYPE_descriptor_t asn_DEF_crossCarrierScheduling_SameSCS_16;      // (Use -fall-defs-global to expose) */
164 /* extern asn_TYPE_descriptor_t asn_DEF_pdsch_256QAM_FR2_18;    // (Use -fall-defs-global to expose) */
165 /* extern asn_TYPE_descriptor_t asn_DEF_pusch_256QAM_20;        // (Use -fall-defs-global to expose) */
166 /* extern asn_TYPE_descriptor_t asn_DEF_ue_PowerClass_22;       // (Use -fall-defs-global to expose) */
167 /* extern asn_TYPE_descriptor_t asn_DEF_rateMatchingLTE_CRS_27; // (Use -fall-defs-global to expose) */
168 /* extern asn_TYPE_descriptor_t asn_DEF_maxUplinkDutyCycle_PC2_FR1_47;  // (Use -fall-defs-global to expose) */
169 extern asn_TYPE_descriptor_t asn_DEF_BandNR;
170 extern asn_SEQUENCE_specifics_t asn_SPC_BandNR_specs_1;
171 extern asn_TYPE_member_t asn_MBR_BandNR_1[16];
172
173 #ifdef __cplusplus
174 }
175 #endif
176
177 #endif  /* _BandNR_H_ */
178 #include <asn_internal.h>