version 4.0.6
[ric-plt/e2.git] / RIC-E2-TERMINATION / sctpThread.h
index a1c9e93..10c6d90 100644 (file)
 #include "cxxopts.hpp"
 //#include "config-cpp/include/config-cpp/config-cpp.h"
 
-#ifdef __TRACING__
-#include "openTracing.h"
-#endif
 
 #include "mapWrapper.h"
+#include "statCollector.h"
 
 #include "base64.h"
 
@@ -108,12 +106,13 @@ namespace expr = boost::log::expressions;
 
 #define MAXEVENTS 128
 
-#define RECEIVE_SCTP_BUFFER_SIZE (8 * 1024)
+#define RECEIVE_SCTP_BUFFER_SIZE (128 * 1024)
 #define RECEIVE_XAPP_BUFFER_SIZE RECEIVE_SCTP_BUFFER_SIZE 
 
 typedef mapWrapper Sctp_Map_t;
 
 
+
 #define VOLUME_URL_SIZE 256
 #define KA_MESSAGE_SIZE 2048
 
@@ -147,8 +146,6 @@ typedef struct ConnectedCU {
     char portNumber[NI_MAXSERV] {};
     char enodbName[MAX_ENODB_NAME_SIZE] {};
     char asnData[RECEIVE_SCTP_BUFFER_SIZE] {};
-    int rcvMsgs = 0;
-    int sentMesgs = 0;
     size_t asnLength = 0;
     int mtype = 0;
     bool isConnected = false;
@@ -162,9 +159,9 @@ typedef struct RmrMessagesBuffer {
     int  ka_message_len = 0;
     void *rmrCtx = nullptr;
     rmr_mbuf_t *sendMessage= nullptr;
-    rmr_mbuf_t *sendBufferedMessages[MAX_RMR_BUFF_ARRY] {};
+    //rmr_mbuf_t *sendBufferedMessages[MAX_RMR_BUFF_ARRY] {};
     rmr_mbuf_t *rcvMessage= nullptr;
-    rmr_mbuf_t *rcvBufferedMessages[MAX_RMR_BUFF_ARRY] {};
+    //rmr_mbuf_t *rcvBufferedMessages[MAX_RMR_BUFF_ARRY] {};
 } RmrMessagesBuffer_t;
 
 typedef struct formatedMessage {
@@ -182,6 +179,7 @@ typedef struct ReportingMessages {
     long outLen = 0;
     unsigned char base64Data[RECEIVE_SCTP_BUFFER_SIZE * 2] {};
     char buffer[RECEIVE_SCTP_BUFFER_SIZE * 8] {};
+    StatCollector *statCollector = nullptr;
 } ReportingMessages_t;
 
 cxxopts::ParseResult parse(int argc, char *argv[], sctp_params_t &pSctpParams);
@@ -298,8 +296,7 @@ void getRmrContext(sctp_params_t &pSctpParams);
  * @param messagBuffer
  * @return
  */
-int receiveXappMessages(int epoll_fd,
-                        Sctp_Map_t *sctpMap,
+int receiveXappMessages(Sctp_Map_t *sctpMap,
                         RmrMessagesBuffer_t &rmrMessageBuffer,
                         struct timespec &ts);
 
@@ -321,6 +318,7 @@ int sendDirectionalSctpMsg(RmrMessagesBuffer_t &messagBuffer,
  * @param rmrMessageBuffer
  */
 void asnInitiatingRequest(E2AP_PDU_t *pdu,
+                          Sctp_Map_t *sctpMap,
                           ReportingMessages_t &message,
                           RmrMessagesBuffer_t &rmrMessageBuffer);
 /**
@@ -331,6 +329,7 @@ void asnInitiatingRequest(E2AP_PDU_t *pdu,
  * @param rmrMessageBuffer
  */
 void asnSuccsesfulMsg(E2AP_PDU_t *pdu,
+                      Sctp_Map_t *sctpMap,
                       ReportingMessages_t &message,
                       RmrMessagesBuffer_t &rmrMessageBuffer);
 /**
@@ -341,6 +340,7 @@ void asnSuccsesfulMsg(E2AP_PDU_t *pdu,
  * @param rmrMessageBuffer
  */
 void asnUnSuccsesfulMsg(E2AP_PDU_t *pdu,
+                        Sctp_Map_t *sctpMap,
                         ReportingMessages_t &message,
                         RmrMessagesBuffer_t &rmrMessageBuffer);