Adding initial code jy.oak@samsung.com
[ric-app/kpimon.git] / src / E2AP-c / e2ap_indication.hpp
diff --git a/src/E2AP-c/e2ap_indication.hpp b/src/E2AP-c/e2ap_indication.hpp
new file mode 100755 (executable)
index 0000000..b052835
--- /dev/null
@@ -0,0 +1,73 @@
+/*\r
+==================================================================================\r
+\r
+        Copyright (c) 2018-2019 AT&T Intellectual Property.\r
+\r
+   Licensed under the Apache License, Version 2.0 (the "License");\r
+   you may not use this file except in compliance with the License.\r
+   You may obtain a copy of the License at\r
+\r
+       http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+   Unless required by applicable law or agreed to in writing, software\r
+   distributed under the License is distributed on an "AS IS" BASIS,\r
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+   See the License for the specific language governing permissions and\r
+   limitations under the License.\r
+==================================================================================\r
+*/\r
+\r
+#ifndef E2AP_RIC_INDICATION_H_\r
+#define E2AP_RIC_INDICATION_H_\r
+\r
+  \r
+#include <iostream>\r
+#include <errno.h>\r
+#include <mdclog/mdclog.h>\r
+#include <sstream>\r
+#include <E2AP-PDU.h>\r
+#include <InitiatingMessage.h>\r
+#include <RICindication.h>\r
+#include <ProtocolIE-Field.h>\r
+\r
+#define NUM_INDICATION_IES 7\r
+  \r
+  typedef struct E2APRicIndication E2APRicIndication;\r
+  \r
+  struct E2APRicIndication{\r
+    E2APRicIndication(void) : req_id(1), req_seq_no(1), func_id(0), action_id(1), indication_type(0), indication_sn(0), indication_msg(0), indication_msg_size(0), indication_header(0), indication_header_size(0), call_process_id(0), call_process_id_size(0) {};\r
+    long int req_id, req_seq_no, func_id, action_id, indication_type, indication_sn;\r
+    \r
+    unsigned char* indication_msg;\r
+    size_t indication_msg_size;\r
+    \r
+    unsigned char* indication_header;\r
+    size_t indication_header_size;\r
+\r
+    unsigned char *call_process_id;\r
+    size_t call_process_id_size;\r
+    \r
+  };\r
+  \r
+  \r
+  class ric_indication{\r
+    \r
+  public:\r
+    ric_indication(void);\r
+    ~ric_indication(void);\r
+\r
+    InitiatingMessage_t * get_message (void) ;\r
+    bool get_fields(InitiatingMessage_t *, E2APRicIndication &);\r
+    std::string get_error(void) const {return error_string ; };\r
+  private:\r
+\r
+    E2AP_PDU_t * e2ap_pdu_obj;\r
+    InitiatingMessage_t *initMsg;\r
+    RICindication_IEs_t *IE_array;\r
+    std::string error_string;\r
+    char errbuf[128];\r
+    size_t errbuf_len = 128;\r
+  };\r
+\r
+\r
+#endif /* E2AP_RIC_INDICATION_H_ */\r