22 #ifndef LTE_FFR_DISTRIBUTED_ALGORITHM_H 23 #define LTE_FFR_DISTRIBUTED_ALGORITHM_H 25 #include <ns3/lte-ffr-algorithm.h> 26 #include <ns3/lte-ffr-sap.h> 27 #include <ns3/lte-ffr-rrc-sap.h> 28 #include <ns3/lte-rrc-sap.h> 73 virtual void DoReportUlCqiInfo ( std::map <uint16_t, std::vector <double> > ulCqiMap );
74 virtual uint8_t
DoGetTpc (uint16_t rnti);
147 std::map< uint16_t, uint8_t >
m_ues;
189 std::map<uint16_t, std::vector <bool> >
m_rntp;
uint8_t m_edgeSubBandRsrqThreshold
edge sub band RSRQ threshold
virtual void DoReportUeMeas(uint16_t rnti, LteRrcSap::MeasResults measResults)
Implementation of LteFfrRrcSapProvider::ReportUeMeas.
Service Access Point (SAP) offered by the Frequency Reuse algorithm instance to the eNodeB RRC instan...
uint8_t m_edgePowerOffset
edge power offset
Simulation virtual time values and global simulation resolution.
Template for the implementation of the LteFfrRrcSapProvider as a member of an owner class of type C t...
std::vector< bool > m_ulEdgeRbgMap
UL edge RBG map.
LteFfrDistributedAlgorithm()
LteFfrSapUser * m_ffrSapUser
FFR SAP User.
Service Access Point (SAP) offered by the eNodeB RRC instance to the Frequency Reuse algorithm instan...
uint8_t m_edgeAreaTpc
edge area TCP
uint8_t m_rsrpDifferenceThreshold
RSRP difference threshold.
uint8_t m_rsrpMeasId
RSRP measurement ID.
EventId m_calculationEvent
calculation event
std::vector< bool > m_dlEdgeRbgMap
DL edge RBG map.
LteFfrRrcSapUser * m_ffrRrcSapUser
FFR RRC SAP User.
UePosition
UePosition enumeration.
Distributed Fractional Frequency Reuse algorithm implementation.
void SendLoadInformation(uint16_t targetCellId)
Send load information function.
MeasurementTable_t m_ueMeasures
UE measures.
std::map< uint16_t, std::vector< bool > > m_rntp
RNTP.
std::vector< uint16_t > m_neigborCell
neighbor cell
virtual std::vector< bool > DoGetAvailableUlRbg()
Implementation of LteFfrSapProvider::GetAvailableUlRbg.
static TypeId GetTypeId()
Get the type ID.
std::map< uint16_t, MeasurementRow_t > MeasurementTable_t
rnti
virtual bool DoIsUlRbgAvailableForUe(int i, uint16_t rnti)
Implementation of LteFfrSapProvider::IsUlRbgAvailableForUe.
Template for the implementation of the LteFfrSapProvider as a member of an owner class of type C to w...
void InitializeDownlinkRbgMaps()
Initialize down link RGB maps function.
Service Access Point (SAP) offered by the Frequency Reuse algorithm instance to the MAC Scheduler ins...
uint8_t m_centerAreaTpc
center area TPC
virtual LteFfrSapProvider * GetLteFfrSapProvider()
Export the "provider" part of the LteFfrSap interface.
virtual void Reconfigure()
Automatic FR reconfiguration.
Measurements reported by a UE for a cell ID.
std::map< uint16_t, uint8_t > m_ues
UEs map.
virtual void DoDispose()
Destructor implementation.
virtual std::vector< bool > DoGetAvailableDlRbg()
Implementation of LteFfrSapProvider::GetAvailableDlRbg.
virtual bool DoIsDlRbgAvailableForUe(int i, uint16_t rnti)
Implementation of LteFfrSapProvider::IsDlRbgAvailableForUe.
virtual void DoReportUlCqiInfo(const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters ¶ms)
DoReportUlCqiInfo.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
The abstract base class of a Frequency Reuse algorithm.
virtual void SetLteFfrRrcSapUser(LteFfrRrcSapUser *s)
Set the "user" part of the LteFfrRrcSap interface that this frequency reuse algorithm instance will i...
void SetUplinkConfiguration(uint16_t cellId, uint8_t bandwidth)
Set up link configuration function.
std::vector< bool > m_dlRbgMap
DL RBG map.
void SetDownlinkConfiguration(uint16_t cellId, uint8_t bandwidth)
Set down link configuration function.
uint8_t m_edgeRbNum
edge RB number
Service Access Point (SAP) offered by the eNodeB RRC instance to the Frequency Reuse algorithm instan...
Parameters of the SCHED_DL_CQI_INFO_REQ primitive.
void UpdateNeighbourMeasurements(uint16_t rnti, uint16_t cellId, uint8_t rsrp, uint8_t rsrq)
Initialize up link RGB maps function.
Parameters of the SCHED_UL_CQI_INFO_REQ primitive.
virtual ~LteFfrDistributedAlgorithm()
An identifier for simulation events.
Time m_calculationInterval
calculation interval
LteFfrRrcSapProvider * m_ffrRrcSapProvider
FFR RRC SAP Provider.
virtual void DoRecvLoadInformation(EpcX2Sap::LoadInformationParams params)
DoRecvLoadInformation.
std::map< uint16_t, uint32_t > m_cellWeightMap
cell weight map
std::map< uint16_t, Ptr< UeMeasure > > MeasurementRow_t
cellId
uint8_t m_rsrqMeasId
RSRQ measurement ID.
LteFfrSapProvider * m_ffrSapProvider
FFR SAP Provider.
uint8_t m_centerPowerOffset
center power offset
virtual void DoInitialize()
Initialize() implementation.
virtual void SetLteFfrSapUser(LteFfrSapUser *s)
Set the "user" part of the LteFfrSap interface that this frequency reuse algorithm instance will inte...
std::vector< bool > m_ulRbgMap
UL RBG map.
A template-based reference counting class.
virtual void DoReportDlCqiInfo(const struct FfMacSchedSapProvider::SchedDlCqiInfoReqParameters ¶ms)
DoReportDlCqiInfo.
a unique identifier for an interface.
virtual uint8_t DoGetTpc(uint16_t rnti)
DoGetTpc for UE.
uint16_t m_cellId
Cell ID.
virtual uint8_t DoGetMinContinuousUlBandwidth()
DoGetMinContinuousUlBandwidth in number of RB.
virtual LteFfrRrcSapProvider * GetLteFfrRrcSapProvider()
Export the "provider" part of the LteFfrRrcSap interface.
void InitializeUplinkRbgMaps()
Initialize up link RGB maps function.
void Calculate()
Calculate function.