[Epic-ID: ODUHIGH-405][Task-ID: ODUHIGH-423] Modified RRC asn structures
[o-du/l2.git] / src / codec_utils / RRC / Phy-ParametersFR1.c
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 #include "Phy-ParametersFR1.h"
9
10 /*
11  * This type is implemented using NativeEnumerated,
12  * so here we adjust the DEF accordingly.
13  */
14 /*
15  * This type is implemented using NativeEnumerated,
16  * so here we adjust the DEF accordingly.
17  */
18 /*
19  * This type is implemented using NativeEnumerated,
20  * so here we adjust the DEF accordingly.
21  */
22 /*
23  * This type is implemented using NativeEnumerated,
24  * so here we adjust the DEF accordingly.
25  */
26 static asn_oer_constraints_t asn_OER_type_pdcchMonitoringSingleOccasion_constr_2 CC_NOTUSED = {
27         { 0, 0 },
28         -1};
29 static asn_per_constraints_t asn_PER_type_pdcchMonitoringSingleOccasion_constr_2 CC_NOTUSED = {
30         { APC_CONSTRAINED,       0,  0,  0,  0 }        /* (0..0) */,
31         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
32         0, 0    /* No PER value map */
33 };
34 static asn_oer_constraints_t asn_OER_type_scs_60kHz_constr_4 CC_NOTUSED = {
35         { 0, 0 },
36         -1};
37 static asn_per_constraints_t asn_PER_type_scs_60kHz_constr_4 CC_NOTUSED = {
38         { APC_CONSTRAINED,       0,  0,  0,  0 }        /* (0..0) */,
39         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
40         0, 0    /* No PER value map */
41 };
42 static asn_oer_constraints_t asn_OER_type_pdsch_256QAM_FR1_constr_6 CC_NOTUSED = {
43         { 0, 0 },
44         -1};
45 static asn_per_constraints_t asn_PER_type_pdsch_256QAM_FR1_constr_6 CC_NOTUSED = {
46         { APC_CONSTRAINED,       0,  0,  0,  0 }        /* (0..0) */,
47         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
48         0, 0    /* No PER value map */
49 };
50 static asn_oer_constraints_t asn_OER_type_pdsch_RE_MappingFR1_PerSymbol_constr_8 CC_NOTUSED = {
51         { 0, 0 },
52         -1};
53 static asn_per_constraints_t asn_PER_type_pdsch_RE_MappingFR1_PerSymbol_constr_8 CC_NOTUSED = {
54         { APC_CONSTRAINED,       1,  1,  0,  1 }        /* (0..1) */,
55         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
56         0, 0    /* No PER value map */
57 };
58 static const asn_INTEGER_enum_map_t asn_MAP_pdcchMonitoringSingleOccasion_value2enum_2[] = {
59         { 0,    9,      "supported" }
60 };
61 static const unsigned int asn_MAP_pdcchMonitoringSingleOccasion_enum2value_2[] = {
62         0       /* supported(0) */
63 };
64 static const asn_INTEGER_specifics_t asn_SPC_pdcchMonitoringSingleOccasion_specs_2 = {
65         asn_MAP_pdcchMonitoringSingleOccasion_value2enum_2,     /* "tag" => N; sorted by tag */
66         asn_MAP_pdcchMonitoringSingleOccasion_enum2value_2,     /* N => "tag"; sorted by N */
67         1,      /* Number of elements in the maps */
68         0,      /* Enumeration is not extensible */
69         1,      /* Strict enumeration */
70         0,      /* Native long size */
71         0
72 };
73 static const ber_tlv_tag_t asn_DEF_pdcchMonitoringSingleOccasion_tags_2[] = {
74         (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
75         (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
76 };
77 static /* Use -fall-defs-global to expose */
78 asn_TYPE_descriptor_t asn_DEF_pdcchMonitoringSingleOccasion_2 = {
79         "pdcchMonitoringSingleOccasion",
80         "pdcchMonitoringSingleOccasion",
81         &asn_OP_NativeEnumerated,
82         asn_DEF_pdcchMonitoringSingleOccasion_tags_2,
83         sizeof(asn_DEF_pdcchMonitoringSingleOccasion_tags_2)
84                 /sizeof(asn_DEF_pdcchMonitoringSingleOccasion_tags_2[0]) - 1, /* 1 */
85         asn_DEF_pdcchMonitoringSingleOccasion_tags_2,   /* Same as above */
86         sizeof(asn_DEF_pdcchMonitoringSingleOccasion_tags_2)
87                 /sizeof(asn_DEF_pdcchMonitoringSingleOccasion_tags_2[0]), /* 2 */
88         { &asn_OER_type_pdcchMonitoringSingleOccasion_constr_2, &asn_PER_type_pdcchMonitoringSingleOccasion_constr_2, NativeEnumerated_constraint },
89         0, 0,   /* Defined elsewhere */
90         &asn_SPC_pdcchMonitoringSingleOccasion_specs_2  /* Additional specs */
91 };
92
93 static const asn_INTEGER_enum_map_t asn_MAP_scs_60kHz_value2enum_4[] = {
94         { 0,    9,      "supported" }
95 };
96 static const unsigned int asn_MAP_scs_60kHz_enum2value_4[] = {
97         0       /* supported(0) */
98 };
99 static const asn_INTEGER_specifics_t asn_SPC_scs_60kHz_specs_4 = {
100         asn_MAP_scs_60kHz_value2enum_4, /* "tag" => N; sorted by tag */
101         asn_MAP_scs_60kHz_enum2value_4, /* N => "tag"; sorted by N */
102         1,      /* Number of elements in the maps */
103         0,      /* Enumeration is not extensible */
104         1,      /* Strict enumeration */
105         0,      /* Native long size */
106         0
107 };
108 static const ber_tlv_tag_t asn_DEF_scs_60kHz_tags_4[] = {
109         (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
110         (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
111 };
112 static /* Use -fall-defs-global to expose */
113 asn_TYPE_descriptor_t asn_DEF_scs_60kHz_4 = {
114         "scs-60kHz",
115         "scs-60kHz",
116         &asn_OP_NativeEnumerated,
117         asn_DEF_scs_60kHz_tags_4,
118         sizeof(asn_DEF_scs_60kHz_tags_4)
119                 /sizeof(asn_DEF_scs_60kHz_tags_4[0]) - 1, /* 1 */
120         asn_DEF_scs_60kHz_tags_4,       /* Same as above */
121         sizeof(asn_DEF_scs_60kHz_tags_4)
122                 /sizeof(asn_DEF_scs_60kHz_tags_4[0]), /* 2 */
123         { &asn_OER_type_scs_60kHz_constr_4, &asn_PER_type_scs_60kHz_constr_4, NativeEnumerated_constraint },
124         0, 0,   /* Defined elsewhere */
125         &asn_SPC_scs_60kHz_specs_4      /* Additional specs */
126 };
127
128 static const asn_INTEGER_enum_map_t asn_MAP_pdsch_256QAM_FR1_value2enum_6[] = {
129         { 0,    9,      "supported" }
130 };
131 static const unsigned int asn_MAP_pdsch_256QAM_FR1_enum2value_6[] = {
132         0       /* supported(0) */
133 };
134 static const asn_INTEGER_specifics_t asn_SPC_pdsch_256QAM_FR1_specs_6 = {
135         asn_MAP_pdsch_256QAM_FR1_value2enum_6,  /* "tag" => N; sorted by tag */
136         asn_MAP_pdsch_256QAM_FR1_enum2value_6,  /* N => "tag"; sorted by N */
137         1,      /* Number of elements in the maps */
138         0,      /* Enumeration is not extensible */
139         1,      /* Strict enumeration */
140         0,      /* Native long size */
141         0
142 };
143 static const ber_tlv_tag_t asn_DEF_pdsch_256QAM_FR1_tags_6[] = {
144         (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
145         (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
146 };
147 static /* Use -fall-defs-global to expose */
148 asn_TYPE_descriptor_t asn_DEF_pdsch_256QAM_FR1_6 = {
149         "pdsch-256QAM-FR1",
150         "pdsch-256QAM-FR1",
151         &asn_OP_NativeEnumerated,
152         asn_DEF_pdsch_256QAM_FR1_tags_6,
153         sizeof(asn_DEF_pdsch_256QAM_FR1_tags_6)
154                 /sizeof(asn_DEF_pdsch_256QAM_FR1_tags_6[0]) - 1, /* 1 */
155         asn_DEF_pdsch_256QAM_FR1_tags_6,        /* Same as above */
156         sizeof(asn_DEF_pdsch_256QAM_FR1_tags_6)
157                 /sizeof(asn_DEF_pdsch_256QAM_FR1_tags_6[0]), /* 2 */
158         { &asn_OER_type_pdsch_256QAM_FR1_constr_6, &asn_PER_type_pdsch_256QAM_FR1_constr_6, NativeEnumerated_constraint },
159         0, 0,   /* Defined elsewhere */
160         &asn_SPC_pdsch_256QAM_FR1_specs_6       /* Additional specs */
161 };
162
163 static const asn_INTEGER_enum_map_t asn_MAP_pdsch_RE_MappingFR1_PerSymbol_value2enum_8[] = {
164         { 0,    3,      "n10" },
165         { 1,    3,      "n20" }
166 };
167 static const unsigned int asn_MAP_pdsch_RE_MappingFR1_PerSymbol_enum2value_8[] = {
168         0,      /* n10(0) */
169         1       /* n20(1) */
170 };
171 static const asn_INTEGER_specifics_t asn_SPC_pdsch_RE_MappingFR1_PerSymbol_specs_8 = {
172         asn_MAP_pdsch_RE_MappingFR1_PerSymbol_value2enum_8,     /* "tag" => N; sorted by tag */
173         asn_MAP_pdsch_RE_MappingFR1_PerSymbol_enum2value_8,     /* N => "tag"; sorted by N */
174         2,      /* Number of elements in the maps */
175         0,      /* Enumeration is not extensible */
176         1,      /* Strict enumeration */
177         0,      /* Native long size */
178         0
179 };
180 static const ber_tlv_tag_t asn_DEF_pdsch_RE_MappingFR1_PerSymbol_tags_8[] = {
181         (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
182         (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
183 };
184 static /* Use -fall-defs-global to expose */
185 asn_TYPE_descriptor_t asn_DEF_pdsch_RE_MappingFR1_PerSymbol_8 = {
186         "pdsch-RE-MappingFR1-PerSymbol",
187         "pdsch-RE-MappingFR1-PerSymbol",
188         &asn_OP_NativeEnumerated,
189         asn_DEF_pdsch_RE_MappingFR1_PerSymbol_tags_8,
190         sizeof(asn_DEF_pdsch_RE_MappingFR1_PerSymbol_tags_8)
191                 /sizeof(asn_DEF_pdsch_RE_MappingFR1_PerSymbol_tags_8[0]) - 1, /* 1 */
192         asn_DEF_pdsch_RE_MappingFR1_PerSymbol_tags_8,   /* Same as above */
193         sizeof(asn_DEF_pdsch_RE_MappingFR1_PerSymbol_tags_8)
194                 /sizeof(asn_DEF_pdsch_RE_MappingFR1_PerSymbol_tags_8[0]), /* 2 */
195         { &asn_OER_type_pdsch_RE_MappingFR1_PerSymbol_constr_8, &asn_PER_type_pdsch_RE_MappingFR1_PerSymbol_constr_8, NativeEnumerated_constraint },
196         0, 0,   /* Defined elsewhere */
197         &asn_SPC_pdsch_RE_MappingFR1_PerSymbol_specs_8  /* Additional specs */
198 };
199
200 asn_TYPE_member_t asn_MBR_Phy_ParametersFR1_1[] = {
201         { ATF_POINTER, 4, offsetof(struct Phy_ParametersFR1, pdcchMonitoringSingleOccasion),
202                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
203                 -1,     /* IMPLICIT tag at current level */
204                 &asn_DEF_pdcchMonitoringSingleOccasion_2,
205                 0,
206                 { 0, 0, 0 },
207                 0, 0, /* No default value */
208                 "pdcchMonitoringSingleOccasion"
209                 },
210         { ATF_POINTER, 3, offsetof(struct Phy_ParametersFR1, scs_60kHz),
211                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
212                 -1,     /* IMPLICIT tag at current level */
213                 &asn_DEF_scs_60kHz_4,
214                 0,
215                 { 0, 0, 0 },
216                 0, 0, /* No default value */
217                 "scs-60kHz"
218                 },
219         { ATF_POINTER, 2, offsetof(struct Phy_ParametersFR1, pdsch_256QAM_FR1),
220                 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
221                 -1,     /* IMPLICIT tag at current level */
222                 &asn_DEF_pdsch_256QAM_FR1_6,
223                 0,
224                 { 0, 0, 0 },
225                 0, 0, /* No default value */
226                 "pdsch-256QAM-FR1"
227                 },
228         { ATF_POINTER, 1, offsetof(struct Phy_ParametersFR1, pdsch_RE_MappingFR1_PerSymbol),
229                 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
230                 -1,     /* IMPLICIT tag at current level */
231                 &asn_DEF_pdsch_RE_MappingFR1_PerSymbol_8,
232                 0,
233                 { 0, 0, 0 },
234                 0, 0, /* No default value */
235                 "pdsch-RE-MappingFR1-PerSymbol"
236                 },
237 };
238 static const int asn_MAP_Phy_ParametersFR1_oms_1[] = { 0, 1, 2, 3 };
239 static const ber_tlv_tag_t asn_DEF_Phy_ParametersFR1_tags_1[] = {
240         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
241 };
242 static const asn_TYPE_tag2member_t asn_MAP_Phy_ParametersFR1_tag2el_1[] = {
243     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pdcchMonitoringSingleOccasion */
244     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* scs-60kHz */
245     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pdsch-256QAM-FR1 */
246     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* pdsch-RE-MappingFR1-PerSymbol */
247 };
248 asn_SEQUENCE_specifics_t asn_SPC_Phy_ParametersFR1_specs_1 = {
249         sizeof(struct Phy_ParametersFR1),
250         offsetof(struct Phy_ParametersFR1, _asn_ctx),
251         asn_MAP_Phy_ParametersFR1_tag2el_1,
252         4,      /* Count of tags in the map */
253         asn_MAP_Phy_ParametersFR1_oms_1,        /* Optional members */
254         4, 0,   /* Root/Additions */
255         4,      /* First extension addition */
256 };
257 asn_TYPE_descriptor_t asn_DEF_Phy_ParametersFR1 = {
258         "Phy-ParametersFR1",
259         "Phy-ParametersFR1",
260         &asn_OP_SEQUENCE,
261         asn_DEF_Phy_ParametersFR1_tags_1,
262         sizeof(asn_DEF_Phy_ParametersFR1_tags_1)
263                 /sizeof(asn_DEF_Phy_ParametersFR1_tags_1[0]), /* 1 */
264         asn_DEF_Phy_ParametersFR1_tags_1,       /* Same as above */
265         sizeof(asn_DEF_Phy_ParametersFR1_tags_1)
266                 /sizeof(asn_DEF_Phy_ParametersFR1_tags_1[0]), /* 1 */
267         { 0, 0, SEQUENCE_constraint },
268         asn_MBR_Phy_ParametersFR1_1,
269         4,      /* Elements count */
270         &asn_SPC_Phy_ParametersFR1_specs_1      /* Additional specs */
271 };
272