Implements the SCHED SAP and CSCHED SAP for a Time Domain Token Bank Fair Queue scheduler. More...
#include <tdtbfq-ff-mac-scheduler.h>
Public Member Functions | |
TdTbfqFfMacScheduler () | |
Constructor. More... | |
virtual | ~TdTbfqFfMacScheduler () |
Destructor. More... | |
virtual void | DoDispose (void) |
This method is called by Object::Dispose or by the object's destructor, whichever comes first. More... | |
virtual FfMacCschedSapProvider * | GetFfMacCschedSapProvider () |
virtual FfMacSchedSapProvider * | GetFfMacSchedSapProvider () |
virtual LteFfrSapUser * | GetLteFfrSapUser () |
virtual void | SetFfMacCschedSapUser (FfMacCschedSapUser *s) |
set the user part of the FfMacCschedSap that this Scheduler will interact with. More... | |
virtual void | SetFfMacSchedSapUser (FfMacSchedSapUser *s) |
set the user part of the FfMacSchedSap that this Scheduler will interact with. More... | |
virtual void | SetLteFfrSapProvider (LteFfrSapProvider *s) |
Set the Provider part of the LteFfrSap that this Scheduler will interact with. More... | |
void | TransmissionModeConfigurationUpdate (uint16_t rnti, uint8_t txMode) |
![]() | |
FfMacScheduler () | |
constructor More... | |
virtual | ~FfMacScheduler () |
destructor More... | |
![]() | |
Object () | |
virtual | ~Object () |
void | AggregateObject (Ptr< Object > other) |
void | Dispose (void) |
Run the DoDispose methods of this object and all the objects aggregated to it. More... | |
AggregateIterator | GetAggregateIterator (void) const |
virtual TypeId | GetInstanceTypeId (void) const |
template<typename T > | |
Ptr< T > | GetObject (void) const |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
void | Initialize (void) |
This method calls the virtual DoInitialize method on all the objects aggregated to this object. More... | |
![]() | |
SimpleRefCount () | |
Constructor. More... | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
![]() | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
![]() | |
static TypeId | GetTypeId (void) |
![]() | |
static TypeId | GetTypeId (void) |
Register this type. More... | |
![]() | |
static void | Cleanup (void) |
Noop. More... | |
![]() | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Friends | |
class | TdTbfqSchedulerMemberCschedSapProvider |
class | TdTbfqSchedulerMemberSchedSapProvider |
Additional Inherited Members | |
![]() | |
enum | UlCqiFilter_t { SRS_UL_CQI, PUSCH_UL_CQI, ALL_UL_CQI } |
The type of UL CQI to be filtered (ALL means accept all the CQI, where a new CQI of any type overwrite the old one, even of another type) More... | |
![]() | |
Object (const Object &o) | |
virtual void | DoInitialize (void) |
This method is called only once by Object::Initialize. More... | |
virtual void | NotifyNewAggregate (void) |
This method is invoked whenever two sets of objects are aggregated together. More... | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
This method is invoked once all member attributes have been initialized. More... | |
![]() | |
UlCqiFilter_t | m_ulCqiFilter |
Implements the SCHED SAP and CSCHED SAP for a Time Domain Token Bank Fair Queue scheduler.
This class implements the interface defined by the FfMacScheduler abstract class
ns3::TdTbfqFfMacScheduler is accessible through the following paths with Config::Set and Config::Connect:
No TraceSources are defined for this type.
Definition at line 79 of file tdtbfq-ff-mac-scheduler.h.
ns3::TdTbfqFfMacScheduler::TdTbfqFfMacScheduler | ( | ) |
Constructor.
Creates the MAC Scheduler interface implementation
Definition at line 217 of file tdtbfq-ff-mac-scheduler.cc.
References m_amc, m_cschedSapProvider, m_ffrSapProvider, m_ffrSapUser, m_schedSapProvider, TdTbfqSchedulerMemberCschedSapProvider, and TdTbfqSchedulerMemberSchedSapProvider.
|
virtual |
|
private |
Definition at line 336 of file tdtbfq-ff-mac-scheduler.cc.
References ns3::FfMacCschedSapUser::CschedUeConfigCnf(), m_cschedCellConfig, m_cschedSapUser, m_rachAllocationMap, ns3::FfMacCschedSapUser::CschedUeConfigCnfParameters::m_result, ns3::FfMacCschedSapProvider::CschedCellConfigReqParameters::m_ulBandwidth, NS_LOG_FUNCTION, and ns3::SUCCESS.
Referenced by ns3::TdTbfqSchedulerMemberCschedSapProvider::CschedCellConfigReq().
|
private |
Definition at line 388 of file tdtbfq-ff-mac-scheduler.cc.
References ns3::tdtbfqsFlowPerf_t::burstCredit, ns3::tdtbfqsFlowPerf_t::counter, ns3::tdtbfqsFlowPerf_t::creditableThreshold, ns3::tdtbfqsFlowPerf_t::debtLimit, ns3::tdtbfqsFlowPerf_t::flowStart, m_creditableThreshold, m_creditLimit, m_debtLimit, m_flowStatsDl, m_flowStatsUl, ns3::FfMacCschedSapProvider::CschedLcConfigReqParameters::m_logicalChannelConfigList, ns3::FfMacCschedSapProvider::CschedLcConfigReqParameters::m_rnti, m_tokenPoolSize, ns3::tdtbfqsFlowPerf_t::maxTokenPoolSize, ns3::Simulator::Now(), NS_LOG_FUNCTION, ns3::tdtbfqsFlowPerf_t::packetArrivalRate, ns3::tdtbfqsFlowPerf_t::tokenGenerationRate, and ns3::tdtbfqsFlowPerf_t::tokenPoolSize.
Referenced by ns3::TdTbfqSchedulerMemberCschedSapProvider::CschedLcConfigReq().
|
private |
Definition at line 440 of file tdtbfq-ff-mac-scheduler.cc.
References ns3::FfMacCschedSapProvider::CschedLcReleaseReqParameters::m_logicalChannelIdentity, m_rlcBufferReq, ns3::FfMacCschedSapProvider::CschedLcReleaseReqParameters::m_rnti, and NS_LOG_FUNCTION.
Referenced by ns3::TdTbfqSchedulerMemberCschedSapProvider::CschedLcReleaseReq().
|
private |
Definition at line 349 of file tdtbfq-ff-mac-scheduler.cc.
References m_dlHarqCurrentProcessId, m_dlHarqProcessesDciBuffer, m_dlHarqProcessesRlcPduListBuffer, m_dlHarqProcessesStatus, m_dlHarqProcessesTimer, ns3::FfMacCschedSapProvider::CschedUeConfigReqParameters::m_rnti, ns3::FfMacCschedSapProvider::CschedUeConfigReqParameters::m_transmissionMode, m_uesTxMode, m_ulHarqCurrentProcessId, m_ulHarqProcessesDciBuffer, m_ulHarqProcessesStatus, and NS_LOG_FUNCTION.
Referenced by ns3::TdTbfqSchedulerMemberCschedSapProvider::CschedUeConfigReq().
|
private |
Definition at line 465 of file tdtbfq-ff-mac-scheduler.cc.
References m_ceBsrRxed, m_dlHarqCurrentProcessId, m_dlHarqProcessesDciBuffer, m_dlHarqProcessesRlcPduListBuffer, m_dlHarqProcessesStatus, m_dlHarqProcessesTimer, m_flowStatsDl, m_flowStatsUl, m_nextRntiUl, m_rlcBufferReq, ns3::FfMacCschedSapProvider::CschedUeReleaseReqParameters::m_rnti, m_uesTxMode, m_ulHarqCurrentProcessId, m_ulHarqProcessesDciBuffer, m_ulHarqProcessesStatus, and NS_LOG_FUNCTION.
Referenced by ns3::TdTbfqSchedulerMemberCschedSapProvider::CschedUeReleaseReq().
|
virtual |
This method is called by Object::Dispose or by the object's destructor, whichever comes first.
Subclasses are expected to implement their real destruction code in an overriden version of this method and chain up to their parent's implementation once they are done. i.e., for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose method.
It is safe to call GetObject from within this method.
Reimplemented from ns3::FfMacScheduler.
Definition at line 236 of file tdtbfq-ff-mac-scheduler.cc.
References m_cschedSapProvider, m_dlHarqProcessesDciBuffer, m_dlHarqProcessesRlcPduListBuffer, m_dlHarqProcessesTimer, m_dlInfoListBuffered, m_ffrSapUser, m_schedSapProvider, m_ulHarqCurrentProcessId, m_ulHarqProcessesDciBuffer, m_ulHarqProcessesStatus, and NS_LOG_FUNCTION.
|
private |
Definition at line 1401 of file tdtbfq-ff-mac-scheduler.cc.
References ns3::CqiListElement_s::A30, m_a30CqiRxed, m_a30CqiTimers, ns3::FfMacSchedSapProvider::SchedDlCqiInfoReqParameters::m_cqiList, m_cqiTimersThreshold, m_ffrSapProvider, m_p10CqiRxed, m_p10CqiTimers, NS_LOG_ERROR, NS_LOG_FUNCTION, ns3::CqiListElement_s::P10, and ns3::LteFfrSapProvider::ReportDlCqiInfo().
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedDlCqiInfoReq().
|
private |
Definition at line 538 of file tdtbfq-ff-mac-scheduler.cc.
References NS_FATAL_ERROR, and NS_LOG_FUNCTION.
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedDlMacBufferReq().
|
private |
Definition at line 530 of file tdtbfq-ff-mac-scheduler.cc.
References NS_FATAL_ERROR, and NS_LOG_FUNCTION.
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedDlPagingBufferReq().
|
private |
Definition at line 1391 of file tdtbfq-ff-mac-scheduler.cc.
References ns3::FfMacSchedSapProvider::SchedDlRachInfoReqParameters::m_rachList, m_rachList, and NS_LOG_FUNCTION.
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedDlRachInfoReq().
|
private |
Definition at line 506 of file tdtbfq-ff-mac-scheduler.cc.
References ns3::FfMacSchedSapProvider::SchedDlRlcBufferReqParameters::m_logicalChannelIdentity, m_rlcBufferReq, ns3::FfMacSchedSapProvider::SchedDlRlcBufferReqParameters::m_rnti, and NS_LOG_FUNCTION.
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedDlRlcBufferReq().
|
private |
Definition at line 691 of file tdtbfq-ff-mac-scheduler.cc.
References bankSize, ns3::LteFfrSapProvider::GetAvailableDlRbg(), ns3::LteFfrSapProvider::GetAvailableUlRbg(), GetRbgSize(), ns3::LteFfrSapProvider::GetTpc(), HARQ_PROC_NUM, HarqProcessAvailability(), ns3::LteFfrSapProvider::IsDlRbgAvailableForUe(), LcActivePerFlow(), m_a30CqiRxed, ns3::UlDciListElement_s::m_aggrLevel, m_amc, ns3::FfMacSchedSapUser::SchedDlConfigIndParameters::m_buildDataList, ns3::FfMacSchedSapUser::SchedDlConfigIndParameters::m_buildRarList, ns3::UlDciListElement_s::m_cceIndex, ns3::UlDciListElement_s::m_cqiRequest, m_cschedCellConfig, ns3::UlDciListElement_s::m_dai, ns3::BuildDataListElement_s::m_dci, ns3::FfMacCschedSapProvider::CschedCellConfigReqParameters::m_dlBandwidth, m_dlHarqProcessesDciBuffer, m_dlHarqProcessesRlcPduListBuffer, m_dlHarqProcessesStatus, m_dlHarqProcessesTimer, ns3::FfMacSchedSapProvider::SchedDlTriggerReqParameters::m_dlInfoList, m_dlInfoListBuffered, m_ffrSapProvider, m_flowStatsDl, ns3::UlDciListElement_s::m_freqHopping, m_harqOn, ns3::DlDciListElement_s::m_harqProcess, ns3::UlDciListElement_s::m_hopping, ns3::RlcPduListElement_s::m_logicalChannelIdentity, ns3::DlDciListElement_s::m_mcs, ns3::UlDciListElement_s::m_mcs, ns3::UlDciListElement_s::m_n2Dmrs, ns3::DlDciListElement_s::m_ndi, ns3::UlDciListElement_s::m_ndi, ns3::FfMacSchedSapUser::SchedDlConfigIndParameters::m_nrOfPdcchOfdmSymbols, ns3::UlDciListElement_s::m_pdcchPowerOffset, m_rachAllocationMap, m_rachList, ns3::DlDciListElement_s::m_rbBitmap, ns3::UlDciListElement_s::m_rbLen, ns3::UlDciListElement_s::m_rbStart, ns3::DlDciListElement_s::m_resAlloc, m_rlcBufferReq, ns3::BuildDataListElement_s::m_rlcPduList, ns3::DlDciListElement_s::m_rnti, ns3::UlDciListElement_s::m_rnti, ns3::BuildDataListElement_s::m_rnti, ns3::BuildRarListElement_s::m_rnti, ns3::DlDciListElement_s::m_rv, m_schedSapUser, ns3::FfMacSchedSapProvider::SchedDlTriggerReqParameters::m_sfnSf, ns3::RlcPduListElement_s::m_size, ns3::UlDciListElement_s::m_tbSize, ns3::DlDciListElement_s::m_tbsSize, ns3::DlDciListElement_s::m_tpc, ns3::UlDciListElement_s::m_tpc, m_uesTxMode, ns3::UlDciListElement_s::m_ueTxAntennaSelection, ns3::FfMacCschedSapProvider::CschedCellConfigReqParameters::m_ulBandwidth, m_ulGrantMcs, m_ulHarqCurrentProcessId, m_ulHarqProcessesDciBuffer, ns3::UlDciListElement_s::m_ulIndex, ns3::DlInfoListElement_s::NACK, NS_ASSERT_MSG, NS_FATAL_ERROR, NS_LOG_DEBUG, NS_LOG_ERROR, NS_LOG_FUNCTION, NS_LOG_INFO, RefreshDlCqiMaps(), RefreshHarqProcesses(), ns3::FfMacSchedSapUser::SchedDlConfigInd(), ns3::TransmissionModesLayers::TxMode2LayerNum(), UpdateDlRlcBufferInfo(), and UpdateHarqProcessId().
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedDlTriggerReq().
|
private |
Definition at line 1937 of file tdtbfq-ff-mac-scheduler.cc.
References ns3::FfMacScheduler::ALL_UL_CQI, ns3::LteFfConverter::fpS11dot3toDouble(), m_allocationMaps, m_cqiTimersThreshold, m_cschedCellConfig, ns3::FfMacSchedSapProvider::SchedUlCqiInfoReqParameters::m_sfnSf, ns3::UlCqi_s::m_sinr, ns3::UlCqi_s::m_type, m_ueCqi, m_ueCqiTimers, ns3::FfMacCschedSapProvider::CschedCellConfigReqParameters::m_ulBandwidth, ns3::FfMacSchedSapProvider::SchedUlCqiInfoReqParameters::m_ulCqi, ns3::FfMacScheduler::m_ulCqiFilter, ns3::FfMacSchedSapProvider::SchedUlCqiInfoReqParameters::m_vendorSpecificList, NO_SINR, NS_ASSERT, NS_FATAL_ERROR, NS_LOG_DEBUG, NS_LOG_FUNCTION, NS_LOG_INFO, ns3::UlCqi_s::PRACH, ns3::UlCqi_s::PUCCH_1, ns3::UlCqi_s::PUCCH_2, ns3::UlCqi_s::PUSCH, ns3::FfMacScheduler::PUSCH_UL_CQI, ns3::UlCqi_s::SRS, SRS_CQI_RNTI_VSP, and ns3::FfMacScheduler::SRS_UL_CQI.
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedUlCqiInfoReq().
|
private |
Definition at line 1893 of file tdtbfq-ff-mac-scheduler.cc.
References ns3::MacCeListElement_s::BSR, ns3::BufferSizeLevelBsr::BsrId2BufferSize(), m_ceBsrRxed, ns3::FfMacSchedSapProvider::SchedUlMacCtrlInfoReqParameters::m_macCeList, NS_LOG_FUNCTION, and NS_LOG_LOGIC.
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedUlMacCtrlInfoReq().
|
private |
Definition at line 1879 of file tdtbfq-ff-mac-scheduler.cc.
References NS_LOG_FUNCTION.
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedUlNoiseInterferenceReq().
|
private |
Definition at line 1886 of file tdtbfq-ff-mac-scheduler.cc.
References NS_LOG_FUNCTION.
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedUlSrInfoReq().
|
private |
Definition at line 1494 of file tdtbfq-ff-mac-scheduler.cc.
References EstimateUlSinr(), ns3::LteFfrSapProvider::GetAvailableUlRbg(), ns3::LteFfrSapProvider::GetMinContinuousUlBandwidth(), HARQ_PERIOD, HARQ_PROC_NUM, ns3::LteFfrSapProvider::IsUlRbgAvailableForUe(), ns3::UlDciListElement_s::m_aggrLevel, m_allocationMaps, m_amc, ns3::UlDciListElement_s::m_cceIndex, m_ceBsrRxed, ns3::UlDciListElement_s::m_cqiRequest, m_cschedCellConfig, ns3::UlDciListElement_s::m_dai, ns3::FfMacSchedSapUser::SchedUlConfigIndParameters::m_dciList, m_ffrSapProvider, ns3::UlDciListElement_s::m_freqHopping, m_harqOn, ns3::UlDciListElement_s::m_hopping, ns3::UlDciListElement_s::m_mcs, ns3::UlDciListElement_s::m_n2Dmrs, ns3::UlDciListElement_s::m_ndi, m_nextRntiUl, ns3::UlDciListElement_s::m_pdcchPowerOffset, m_rachAllocationMap, ns3::UlDciListElement_s::m_rbLen, ns3::UlDciListElement_s::m_rbStart, ns3::UlDciListElement_s::m_rnti, m_schedSapUser, ns3::FfMacSchedSapProvider::SchedUlTriggerReqParameters::m_sfnSf, ns3::UlDciListElement_s::m_tbSize, ns3::UlDciListElement_s::m_tpc, m_ueCqi, ns3::UlDciListElement_s::m_ueTxAntennaSelection, ns3::FfMacCschedSapProvider::CschedCellConfigReqParameters::m_ulBandwidth, m_ulHarqCurrentProcessId, m_ulHarqProcessesDciBuffer, m_ulHarqProcessesStatus, ns3::UlDciListElement_s::m_ulIndex, ns3::FfMacSchedSapProvider::SchedUlTriggerReqParameters::m_ulInfoList, NO_SINR, ns3::UlInfoListElement_s::NotOk, NS_FATAL_ERROR, NS_LOG_DEBUG, NS_LOG_ERROR, NS_LOG_FUNCTION, NS_LOG_INFO, RefreshUlCqiMaps(), ns3::LteFfrSapProvider::ReportUlCqiInfo(), s, ns3::FfMacSchedSapUser::SchedUlConfigInd(), and UpdateUlRlcBufferInfo().
Referenced by ns3::TdTbfqSchedulerMemberSchedSapProvider::SchedUlTriggerReq().
|
private |
Definition at line 1463 of file tdtbfq-ff-mac-scheduler.cc.
References m_cschedCellConfig, m_ueCqi, ns3::FfMacCschedSapProvider::CschedCellConfigReqParameters::m_ulBandwidth, and NO_SINR.
Referenced by DoSchedUlTriggerReq().
|
virtual |
Implements ns3::FfMacScheduler.
Definition at line 312 of file tdtbfq-ff-mac-scheduler.cc.
References m_cschedSapProvider.
|
virtual |
Implements ns3::FfMacScheduler.
Definition at line 318 of file tdtbfq-ff-mac-scheduler.cc.
References m_schedSapProvider.
|
virtual |
Implements ns3::FfMacScheduler.
Definition at line 330 of file tdtbfq-ff-mac-scheduler.cc.
References m_ffrSapUser.
|
private |
Definition at line 546 of file tdtbfq-ff-mac-scheduler.cc.
References ns3::TdTbfqType0AllocationRbg.
Referenced by DoSchedDlTriggerReq().
|
static |
Definition at line 252 of file tdtbfq-ff-mac-scheduler.cc.
References m_cqiTimersThreshold, m_creditableThreshold, m_creditLimit, m_debtLimit, m_harqOn, m_tokenPoolSize, m_ulGrantMcs, and ns3::TypeId::SetParent().
|
private |
Return the availability of free process for the RNTI specified.
rnti | the RNTI of the UE to be updated |
Definition at line 584 of file tdtbfq-ff-mac-scheduler.cc.
References HARQ_PROC_NUM, m_dlHarqCurrentProcessId, m_dlHarqProcessesStatus, NS_FATAL_ERROR, and NS_LOG_FUNCTION.
Referenced by DoSchedDlTriggerReq().
|
private |
Definition at line 561 of file tdtbfq-ff-mac-scheduler.cc.
References m_rlcBufferReq.
Referenced by DoSchedDlTriggerReq().
|
private |
Definition at line 2085 of file tdtbfq-ff-mac-scheduler.cc.
References m_a30CqiRxed, m_a30CqiTimers, m_cqiTimersThreshold, m_p10CqiRxed, m_p10CqiTimers, NS_ASSERT_MSG, and NS_LOG_INFO.
Referenced by DoSchedDlTriggerReq().
|
private |
Refresh HARQ processes according to the timers.
Definition at line 658 of file tdtbfq-ff-mac-scheduler.cc.
References HARQ_DL_TIMEOUT, HARQ_PROC_NUM, m_dlHarqProcessesStatus, m_dlHarqProcessesTimer, NS_FATAL_ERROR, NS_LOG_DEBUG, and NS_LOG_FUNCTION.
Referenced by DoSchedDlTriggerReq().
|
private |
Definition at line 2138 of file tdtbfq-ff-mac-scheduler.cc.
References m_cqiTimersThreshold, m_ueCqi, m_ueCqiTimers, NS_ASSERT_MSG, and NS_LOG_INFO.
Referenced by DoSchedUlTriggerReq().
|
virtual |
set the user part of the FfMacCschedSap that this Scheduler will interact with.
Normally this part of the SAP is exported by the MAC.
s |
Implements ns3::FfMacScheduler.
Definition at line 300 of file tdtbfq-ff-mac-scheduler.cc.
References m_cschedSapUser, and s.
|
virtual |
set the user part of the FfMacSchedSap that this Scheduler will interact with.
Normally this part of the SAP is exported by the MAC.
s |
Implements ns3::FfMacScheduler.
Definition at line 306 of file tdtbfq-ff-mac-scheduler.cc.
References m_schedSapUser, and s.
|
virtual |
Set the Provider part of the LteFfrSap that this Scheduler will interact with.
s |
Implements ns3::FfMacScheduler.
Definition at line 324 of file tdtbfq-ff-mac-scheduler.cc.
References m_ffrSapProvider, and s.
void ns3::TdTbfqFfMacScheduler::TransmissionModeConfigurationUpdate | ( | uint16_t | rnti, |
uint8_t | txMode | ||
) |
Definition at line 2245 of file tdtbfq-ff-mac-scheduler.cc.
References ns3::FfMacCschedSapUser::CschedUeConfigUpdateInd(), m_cschedSapUser, ns3::FfMacCschedSapUser::CschedUeConfigUpdateIndParameters::m_rnti, ns3::FfMacCschedSapUser::CschedUeConfigUpdateIndParameters::m_transmissionMode, and NS_LOG_FUNCTION.
|
private |
Definition at line 2168 of file tdtbfq-ff-mac-scheduler.cc.
References m_rlcBufferReq, NS_LOG_ERROR, and NS_LOG_INFO.
Referenced by DoSchedDlTriggerReq().
|
private |
Update and return a new process Id for the RNTI specified.
rnti | the RNTI of the UE to be updated |
Definition at line 617 of file tdtbfq-ff-mac-scheduler.cc.
References HARQ_PROC_NUM, m_dlHarqCurrentProcessId, m_dlHarqProcessesStatus, m_harqOn, NS_FATAL_ERROR, and NS_LOG_FUNCTION.
Referenced by DoSchedDlTriggerReq().
|
private |
Definition at line 2220 of file tdtbfq-ff-mac-scheduler.cc.
References m_ceBsrRxed, NS_LOG_ERROR, and NS_LOG_INFO.
Referenced by DoSchedUlTriggerReq().
|
friend |
Definition at line 108 of file tdtbfq-ff-mac-scheduler.h.
Referenced by TdTbfqFfMacScheduler().
|
friend |
Definition at line 109 of file tdtbfq-ff-mac-scheduler.h.
Referenced by TdTbfqFfMacScheduler().
|
private |
Definition at line 268 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlTriggerReq().
|
private |
Definition at line 222 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlCqiInfoReq(), DoSchedDlTriggerReq(), and RefreshDlCqiMaps().
|
private |
Definition at line 226 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlCqiInfoReq(), and RefreshDlCqiMaps().
|
private |
Definition at line 232 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedUlCqiInfoReq(), and DoSchedUlTriggerReq().
Definition at line 191 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlTriggerReq(), DoSchedUlTriggerReq(), and TdTbfqFfMacScheduler().
|
private |
Definition at line 246 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeReleaseReq(), DoSchedUlMacCtrlInfoReq(), DoSchedUlTriggerReq(), and UpdateUlRlcBufferInfo().
|
private |
Definition at line 264 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlCqiInfoReq(), DoSchedUlCqiInfoReq(), GetTypeId(), RefreshDlCqiMaps(), and RefreshUlCqiMaps().
|
private |
Definition at line 276 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedLcConfigReq(), and GetTypeId().
|
private |
Definition at line 272 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedLcConfigReq(), and GetTypeId().
|
private |
Definition at line 259 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedCellConfigReq(), DoSchedDlTriggerReq(), DoSchedUlCqiInfoReq(), DoSchedUlTriggerReq(), and EstimateUlSinr().
|
private |
Definition at line 251 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoDispose(), GetFfMacCschedSapProvider(), and TdTbfqFfMacScheduler().
|
private |
Definition at line 249 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedCellConfigReq(), SetFfMacCschedSapUser(), and TransmissionModeConfigurationUpdate().
|
private |
Definition at line 270 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedLcConfigReq(), and GetTypeId().
|
private |
Definition at line 283 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeConfigReq(), DoCschedUeReleaseReq(), HarqProcessAvailability(), and UpdateHarqProcessId().
|
private |
Definition at line 289 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeConfigReq(), DoCschedUeReleaseReq(), DoDispose(), and DoSchedDlTriggerReq().
|
private |
Definition at line 290 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeConfigReq(), DoCschedUeReleaseReq(), DoDispose(), and DoSchedDlTriggerReq().
|
private |
Definition at line 287 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeConfigReq(), DoCschedUeReleaseReq(), DoSchedDlTriggerReq(), HarqProcessAvailability(), RefreshHarqProcesses(), and UpdateHarqProcessId().
|
private |
Definition at line 288 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeConfigReq(), DoCschedUeReleaseReq(), DoDispose(), DoSchedDlTriggerReq(), and RefreshHarqProcesses().
|
private |
Definition at line 291 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoDispose(), and DoSchedDlTriggerReq().
|
private |
Definition at line 256 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlCqiInfoReq(), DoSchedDlTriggerReq(), DoSchedUlTriggerReq(), SetLteFfrSapProvider(), and TdTbfqFfMacScheduler().
|
private |
Definition at line 255 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoDispose(), GetLteFfrSapUser(), and TdTbfqFfMacScheduler().
|
private |
Definition at line 202 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedLcConfigReq(), DoCschedUeReleaseReq(), and DoSchedDlTriggerReq().
|
private |
Definition at line 207 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedLcConfigReq(), and DoCschedUeReleaseReq().
|
private |
m_harqOn when false inhibit te HARQ mechanisms (by default active)
Definition at line 282 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlTriggerReq(), DoSchedUlTriggerReq(), GetTypeId(), and UpdateHarqProcessId().
|
private |
Definition at line 262 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeReleaseReq(), and DoSchedUlTriggerReq().
|
private |
Definition at line 213 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlCqiInfoReq(), and RefreshDlCqiMaps().
|
private |
Definition at line 217 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlCqiInfoReq(), and RefreshDlCqiMaps().
|
private |
Definition at line 303 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedCellConfigReq(), DoSchedDlTriggerReq(), and DoSchedUlTriggerReq().
|
private |
Definition at line 302 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlRachInfoReq(), and DoSchedDlTriggerReq().
|
private |
Definition at line 196 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedLcReleaseReq(), DoCschedUeReleaseReq(), DoSchedDlRlcBufferReq(), DoSchedDlTriggerReq(), LcActivePerFlow(), and UpdateDlRlcBufferInfo().
|
private |
Definition at line 252 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoDispose(), GetFfMacSchedSapProvider(), and TdTbfqFfMacScheduler().
|
private |
Definition at line 250 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlTriggerReq(), DoSchedUlTriggerReq(), and SetFfMacSchedSapUser().
|
private |
Definition at line 274 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedLcConfigReq(), and GetTypeId().
|
private |
Definition at line 237 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedUlCqiInfoReq(), DoSchedUlTriggerReq(), EstimateUlSinr(), and RefreshUlCqiMaps().
|
private |
Definition at line 241 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedUlCqiInfoReq(), and RefreshUlCqiMaps().
|
private |
Definition at line 266 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeConfigReq(), DoCschedUeReleaseReq(), and DoSchedDlTriggerReq().
|
private |
Definition at line 304 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoSchedDlTriggerReq(), and GetTypeId().
|
private |
Definition at line 293 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeConfigReq(), DoCschedUeReleaseReq(), DoDispose(), DoSchedDlTriggerReq(), and DoSchedUlTriggerReq().
|
private |
Definition at line 298 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeConfigReq(), DoCschedUeReleaseReq(), DoDispose(), DoSchedDlTriggerReq(), and DoSchedUlTriggerReq().
|
private |
Definition at line 297 of file tdtbfq-ff-mac-scheduler.h.
Referenced by DoCschedUeConfigReq(), DoCschedUeReleaseReq(), DoDispose(), and DoSchedUlTriggerReq().