<JIRA ID: ODUHIGH-390 : Ul throughput per SNSSAI (KPI)>
[o-du/l2.git] / src / du_app / du_msg_hdl.c
index f8b909e..97c251c 100644 (file)
 #include "AlarmInterface.h"
 #include "ConfigInterface.h"
 
+/*TODO: Uncomment when PM O1 gerrit gets ready*/
+#if 0
+#include "PmInterface.h"
+#endif
+
 #endif 
 
 uint8_t rlcDlCfg = 0;
@@ -2132,6 +2137,57 @@ uint8_t DuProcMacSliceReCfgRsp(Pst *pst,  MacSliceCfgRsp *reCfgRsp)
    duFreeTempSliceCfg();
    return ROK;
 }
+
+/*******************************************************************
+*
+* @brief Handles received Slice Metrics from RLC and forward it to O1 
+*
+* @details
+*
+*    Function : DuProcRlcSliceMetrics
+*
+*    Functionality:
+*      Handles received Slice Metrics from RLC and forward it to O1
+*
+* @params[in] Post structure pointer
+*              SlicePmList *sliceStats
+*
+* @return ROK     - success
+*         RFAILED - failure
+*
+* ****************************************************************/
+uint8_t DuProcRlcSliceMetrics(Pst *pst, SlicePmList *sliceStats)
+{
+    uint8_t sliceRecord = 0;
+
+    DU_LOG("\nDEBUG  -->  DU APP : Received Slice Metrics");
+    if(sliceStats == NULLP)
+    {
+       DU_LOG("\nERROR  -->  DU APP : Empty Metrics");
+       return RFAILED;
+    }
+    
+    for(sliceRecord = 0; sliceRecord < sliceStats->numSlice; sliceRecord++)
+    {
+       DU_LOG("\nINFO   -->  DU_APP: SliceIndx:%d, DlTput %.5lf, UlTput:%.5lf", sliceStats->sliceRecord[sliceRecord].networkSliceIdentifier,\
+                        sliceStats->sliceRecord[sliceRecord].ThpDl, sliceStats->sliceRecord[sliceRecord].ThpUl);
+    }
+/*TODO: Uncomment when PM O1 gerrit gets ready*/
+#if 0
+#ifdef O1_ENABLE
+    if(sliceStats)
+    {
+       sendSliceMetric(sliceStats);
+    }
+#endif
+#endif
+
+   DU_FREE_SHRABL_BUF(pst->region, pst->pool,sliceStats->sliceRecord, (sliceStats->numSlice) * (sizeof(SlicePm)));
+   DU_FREE_SHRABL_BUF(pst->region, pst->pool,sliceStats, sizeof(SlicePmList));
+
+   return ROK;
+}
+
 /**********************************************************************
   End of file
  **********************************************************************/