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`
8 #ifndef _ServingCellConfig_H_
9 #define _ServingCellConfig_H_
12 #include <asn_application.h>
14 /* Including external dependencies */
16 #include <NativeEnumerated.h>
18 #include "MeasObjectId.h"
19 #include <asn_SEQUENCE_OF.h>
20 #include <constr_SEQUENCE_OF.h>
22 #include <constr_CHOICE.h>
23 #include "RateMatchPatternId.h"
24 #include <constr_SEQUENCE.h>
31 typedef enum ServingCellConfig__bwp_InactivityTimer {
32 ServingCellConfig__bwp_InactivityTimer_ms2 = 0,
33 ServingCellConfig__bwp_InactivityTimer_ms3 = 1,
34 ServingCellConfig__bwp_InactivityTimer_ms4 = 2,
35 ServingCellConfig__bwp_InactivityTimer_ms5 = 3,
36 ServingCellConfig__bwp_InactivityTimer_ms6 = 4,
37 ServingCellConfig__bwp_InactivityTimer_ms8 = 5,
38 ServingCellConfig__bwp_InactivityTimer_ms10 = 6,
39 ServingCellConfig__bwp_InactivityTimer_ms20 = 7,
40 ServingCellConfig__bwp_InactivityTimer_ms30 = 8,
41 ServingCellConfig__bwp_InactivityTimer_ms40 = 9,
42 ServingCellConfig__bwp_InactivityTimer_ms50 = 10,
43 ServingCellConfig__bwp_InactivityTimer_ms60 = 11,
44 ServingCellConfig__bwp_InactivityTimer_ms80 = 12,
45 ServingCellConfig__bwp_InactivityTimer_ms100 = 13,
46 ServingCellConfig__bwp_InactivityTimer_ms200 = 14,
47 ServingCellConfig__bwp_InactivityTimer_ms300 = 15,
48 ServingCellConfig__bwp_InactivityTimer_ms500 = 16,
49 ServingCellConfig__bwp_InactivityTimer_ms750 = 17,
50 ServingCellConfig__bwp_InactivityTimer_ms1280 = 18,
51 ServingCellConfig__bwp_InactivityTimer_ms1920 = 19,
52 ServingCellConfig__bwp_InactivityTimer_ms2560 = 20,
53 ServingCellConfig__bwp_InactivityTimer_spare10 = 21,
54 ServingCellConfig__bwp_InactivityTimer_spare9 = 22,
55 ServingCellConfig__bwp_InactivityTimer_spare8 = 23,
56 ServingCellConfig__bwp_InactivityTimer_spare7 = 24,
57 ServingCellConfig__bwp_InactivityTimer_spare6 = 25,
58 ServingCellConfig__bwp_InactivityTimer_spare5 = 26,
59 ServingCellConfig__bwp_InactivityTimer_spare4 = 27,
60 ServingCellConfig__bwp_InactivityTimer_spare3 = 28,
61 ServingCellConfig__bwp_InactivityTimer_spare2 = 29,
62 ServingCellConfig__bwp_InactivityTimer_spare1 = 30
63 } e_ServingCellConfig__bwp_InactivityTimer;
64 typedef enum ServingCellConfig__pdcch_ServingCellConfig_PR {
65 ServingCellConfig__pdcch_ServingCellConfig_PR_NOTHING, /* No components present */
66 ServingCellConfig__pdcch_ServingCellConfig_PR_release,
67 ServingCellConfig__pdcch_ServingCellConfig_PR_setup
68 } ServingCellConfig__pdcch_ServingCellConfig_PR;
69 typedef enum ServingCellConfig__pdsch_ServingCellConfig_PR {
70 ServingCellConfig__pdsch_ServingCellConfig_PR_NOTHING, /* No components present */
71 ServingCellConfig__pdsch_ServingCellConfig_PR_release,
72 ServingCellConfig__pdsch_ServingCellConfig_PR_setup
73 } ServingCellConfig__pdsch_ServingCellConfig_PR;
74 typedef enum ServingCellConfig__csi_MeasConfig_PR {
75 ServingCellConfig__csi_MeasConfig_PR_NOTHING, /* No components present */
76 ServingCellConfig__csi_MeasConfig_PR_release,
77 ServingCellConfig__csi_MeasConfig_PR_setup
78 } ServingCellConfig__csi_MeasConfig_PR;
79 typedef enum ServingCellConfig__sCellDeactivationTimer {
80 ServingCellConfig__sCellDeactivationTimer_ms20 = 0,
81 ServingCellConfig__sCellDeactivationTimer_ms40 = 1,
82 ServingCellConfig__sCellDeactivationTimer_ms80 = 2,
83 ServingCellConfig__sCellDeactivationTimer_ms160 = 3,
84 ServingCellConfig__sCellDeactivationTimer_ms200 = 4,
85 ServingCellConfig__sCellDeactivationTimer_ms240 = 5,
86 ServingCellConfig__sCellDeactivationTimer_ms320 = 6,
87 ServingCellConfig__sCellDeactivationTimer_ms400 = 7,
88 ServingCellConfig__sCellDeactivationTimer_ms480 = 8,
89 ServingCellConfig__sCellDeactivationTimer_ms520 = 9,
90 ServingCellConfig__sCellDeactivationTimer_ms640 = 10,
91 ServingCellConfig__sCellDeactivationTimer_ms720 = 11,
92 ServingCellConfig__sCellDeactivationTimer_ms840 = 12,
93 ServingCellConfig__sCellDeactivationTimer_ms1280 = 13,
94 ServingCellConfig__sCellDeactivationTimer_spare2 = 14,
95 ServingCellConfig__sCellDeactivationTimer_spare1 = 15
96 } e_ServingCellConfig__sCellDeactivationTimer;
97 typedef enum ServingCellConfig__dummy {
98 ServingCellConfig__dummy_enabled = 0
99 } e_ServingCellConfig__dummy;
100 typedef enum ServingCellConfig__pathlossReferenceLinking {
101 ServingCellConfig__pathlossReferenceLinking_pCell = 0,
102 ServingCellConfig__pathlossReferenceLinking_sCell = 1
103 } e_ServingCellConfig__pathlossReferenceLinking;
104 typedef enum ServingCellConfig__ext1__lte_CRS_ToMatchAround_PR {
105 ServingCellConfig__ext1__lte_CRS_ToMatchAround_PR_NOTHING, /* No components present */
106 ServingCellConfig__ext1__lte_CRS_ToMatchAround_PR_release,
107 ServingCellConfig__ext1__lte_CRS_ToMatchAround_PR_setup
108 } ServingCellConfig__ext1__lte_CRS_ToMatchAround_PR;
110 /* Forward declarations */
111 struct TDD_UL_DL_ConfigDedicated;
112 struct BWP_DownlinkDedicated;
114 struct CrossCarrierSchedulingConfig;
116 struct PDCCH_ServingCellConfig;
117 struct PDSCH_ServingCellConfig;
118 struct CSI_MeasConfig;
119 struct RateMatchPatternLTE_CRS;
120 struct RateMatchPattern;
121 struct SCS_SpecificCarrier;
123 /* ServingCellConfig */
124 typedef struct ServingCellConfig {
125 struct TDD_UL_DL_ConfigDedicated *tdd_UL_DL_ConfigurationDedicated; /* OPTIONAL */
126 struct BWP_DownlinkDedicated *initialDownlinkBWP; /* OPTIONAL */
127 struct ServingCellConfig__downlinkBWP_ToReleaseList {
128 A_SEQUENCE_OF(BWP_Id_t) list;
130 /* Context for parsing across buffer boundaries */
131 asn_struct_ctx_t _asn_ctx;
132 } *downlinkBWP_ToReleaseList;
133 struct ServingCellConfig__downlinkBWP_ToAddModList {
134 A_SEQUENCE_OF(struct BWP_Downlink) list;
136 /* Context for parsing across buffer boundaries */
137 asn_struct_ctx_t _asn_ctx;
138 } *downlinkBWP_ToAddModList;
139 BWP_Id_t *firstActiveDownlinkBWP_Id; /* OPTIONAL */
140 long *bwp_InactivityTimer; /* OPTIONAL */
141 BWP_Id_t *defaultDownlinkBWP_Id; /* OPTIONAL */
142 struct UplinkConfig *uplinkConfig; /* OPTIONAL */
143 struct UplinkConfig *supplementaryUplink; /* OPTIONAL */
144 struct ServingCellConfig__pdcch_ServingCellConfig {
145 ServingCellConfig__pdcch_ServingCellConfig_PR present;
146 union ServingCellConfig__pdcch_ServingCellConfig_u {
148 struct PDCCH_ServingCellConfig *setup;
151 /* Context for parsing across buffer boundaries */
152 asn_struct_ctx_t _asn_ctx;
153 } *pdcch_ServingCellConfig;
154 struct ServingCellConfig__pdsch_ServingCellConfig {
155 ServingCellConfig__pdsch_ServingCellConfig_PR present;
156 union ServingCellConfig__pdsch_ServingCellConfig_u {
158 struct PDSCH_ServingCellConfig *setup;
161 /* Context for parsing across buffer boundaries */
162 asn_struct_ctx_t _asn_ctx;
163 } *pdsch_ServingCellConfig;
164 struct ServingCellConfig__csi_MeasConfig {
165 ServingCellConfig__csi_MeasConfig_PR present;
166 union ServingCellConfig__csi_MeasConfig_u {
168 struct CSI_MeasConfig *setup;
171 /* Context for parsing across buffer boundaries */
172 asn_struct_ctx_t _asn_ctx;
174 long *sCellDeactivationTimer; /* OPTIONAL */
175 struct CrossCarrierSchedulingConfig *crossCarrierSchedulingConfig; /* OPTIONAL */
177 long *dummy; /* OPTIONAL */
178 long *pathlossReferenceLinking; /* OPTIONAL */
179 MeasObjectId_t *servingCellMO; /* OPTIONAL */
181 * This type is extensible,
182 * possible extensions are below.
184 struct ServingCellConfig__ext1 {
185 struct ServingCellConfig__ext1__lte_CRS_ToMatchAround {
186 ServingCellConfig__ext1__lte_CRS_ToMatchAround_PR present;
187 union ServingCellConfig__ext1__lte_CRS_ToMatchAround_u {
189 struct RateMatchPatternLTE_CRS *setup;
192 /* Context for parsing across buffer boundaries */
193 asn_struct_ctx_t _asn_ctx;
194 } *lte_CRS_ToMatchAround;
195 struct ServingCellConfig__ext1__rateMatchPatternToAddModList {
196 A_SEQUENCE_OF(struct RateMatchPattern) list;
198 /* Context for parsing across buffer boundaries */
199 asn_struct_ctx_t _asn_ctx;
200 } *rateMatchPatternToAddModList;
201 struct ServingCellConfig__ext1__rateMatchPatternToReleaseList {
202 A_SEQUENCE_OF(RateMatchPatternId_t) list;
204 /* Context for parsing across buffer boundaries */
205 asn_struct_ctx_t _asn_ctx;
206 } *rateMatchPatternToReleaseList;
207 struct ServingCellConfig__ext1__downlinkChannelBW_PerSCS_List {
208 A_SEQUENCE_OF(struct SCS_SpecificCarrier) list;
210 /* Context for parsing across buffer boundaries */
211 asn_struct_ctx_t _asn_ctx;
212 } *downlinkChannelBW_PerSCS_List;
214 /* Context for parsing across buffer boundaries */
215 asn_struct_ctx_t _asn_ctx;
218 /* Context for parsing across buffer boundaries */
219 asn_struct_ctx_t _asn_ctx;
220 } ServingCellConfig_t;
223 /* extern asn_TYPE_descriptor_t asn_DEF_bwp_InactivityTimer_9; // (Use -fall-defs-global to expose) */
224 /* extern asn_TYPE_descriptor_t asn_DEF_sCellDeactivationTimer_53; // (Use -fall-defs-global to expose) */
225 /* extern asn_TYPE_descriptor_t asn_DEF_dummy_72; // (Use -fall-defs-global to expose) */
226 /* extern asn_TYPE_descriptor_t asn_DEF_pathlossReferenceLinking_74; // (Use -fall-defs-global to expose) */
227 extern asn_TYPE_descriptor_t asn_DEF_ServingCellConfig;
228 extern asn_SEQUENCE_specifics_t asn_SPC_ServingCellConfig_specs_1;
229 extern asn_TYPE_member_t asn_MBR_ServingCellConfig_1[19];
235 #endif /* _ServingCellConfig_H_ */
236 #include <asn_internal.h>