1 /*****************************************************************************
3 # Copyright 2019 AT&T Intellectual Property *
4 # Copyright 2019 Nokia *
6 # Licensed under the Apache License, Version 2.0 (the "License"); *
7 # you may not use this file except in compliance with the License. *
8 # You may obtain a copy of the License at *
10 # http://www.apache.org/licenses/LICENSE-2.0 *
12 # Unless required by applicable law or agreed to in writing, software *
13 # distributed under the License is distributed on an "AS IS" BASIS, *
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
15 # See the License for the specific language governing permissions and *
16 # limitations under the License. *
18 ******************************************************************************/
19 #ifndef E2AP_CONFIG_HPP
20 #define E2AP_CONFIG_HPP
25 enum enum_Transmission_Bandwidth {
36 enum_nrb11, enum_nrb18, enum_nrb24, enum_nrb25, enum_nrb31, enum_nrb32,
37 enum_nrb38, enum_nrb51, enum_nrb52, enum_nrb65, enum_nrb66, enum_nrb78,
38 enum_nrb79, enum_nrb93, enum_nrb106, enum_nrb107, enum_nrb121,
39 enum_nrb132, enum_nrb133, enum_nrb135, enum_nrb160, enum_nrb162,
40 enum_nrb189, enum_nrb216, enum_nrb217, enum_nrb245, enum_nrb264,
41 enum_nrb270, enum_nrb273
45 enum_scs15, enum_scs30, enum_scs60, enum_scs120
50 uint8_t* pLMN_Identity;
51 uint8_t* macro_eNB_ID;
54 uint8_t* eUTRANcellIdentifier;
59 enum_Transmission_Bandwidth uL_Bandwidth;
60 enum_Transmission_Bandwidth dL_Bandwidth;
62 /*Default Constructor*/
64 pLMN_Identity = (uint8_t*)"abc";
65 macro_eNB_ID = (uint8_t*)"5";
68 eUTRANcellIdentifier = (uint8_t*)"def";
71 uL_Bandwidth = enum_bw25;
72 dL_Bandwidth = enum_bw50;
78 uint8_t* pLMN_Identity;
82 uint8_t* nRcellIdentifier;
87 enum enum_NRNRB uL_NRNRB;
88 enum enum_NRNRB dL_NRNRB;
90 enum enum_NRSCS uL_NRSCS;
91 enum enum_NRSCS dL_NRSCS;
93 uint8_t ul_freqBandIndicatorNr;
94 uint8_t dl_freqBandIndicatorNr;
96 std::string measurementTimingConfiguration;
98 /*Default Constructor*/
100 pLMN_Identity = (uint8_t*)"xyz";
101 gNB_ID = (uint8_t*)"3";
103 tAC = (uint8_t*)"ab";
104 nRcellIdentifier = (uint8_t*)"gnb_id_123";
108 uL_NRNRB = enum_nrb11;
109 dL_NRNRB = enum_nrb121;
111 uL_NRSCS = enum_scs15;
112 dL_NRSCS = enum_scs120;
114 ul_freqBandIndicatorNr = 11;
115 dl_freqBandIndicatorNr = 12;
117 measurementTimingConfiguration = "dummy timing";
121 enum enum_RICactionType {
122 RICactionType_report,
123 RICactionType_insert,
128 RICcause_radioNetwork = 1,
135 struct RIC_action_t {
136 unsigned char action_id;
137 enum_RICactionType action_type;
138 bool isAdmitted = false; //for response/failure only
139 enum_RICcause notAdmitted_cause; //for response/failure only
140 unsigned int notAdmitted_subCause; //for response/failure only
144 RIC_action_t(unsigned char id, enum_RICactionType type)
151 struct RICsubscription_params_t {
152 uint16_t request_id = 0;
153 uint16_t seq_number = 0;
154 uint16_t ran_func_id = 0;
155 std::string event_trigger_def = "";
157 std::vector<RIC_action_t> actionList;