A Discrete-Event Network Simulator
API
ns3::MemberLteFfrSapProvider< C > Class Template Reference

Template for the implementation of the LteFfrSapProvider as a member of an owner class of type C to which all methods are forwarded. More...

#include "lte-ffr-sap.h"

+ Inheritance diagram for ns3::MemberLteFfrSapProvider< C >:
+ Collaboration diagram for ns3::MemberLteFfrSapProvider< C >:

Public Member Functions

 MemberLteFfrSapProvider (C *owner)
 
virtual std::vector< bool > GetAvailableDlRbg ()
 Get vector of available RBG in DL for this Cell. More...
 
virtual std::vector< bool > GetAvailableUlRbg ()
 Get vector of available RB in UL for this Cell. More...
 
virtual uint8_t GetMinContinuousUlBandwidth ()
 GetMinContinuousUlBandwidth. More...
 
virtual uint8_t GetTpc (uint16_t rnti)
 GetTpc. More...
 
virtual bool IsDlRbgAvailableForUe (int i, uint16_t rnti)
 Check if UE can be served on i-th RB in DL. More...
 
virtual bool IsUlRbgAvailableForUe (int i, uint16_t rnti)
 Check if UE can be served on i-th RB in UL. More...
 
virtual void ReportDlCqiInfo (const struct FfMacSchedSapProvider::SchedDlCqiInfoReqParameters &params)
 ReportDlCqiInfo. More...
 
virtual void ReportUlCqiInfo (const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters &params)
 ReportUlCqiInfo. More...
 
virtual void ReportUlCqiInfo (std::map< uint16_t, std::vector< double > > ulCqiMap)
 ReportUlCqiInfo. More...
 
- Public Member Functions inherited from ns3::LteFfrSapProvider
virtual ~LteFfrSapProvider ()
 

Private Member Functions

 MemberLteFfrSapProvider ()
 

Private Attributes

C * m_owner
 

Detailed Description

template<class C>
class ns3::MemberLteFfrSapProvider< C >

Template for the implementation of the LteFfrSapProvider as a member of an owner class of type C to which all methods are forwarded.

Definition at line 146 of file lte-ffr-sap.h.

Constructor & Destructor Documentation

template<class C >
ns3::MemberLteFfrSapProvider< C >::MemberLteFfrSapProvider ( C *  owner)

Definition at line 169 of file lte-ffr-sap.h.

template<class C>
ns3::MemberLteFfrSapProvider< C >::MemberLteFfrSapProvider ( )
private

Member Function Documentation

template<class C >
std::vector< bool > ns3::MemberLteFfrSapProvider< C >::GetAvailableDlRbg ( )
virtual

Get vector of available RBG in DL for this Cell.

Returns
vector of size (m_dlBandwidth/RbgSize); false indicates that RBG is free to use, true otherwise

This function is called by MAC Scheduler in the beginning of DL scheduling process. Frequency Reuse Algorithm based on its policy generates vector of RBG which can be used and which can not be used by Scheduler to schedule transmission.

Implements ns3::LteFfrSapProvider.

Definition at line 177 of file lte-ffr-sap.h.

template<class C >
std::vector< bool > ns3::MemberLteFfrSapProvider< C >::GetAvailableUlRbg ( )
virtual

Get vector of available RB in UL for this Cell.

Returns
vector of size m_ulBandwidth; false indicates that RB is free to use, true otherwise

This function is called by MAC Scheduler in the beginning of UL scheduling process. Frequency Reuse Algorithm based on its policy generates vector of RB which can be used and which can not be used by Scheduler to schedule transmission.

Implements ns3::LteFfrSapProvider.

Definition at line 191 of file lte-ffr-sap.h.

template<class C >
uint8_t ns3::MemberLteFfrSapProvider< C >::GetMinContinuousUlBandwidth ( )
virtual

GetMinContinuousUlBandwidth.

Implements ns3::LteFfrSapProvider.

Definition at line 233 of file lte-ffr-sap.h.

template<class C >
uint8_t ns3::MemberLteFfrSapProvider< C >::GetTpc ( uint16_t  rnti)
virtual

GetTpc.

Implements ns3::LteFfrSapProvider.

Definition at line 226 of file lte-ffr-sap.h.

template<class C >
bool ns3::MemberLteFfrSapProvider< C >::IsDlRbgAvailableForUe ( int  i,
uint16_t  rnti 
)
virtual

Check if UE can be served on i-th RB in DL.

Parameters
iRBG ID
rntiRadio Network Temporary Identity, an integer identifying the UE where the report originates from
Returns
true if UE can be served on i-th RB, false otherwise

This function is called by MAC Scheduler during DL scheduling process to check if UE is allowed to be served with i-th RBG. Frequency Reuse Algorithm based on its policy decides if RBG is allowed to UE. If yes, Scheduler will try to allocate this RBG for UE, if not this UE will not be served with this RBG.

Implements ns3::LteFfrSapProvider.

Definition at line 184 of file lte-ffr-sap.h.

template<class C >
bool ns3::MemberLteFfrSapProvider< C >::IsUlRbgAvailableForUe ( int  i,
uint16_t  rnti 
)
virtual

Check if UE can be served on i-th RB in UL.

Parameters
iRB ID
rntiRadio Network Temporary Identity, an integer identifying the UE where the report originates from
Returns
true if UE can be served on i-th RB, false otherwise

This function is called by MAC Scheduler during UL scheduling process to check if UE is allowed to be served with i-th RB. Frequency Reuse Algorithm based on its policy decides if RB is allowed to UE. If yes, Scheduler will try to allocate this RB for UE, if not this UE will not be served with this RB.

Implements ns3::LteFfrSapProvider.

Definition at line 198 of file lte-ffr-sap.h.

template<class C >
void ns3::MemberLteFfrSapProvider< C >::ReportDlCqiInfo ( const struct FfMacSchedSapProvider::SchedDlCqiInfoReqParameters params)
virtual

ReportDlCqiInfo.

Implements ns3::LteFfrSapProvider.

Definition at line 205 of file lte-ffr-sap.h.

template<class C >
void ns3::MemberLteFfrSapProvider< C >::ReportUlCqiInfo ( const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters params)
virtual

ReportUlCqiInfo.

Implements ns3::LteFfrSapProvider.

Definition at line 212 of file lte-ffr-sap.h.

template<class C >
void ns3::MemberLteFfrSapProvider< C >::ReportUlCqiInfo ( std::map< uint16_t, std::vector< double > >  ulCqiMap)
virtual

ReportUlCqiInfo.

Implements ns3::LteFfrSapProvider.

Definition at line 219 of file lte-ffr-sap.h.

Member Data Documentation

template<class C>
C* ns3::MemberLteFfrSapProvider< C >::m_owner
private

Definition at line 163 of file lte-ffr-sap.h.


The documentation for this class was generated from the following file: