398c1e74900fa6b91d2c7e5f0cee90fec04d5565
[o-du/l2.git] / src / codec_utils / RRC / LogicalChannelConfig.h
1 /*
2  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3  * From ASN.1 module "NR-RRC-Definitions"
4  *      found in "/home/labadmin/hlal/rrc_15.3_asn.asn1"
5  *      `asn1c -D ./15_3_rrc/ -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
6  */
7
8 #ifndef _LogicalChannelConfig_H_
9 #define _LogicalChannelConfig_H_
10
11
12 #include <asn_application.h>
13
14 /* Including external dependencies */
15 #include <NativeInteger.h>
16 #include <NativeEnumerated.h>
17 #include "SchedulingRequestId.h"
18 #include <BOOLEAN.h>
19 #include "ServCellIndex.h"
20 #include <asn_SEQUENCE_OF.h>
21 #include <constr_SEQUENCE_OF.h>
22 #include "SubcarrierSpacing.h"
23 #include <constr_SEQUENCE.h>
24
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28
29 /* Dependencies */
30 typedef enum LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate {
31         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps0   = 0,
32         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps8   = 1,
33         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps16  = 2,
34         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps32  = 3,
35         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps64  = 4,
36         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps128 = 5,
37         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps256 = 6,
38         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps512 = 7,
39         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps1024        = 8,
40         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps2048        = 9,
41         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps4096        = 10,
42         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps8192        = 11,
43         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps16384       = 12,
44         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps32768       = 13,
45         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_kBps65536       = 14,
46         LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate_infinity        = 15
47 } e_LogicalChannelConfig__ul_SpecificParameters__prioritisedBitRate;
48 typedef enum LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration {
49         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_ms5     = 0,
50         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_ms10    = 1,
51         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_ms20    = 2,
52         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_ms50    = 3,
53         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_ms100   = 4,
54         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_ms150   = 5,
55         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_ms300   = 6,
56         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_ms500   = 7,
57         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_ms1000  = 8,
58         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_spare7  = 9,
59         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_spare6  = 10,
60         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_spare5  = 11,
61         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_spare4  = 12,
62         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_spare3  = 13,
63         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_spare2  = 14,
64         LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration_spare1  = 15
65 } e_LogicalChannelConfig__ul_SpecificParameters__bucketSizeDuration;
66 typedef enum LogicalChannelConfig__ul_SpecificParameters__maxPUSCH_Duration {
67         LogicalChannelConfig__ul_SpecificParameters__maxPUSCH_Duration_ms0p02   = 0,
68         LogicalChannelConfig__ul_SpecificParameters__maxPUSCH_Duration_ms0p04   = 1,
69         LogicalChannelConfig__ul_SpecificParameters__maxPUSCH_Duration_ms0p0625 = 2,
70         LogicalChannelConfig__ul_SpecificParameters__maxPUSCH_Duration_ms0p125  = 3,
71         LogicalChannelConfig__ul_SpecificParameters__maxPUSCH_Duration_ms0p25   = 4,
72         LogicalChannelConfig__ul_SpecificParameters__maxPUSCH_Duration_ms0p5    = 5,
73         LogicalChannelConfig__ul_SpecificParameters__maxPUSCH_Duration_spare2   = 6,
74         LogicalChannelConfig__ul_SpecificParameters__maxPUSCH_Duration_spare1   = 7
75 } e_LogicalChannelConfig__ul_SpecificParameters__maxPUSCH_Duration;
76 typedef enum LogicalChannelConfig__ul_SpecificParameters__configuredGrantType1Allowed {
77         LogicalChannelConfig__ul_SpecificParameters__configuredGrantType1Allowed_true   = 0
78 } e_LogicalChannelConfig__ul_SpecificParameters__configuredGrantType1Allowed;
79 typedef enum LogicalChannelConfig__ul_SpecificParameters__bitRateQueryProhibitTimer {
80         LogicalChannelConfig__ul_SpecificParameters__bitRateQueryProhibitTimer_s0       = 0,
81         LogicalChannelConfig__ul_SpecificParameters__bitRateQueryProhibitTimer_s0dot4   = 1,
82         LogicalChannelConfig__ul_SpecificParameters__bitRateQueryProhibitTimer_s0dot8   = 2,
83         LogicalChannelConfig__ul_SpecificParameters__bitRateQueryProhibitTimer_s1dot6   = 3,
84         LogicalChannelConfig__ul_SpecificParameters__bitRateQueryProhibitTimer_s3       = 4,
85         LogicalChannelConfig__ul_SpecificParameters__bitRateQueryProhibitTimer_s6       = 5,
86         LogicalChannelConfig__ul_SpecificParameters__bitRateQueryProhibitTimer_s12      = 6,
87         LogicalChannelConfig__ul_SpecificParameters__bitRateQueryProhibitTimer_s30      = 7
88 } e_LogicalChannelConfig__ul_SpecificParameters__bitRateQueryProhibitTimer;
89
90 /* LogicalChannelConfig */
91 typedef struct LogicalChannelConfig {
92         struct LogicalChannelConfig__ul_SpecificParameters {
93                 long     priority;
94                 long     prioritisedBitRate;
95                 long     bucketSizeDuration;
96                 struct LogicalChannelConfig__ul_SpecificParameters__allowedServingCells {
97                         A_SEQUENCE_OF(ServCellIndex_t) list;
98                         
99                         /* Context for parsing across buffer boundaries */
100                         asn_struct_ctx_t _asn_ctx;
101                 } *allowedServingCells;
102                 struct LogicalChannelConfig__ul_SpecificParameters__allowedSCS_List {
103                         A_SEQUENCE_OF(SubcarrierSpacing_t) list;
104                         
105                         /* Context for parsing across buffer boundaries */
106                         asn_struct_ctx_t _asn_ctx;
107                 } *allowedSCS_List;
108                 long    *maxPUSCH_Duration;     /* OPTIONAL */
109                 long    *configuredGrantType1Allowed;   /* OPTIONAL */
110                 long    *logicalChannelGroup;   /* OPTIONAL */
111                 SchedulingRequestId_t   *schedulingRequestID;   /* OPTIONAL */
112                 BOOLEAN_t        logicalChannelSR_Mask;
113                 BOOLEAN_t        logicalChannelSR_DelayTimerApplied;
114                 /*
115                  * This type is extensible,
116                  * possible extensions are below.
117                  */
118                 long    *bitRateQueryProhibitTimer;     /* OPTIONAL */
119                 
120                 /* Context for parsing across buffer boundaries */
121                 asn_struct_ctx_t _asn_ctx;
122         } *ul_SpecificParameters;
123         /*
124          * This type is extensible,
125          * possible extensions are below.
126          */
127         
128         /* Context for parsing across buffer boundaries */
129         asn_struct_ctx_t _asn_ctx;
130 } LogicalChannelConfig_t;
131
132 /* Implementation */
133 /* extern asn_TYPE_descriptor_t asn_DEF_prioritisedBitRate_4;   // (Use -fall-defs-global to expose) */
134 /* extern asn_TYPE_descriptor_t asn_DEF_bucketSizeDuration_21;  // (Use -fall-defs-global to expose) */
135 /* extern asn_TYPE_descriptor_t asn_DEF_maxPUSCH_Duration_42;   // (Use -fall-defs-global to expose) */
136 /* extern asn_TYPE_descriptor_t asn_DEF_configuredGrantType1Allowed_51; // (Use -fall-defs-global to expose) */
137 /* extern asn_TYPE_descriptor_t asn_DEF_bitRateQueryProhibitTimer_58;   // (Use -fall-defs-global to expose) */
138 extern asn_TYPE_descriptor_t asn_DEF_LogicalChannelConfig;
139 extern asn_SEQUENCE_specifics_t asn_SPC_LogicalChannelConfig_specs_1;
140 extern asn_TYPE_member_t asn_MBR_LogicalChannelConfig_1[1];
141
142 #ifdef __cplusplus
143 }
144 #endif
145
146 #endif  /* _LogicalChannelConfig_H_ */
147 #include <asn_internal.h>