10#ifndef FF_MAC_SCHEDULER_H
11#define FF_MAC_SCHEDULER_H
15#include <ns3/object.h>
20class FfMacCschedSapUser;
21class FfMacSchedSapUser;
22class FfMacCschedSapProvider;
23class FfMacSchedSapProvider;
24class LteFfrSapProvider;
FfMacCschedSapUser class.
This abstract base class identifies the interface by means of which the helper object can plug on the...
void DoDispose() override
Destructor implementation.
virtual void SetLteFfrSapProvider(LteFfrSapProvider *s)=0
Set the Provider part of the LteFfrSap that this Scheduler will interact with.
~FfMacScheduler() override
destructor
virtual void SetFfMacCschedSapUser(FfMacCschedSapUser *s)=0
set the user part of the FfMacCschedSap that this Scheduler will interact with.
virtual void SetFfMacSchedSapUser(FfMacSchedSapUser *s)=0
set the user part of the FfMacSchedSap that this Scheduler will interact with.
UlCqiFilter_t
The type of UL CQI to be filtered (ALL means accept all the CQI, where a new CQI of any type overwrit...
FfMacScheduler()
constructor
static TypeId GetTypeId()
Get the type ID.
virtual LteFfrSapUser * GetLteFfrSapUser()=0
virtual FfMacCschedSapProvider * GetFfMacCschedSapProvider()=0
UlCqiFilter_t m_ulCqiFilter
UL CQI filter.
virtual FfMacSchedSapProvider * GetFfMacSchedSapProvider()=0
Service Access Point (SAP) offered by the Frequency Reuse algorithm instance to the MAC Scheduler ins...
Service Access Point (SAP) offered by the eNodeB RRC instance to the Frequency Reuse algorithm instan...
A base class which provides memory management and object aggregation.
a unique identifier for an interface.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
std::vector< uint8_t > DlHarqProcessesTimer_t
DL HARQ process timer vector.
constexpr double NO_SINR
Value for SINR outside the range defined by FF-API, used to indicate that there is no CQI for this el...
std::vector< uint8_t > UlHarqProcessesStatus_t
UL HARQ process status vector.
std::vector< uint8_t > DlHarqProcessesStatus_t
DL HARQ process status vector.
std::vector< std::vector< RlcPduListElement_s > > RlcPduList_t
Vector of the LCs and layers per UE.
std::vector< DlDciListElement_s > DlHarqProcessesDciBuffer_t
DL HARQ process DCI buffer vector.
constexpr uint32_t HARQ_DL_TIMEOUT
HARQ DL timeout.
constexpr uint32_t HARQ_PROC_NUM
Number of HARQ processes.
std::vector< RlcPduList_t > DlHarqRlcPduListBuffer_t
Vector of the 8 HARQ processes per UE.
std::vector< UlDciListElement_s > UlHarqProcessesDciBuffer_t
UL HARQ process DCI buffer vector.