X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2F5gnrsch%2Fsch.h;h=4a82d17860936858df2b6accbd01ea6b5a56ae40;hb=9ab3369c907973faca5e882c6a82cf9f5bd4deff;hp=537ed318b2d1b2fff96eb6c4ebf771c58a954160;hpb=f73456bd55152c329601f8286ae67fe9875025bc;p=o-du%2Fl2.git diff --git a/src/5gnrsch/sch.h b/src/5gnrsch/sch.h index 537ed318b..4a82d1786 100644 --- a/src/5gnrsch/sch.h +++ b/src/5gnrsch/sch.h @@ -602,17 +602,43 @@ typedef struct typedef struct dlTotalPrbUsage { - Inst schInst; uint16_t numPrbUsedForTx; uint16_t totalPrbAvailForTx; - uint16_t periodicity; - CmTimer periodTimer; }TotalPrbUsage; -typedef struct schStatistics +typedef struct { TotalPrbUsage *dlTotalPrbUsage; TotalPrbUsage *ulTotalPrbUsage; +}SchKpiSupported; + +typedef struct +{ + CmLListCp dlTotPrbUseList; + CmLListCp ulTotPrbUseList; +}SchKpiActive; + +typedef struct schStatsGrp +{ + Inst schInst; + uint64_t subscriptionId; + uint8_t groupId; + uint16_t periodicity; /* In milliseconds */ + CmTimer periodTimer; + SchKpiSupported kpiStats; +}SchStatsGrp; + +typedef struct schStatsInfo +{ + uint8_t numStatsGroup; + SchStatsGrp statsGrpList[MAX_NUM_STATS_GRP]; +}SchStatsInfo; + +typedef struct schStatistics +{ + uint16_t numOfStatsCfgd; + SchStatsInfo statsInfoList[MAX_NUM_STATS_CFG]; + SchKpiActive activeKpiList; }SchStatistics; /** @@ -796,6 +822,8 @@ void schMsg4Complete(SchUeCb *ueCb); /* Statistics Function */ uint8_t SchProcStatsReq(Pst *pst, SchStatsReq *statsReq); +uint8_t SchSendStatsIndToMac(Inst inst, SchStatsInd *statsInd); +uint8_t schCalcAndSendGrpStats(SchStatsGrp *grpInfo); /********************************************************************** End of file