[Epic-ID: ODUHIGH-405][Task-ID: ODUHIGH-423] Modified RRC asn structures
[o-du/l2.git] / src / codec_utils / RRC / DelayBudgetReport.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 "DelayBudgetReport.h"
9
10 /*
11  * This type is implemented using NativeEnumerated,
12  * so here we adjust the DEF accordingly.
13  */
14 static asn_oer_constraints_t asn_OER_type_type1_constr_2 CC_NOTUSED = {
15         { 0, 0 },
16         -1};
17 static asn_per_constraints_t asn_PER_type_type1_constr_2 CC_NOTUSED = {
18         { APC_CONSTRAINED,       5,  5,  0,  16 }       /* (0..16) */,
19         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
20         0, 0    /* No PER value map */
21 };
22 static asn_oer_constraints_t asn_OER_type_DelayBudgetReport_constr_1 CC_NOTUSED = {
23         { 0, 0 },
24         -1};
25 asn_per_constraints_t asn_PER_type_DelayBudgetReport_constr_1 CC_NOTUSED = {
26         { APC_CONSTRAINED | APC_EXTENSIBLE,  0,  0,  0,  0 }    /* (0..0,...) */,
27         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
28         0, 0    /* No PER value map */
29 };
30 static const asn_INTEGER_enum_map_t asn_MAP_type1_value2enum_2[] = {
31         { 0,    11,     "msMinus1280" },
32         { 1,    10,     "msMinus640" },
33         { 2,    10,     "msMinus320" },
34         { 3,    10,     "msMinus160" },
35         { 4,    9,      "msMinus80" },
36         { 5,    9,      "msMinus60" },
37         { 6,    9,      "msMinus40" },
38         { 7,    9,      "msMinus20" },
39         { 8,    3,      "ms0" },
40         { 9,    4,      "ms20" },
41         { 10,   4,      "ms40" },
42         { 11,   4,      "ms60" },
43         { 12,   4,      "ms80" },
44         { 13,   5,      "ms160" },
45         { 14,   5,      "ms320" },
46         { 15,   5,      "ms640" },
47         { 16,   6,      "ms1280" }
48 };
49 static const unsigned int asn_MAP_type1_enum2value_2[] = {
50         8,      /* ms0(8) */
51         16,     /* ms1280(16) */
52         13,     /* ms160(13) */
53         9,      /* ms20(9) */
54         14,     /* ms320(14) */
55         10,     /* ms40(10) */
56         11,     /* ms60(11) */
57         15,     /* ms640(15) */
58         12,     /* ms80(12) */
59         0,      /* msMinus1280(0) */
60         3,      /* msMinus160(3) */
61         7,      /* msMinus20(7) */
62         2,      /* msMinus320(2) */
63         6,      /* msMinus40(6) */
64         5,      /* msMinus60(5) */
65         1,      /* msMinus640(1) */
66         4       /* msMinus80(4) */
67 };
68 static const asn_INTEGER_specifics_t asn_SPC_type1_specs_2 = {
69         asn_MAP_type1_value2enum_2,     /* "tag" => N; sorted by tag */
70         asn_MAP_type1_enum2value_2,     /* N => "tag"; sorted by N */
71         17,     /* Number of elements in the maps */
72         0,      /* Enumeration is not extensible */
73         1,      /* Strict enumeration */
74         0,      /* Native long size */
75         0
76 };
77 static const ber_tlv_tag_t asn_DEF_type1_tags_2[] = {
78         (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
79         (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
80 };
81 static /* Use -fall-defs-global to expose */
82 asn_TYPE_descriptor_t asn_DEF_type1_2 = {
83         "type1",
84         "type1",
85         &asn_OP_NativeEnumerated,
86         asn_DEF_type1_tags_2,
87         sizeof(asn_DEF_type1_tags_2)
88                 /sizeof(asn_DEF_type1_tags_2[0]) - 1, /* 1 */
89         asn_DEF_type1_tags_2,   /* Same as above */
90         sizeof(asn_DEF_type1_tags_2)
91                 /sizeof(asn_DEF_type1_tags_2[0]), /* 2 */
92         { &asn_OER_type_type1_constr_2, &asn_PER_type_type1_constr_2, NativeEnumerated_constraint },
93         0, 0,   /* Defined elsewhere */
94         &asn_SPC_type1_specs_2  /* Additional specs */
95 };
96
97 asn_TYPE_member_t asn_MBR_DelayBudgetReport_1[] = {
98         { ATF_NOFLAGS, 0, offsetof(struct DelayBudgetReport, choice.type1),
99                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
100                 -1,     /* IMPLICIT tag at current level */
101                 &asn_DEF_type1_2,
102                 0,
103                 { 0, 0, 0 },
104                 0, 0, /* No default value */
105                 "type1"
106                 },
107 };
108 static const asn_TYPE_tag2member_t asn_MAP_DelayBudgetReport_tag2el_1[] = {
109     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* type1 */
110 };
111 asn_CHOICE_specifics_t asn_SPC_DelayBudgetReport_specs_1 = {
112         sizeof(struct DelayBudgetReport),
113         offsetof(struct DelayBudgetReport, _asn_ctx),
114         offsetof(struct DelayBudgetReport, present),
115         sizeof(((struct DelayBudgetReport *)0)->present),
116         asn_MAP_DelayBudgetReport_tag2el_1,
117         1,      /* Count of tags in the map */
118         0, 0,
119         1       /* Extensions start */
120 };
121 asn_TYPE_descriptor_t asn_DEF_DelayBudgetReport = {
122         "DelayBudgetReport",
123         "DelayBudgetReport",
124         &asn_OP_CHOICE,
125         0,      /* No effective tags (pointer) */
126         0,      /* No effective tags (count) */
127         0,      /* No tags (pointer) */
128         0,      /* No tags (count) */
129         { &asn_OER_type_DelayBudgetReport_constr_1, &asn_PER_type_DelayBudgetReport_constr_1, CHOICE_constraint },
130         asn_MBR_DelayBudgetReport_1,
131         1,      /* Elements count */
132         &asn_SPC_DelayBudgetReport_specs_1      /* Additional specs */
133 };
134