2 ==================================================================================
4 Copyright (c) 2019-2020 AT&T Intellectual Property.
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, softwares
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.
17 ==================================================================================
22 * Created on: Apr 30, 2020
23 * Author: Shraboni Jana
25 /* Classes to handle E2 service model based on e2sm-HelloWorld-v001.asn */
35 typedef struct ranparam_helper ranparam_helper;
36 struct ranparam_helper {
38 unsigned char* _param_name;
39 size_t _param_name_len;
41 unsigned char* _param_value;
42 size_t _param_value_len;
45 class RANParam_Helper{
47 ranparam_helper _ranparam_helper;
51 RANParam_Helper(int id, unsigned char *param_name, size_t param_name_len, int param_test, unsigned char* param_value, size_t param_value_len){
52 _ranparam_helper._param_id = id;
53 _ranparam_helper._param_name = param_name;
54 _ranparam_helper._param_name_len = param_name_len;
55 _ranparam_helper._param_test = param_test;
56 _ranparam_helper._param_value = param_value;
57 _ranparam_helper._param_value_len = param_value_len;
60 const ranparam_helper & getran_helper() const {
61 return _ranparam_helper;
63 void print_ranparam_info(void){
64 std::cout <<"Param ID = " << _ranparam_helper._param_id << std::endl;
65 std::cout << "Parame Name =" << _ranparam_helper._param_name << std::endl;
66 std::cout <<"Param Test = " << _ranparam_helper._param_test << std::endl;
67 std::cout <<"Param Value = " << _ranparam_helper._param_value << std::endl;
72 using ranparam_helper_t = std::vector<RANParam_Helper>;
74 typedef struct e2sm_subscription_helper e2sm_subscription_helper;
75 struct e2sm_subscription_helper {
80 ranparam_helper_t param;
81 void add_param(int id, unsigned char *param_name, size_t param_name_len, int param_test, unsigned char* param_value, size_t param_value_len){
82 RANParam_Helper rparam(id,param_name,param_name_len,param_test,param_value,param_value_len);
83 param.push_back(rparam);
85 ranparam_helper_t get_paramlist() const {return param;};
92 typedef struct e2sm_indication_helper e2sm_indication_helper;
95 struct e2sm_indication_helper {
97 unsigned char* message;
101 typedef struct e2sm_control_helper e2sm_control_helper;
103 struct e2sm_control_helper {
105 unsigned char* message;