[Epic-ID: ODUHIGH-405][Task-ID: ODUHIGH-423] Modified RRC asn structures
[o-du/l2.git] / src / codec_utils / RRC / SpCellConfig.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 "SpCellConfig.h"
9
10 #include "ReconfigurationWithSync.h"
11 #include "ServingCellConfig.h"
12 #include "RLF-TimersAndConstants.h"
13 /*
14  * This type is implemented using NativeEnumerated,
15  * so here we adjust the DEF accordingly.
16  */
17 static asn_oer_constraints_t asn_OER_type_rlf_TimersAndConstants_constr_4 CC_NOTUSED = {
18         { 0, 0 },
19         -1};
20 static asn_per_constraints_t asn_PER_type_rlf_TimersAndConstants_constr_4 CC_NOTUSED = {
21         { APC_CONSTRAINED,       1,  1,  0,  1 }        /* (0..1) */,
22         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
23         0, 0    /* No PER value map */
24 };
25 static asn_oer_constraints_t asn_OER_type_rlmInSyncOutOfSyncThreshold_constr_7 CC_NOTUSED = {
26         { 0, 0 },
27         -1};
28 static asn_per_constraints_t asn_PER_type_rlmInSyncOutOfSyncThreshold_constr_7 CC_NOTUSED = {
29         { APC_CONSTRAINED,       0,  0,  0,  0 }        /* (0..0) */,
30         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
31         0, 0    /* No PER value map */
32 };
33 static asn_TYPE_member_t asn_MBR_rlf_TimersAndConstants_4[] = {
34         { ATF_NOFLAGS, 0, offsetof(struct SpCellConfig__rlf_TimersAndConstants, choice.release),
35                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
36                 -1,     /* IMPLICIT tag at current level */
37                 &asn_DEF_NULL,
38                 0,
39                 { 0, 0, 0 },
40                 0, 0, /* No default value */
41                 "release"
42                 },
43         { ATF_POINTER, 0, offsetof(struct SpCellConfig__rlf_TimersAndConstants, choice.setup),
44                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
45                 -1,     /* IMPLICIT tag at current level */
46                 &asn_DEF_RLF_TimersAndConstants,
47                 0,
48                 { 0, 0, 0 },
49                 0, 0, /* No default value */
50                 "setup"
51                 },
52 };
53 static const asn_TYPE_tag2member_t asn_MAP_rlf_TimersAndConstants_tag2el_4[] = {
54     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
55     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
56 };
57 static asn_CHOICE_specifics_t asn_SPC_rlf_TimersAndConstants_specs_4 = {
58         sizeof(struct SpCellConfig__rlf_TimersAndConstants),
59         offsetof(struct SpCellConfig__rlf_TimersAndConstants, _asn_ctx),
60         offsetof(struct SpCellConfig__rlf_TimersAndConstants, present),
61         sizeof(((struct SpCellConfig__rlf_TimersAndConstants *)0)->present),
62         asn_MAP_rlf_TimersAndConstants_tag2el_4,
63         2,      /* Count of tags in the map */
64         0, 0,
65         -1      /* Extensions start */
66 };
67 static /* Use -fall-defs-global to expose */
68 asn_TYPE_descriptor_t asn_DEF_rlf_TimersAndConstants_4 = {
69         "rlf-TimersAndConstants",
70         "rlf-TimersAndConstants",
71         &asn_OP_CHOICE,
72         0,      /* No effective tags (pointer) */
73         0,      /* No effective tags (count) */
74         0,      /* No tags (pointer) */
75         0,      /* No tags (count) */
76         { &asn_OER_type_rlf_TimersAndConstants_constr_4, &asn_PER_type_rlf_TimersAndConstants_constr_4, CHOICE_constraint },
77         asn_MBR_rlf_TimersAndConstants_4,
78         2,      /* Elements count */
79         &asn_SPC_rlf_TimersAndConstants_specs_4 /* Additional specs */
80 };
81
82 static const asn_INTEGER_enum_map_t asn_MAP_rlmInSyncOutOfSyncThreshold_value2enum_7[] = {
83         { 0,    2,      "n1" }
84 };
85 static const unsigned int asn_MAP_rlmInSyncOutOfSyncThreshold_enum2value_7[] = {
86         0       /* n1(0) */
87 };
88 static const asn_INTEGER_specifics_t asn_SPC_rlmInSyncOutOfSyncThreshold_specs_7 = {
89         asn_MAP_rlmInSyncOutOfSyncThreshold_value2enum_7,       /* "tag" => N; sorted by tag */
90         asn_MAP_rlmInSyncOutOfSyncThreshold_enum2value_7,       /* N => "tag"; sorted by N */
91         1,      /* Number of elements in the maps */
92         0,      /* Enumeration is not extensible */
93         1,      /* Strict enumeration */
94         0,      /* Native long size */
95         0
96 };
97 static const ber_tlv_tag_t asn_DEF_rlmInSyncOutOfSyncThreshold_tags_7[] = {
98         (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
99         (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
100 };
101 static /* Use -fall-defs-global to expose */
102 asn_TYPE_descriptor_t asn_DEF_rlmInSyncOutOfSyncThreshold_7 = {
103         "rlmInSyncOutOfSyncThreshold",
104         "rlmInSyncOutOfSyncThreshold",
105         &asn_OP_NativeEnumerated,
106         asn_DEF_rlmInSyncOutOfSyncThreshold_tags_7,
107         sizeof(asn_DEF_rlmInSyncOutOfSyncThreshold_tags_7)
108                 /sizeof(asn_DEF_rlmInSyncOutOfSyncThreshold_tags_7[0]) - 1, /* 1 */
109         asn_DEF_rlmInSyncOutOfSyncThreshold_tags_7,     /* Same as above */
110         sizeof(asn_DEF_rlmInSyncOutOfSyncThreshold_tags_7)
111                 /sizeof(asn_DEF_rlmInSyncOutOfSyncThreshold_tags_7[0]), /* 2 */
112         { &asn_OER_type_rlmInSyncOutOfSyncThreshold_constr_7, &asn_PER_type_rlmInSyncOutOfSyncThreshold_constr_7, NativeEnumerated_constraint },
113         0, 0,   /* Defined elsewhere */
114         &asn_SPC_rlmInSyncOutOfSyncThreshold_specs_7    /* Additional specs */
115 };
116
117 asn_TYPE_member_t asn_MBR_SpCellConfig_1[] = {
118         { ATF_POINTER, 5, offsetof(struct SpCellConfig, servCellIndex),
119                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
120                 -1,     /* IMPLICIT tag at current level */
121                 &asn_DEF_ServCellIndex,
122                 0,
123                 { 0, 0, 0 },
124                 0, 0, /* No default value */
125                 "servCellIndex"
126                 },
127         { ATF_POINTER, 4, offsetof(struct SpCellConfig, reconfigurationWithSync),
128                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
129                 -1,     /* IMPLICIT tag at current level */
130                 &asn_DEF_ReconfigurationWithSync,
131                 0,
132                 { 0, 0, 0 },
133                 0, 0, /* No default value */
134                 "reconfigurationWithSync"
135                 },
136         { ATF_POINTER, 3, offsetof(struct SpCellConfig, rlf_TimersAndConstants),
137                 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
138                 +1,     /* EXPLICIT tag at current level */
139                 &asn_DEF_rlf_TimersAndConstants_4,
140                 0,
141                 { 0, 0, 0 },
142                 0, 0, /* No default value */
143                 "rlf-TimersAndConstants"
144                 },
145         { ATF_POINTER, 2, offsetof(struct SpCellConfig, rlmInSyncOutOfSyncThreshold),
146                 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
147                 -1,     /* IMPLICIT tag at current level */
148                 &asn_DEF_rlmInSyncOutOfSyncThreshold_7,
149                 0,
150                 { 0, 0, 0 },
151                 0, 0, /* No default value */
152                 "rlmInSyncOutOfSyncThreshold"
153                 },
154         { ATF_POINTER, 1, offsetof(struct SpCellConfig, spCellConfigDedicated),
155                 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
156                 -1,     /* IMPLICIT tag at current level */
157                 &asn_DEF_ServingCellConfig,
158                 0,
159                 { 0, 0, 0 },
160                 0, 0, /* No default value */
161                 "spCellConfigDedicated"
162                 },
163 };
164 static const int asn_MAP_SpCellConfig_oms_1[] = { 0, 1, 2, 3, 4 };
165 static const ber_tlv_tag_t asn_DEF_SpCellConfig_tags_1[] = {
166         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
167 };
168 static const asn_TYPE_tag2member_t asn_MAP_SpCellConfig_tag2el_1[] = {
169     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* servCellIndex */
170     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* reconfigurationWithSync */
171     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rlf-TimersAndConstants */
172     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* rlmInSyncOutOfSyncThreshold */
173     { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* spCellConfigDedicated */
174 };
175 asn_SEQUENCE_specifics_t asn_SPC_SpCellConfig_specs_1 = {
176         sizeof(struct SpCellConfig),
177         offsetof(struct SpCellConfig, _asn_ctx),
178         asn_MAP_SpCellConfig_tag2el_1,
179         5,      /* Count of tags in the map */
180         asn_MAP_SpCellConfig_oms_1,     /* Optional members */
181         5, 0,   /* Root/Additions */
182         5,      /* First extension addition */
183 };
184 asn_TYPE_descriptor_t asn_DEF_SpCellConfig = {
185         "SpCellConfig",
186         "SpCellConfig",
187         &asn_OP_SEQUENCE,
188         asn_DEF_SpCellConfig_tags_1,
189         sizeof(asn_DEF_SpCellConfig_tags_1)
190                 /sizeof(asn_DEF_SpCellConfig_tags_1[0]), /* 1 */
191         asn_DEF_SpCellConfig_tags_1,    /* Same as above */
192         sizeof(asn_DEF_SpCellConfig_tags_1)
193                 /sizeof(asn_DEF_SpCellConfig_tags_1[0]), /* 1 */
194         { 0, 0, SEQUENCE_constraint },
195         asn_MBR_SpCellConfig_1,
196         5,      /* Elements count */
197         &asn_SPC_SpCellConfig_specs_1   /* Additional specs */
198 };
199