Public Member Functions | Static Public Member Functions

ns3::UplinkScheduler Class Reference

Virtual class for uplink scheduler. More...

#include <bs-uplink-scheduler.h>

Inheritance diagram for ns3::UplinkScheduler:
Inheritance graph
[legend]
Collaboration diagram for ns3::UplinkScheduler:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 UplinkScheduler (Ptr< BaseStationNetDevice > bs)
virtual uint8_t GetNrIrOppsAllocated (void) const
virtual void SetNrIrOppsAllocated (uint8_t nrIrOppsAllocated)
virtual bool GetIsIrIntrvlAllocated (void) const
virtual void SetIsIrIntrvlAllocated (bool isIrIntrvlAllocated)
virtual bool GetIsInvIrIntrvlAllocated (void) const
virtual void SetIsInvIrIntrvlAllocated (bool isInvIrIntrvlAllocated)
virtual std::list< OfdmUlMapIeGetUplinkAllocations (void) const
virtual Time GetTimeStampIrInterval (void)
virtual void SetTimeStampIrInterval (Time timeStampIrInterval)
virtual Time GetDcdTimeStamp (void) const
virtual void SetDcdTimeStamp (Time dcdTimeStamp)
virtual Time GetUcdTimeStamp (void) const
virtual void SetUcdTimeStamp (Time ucdTimeStamp)
virtual Ptr< BaseStationNetDeviceGetBs (void)
virtual void SetBs (Ptr< BaseStationNetDevice > bs)
virtual void GetChannelDescriptorsToUpdate (bool &, bool &, bool &, bool &)=0
virtual uint32_t CalculateAllocationStartTime (void)=0
virtual void AddUplinkAllocation (OfdmUlMapIe &ulMapIe, const uint32_t &allocationSize, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)=0
virtual void Schedule (void)=0
virtual void ServiceUnsolicitedGrants (const SSRecord *ssRecord, enum ServiceFlow::SchedulingType schedulingType, OfdmUlMapIe &ulMapIe, const WimaxPhy::ModulationType modulationType, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)=0
virtual void ServiceBandwidthRequests (const SSRecord *ssRecord, enum ServiceFlow::SchedulingType schedulingType, OfdmUlMapIe &ulMapIe, const WimaxPhy::ModulationType modulationType, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)=0
virtual bool ServiceBandwidthRequests (ServiceFlow *serviceFlow, enum ServiceFlow::SchedulingType schedulingType, OfdmUlMapIe &ulMapIe, const WimaxPhy::ModulationType modulationType, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)=0
virtual void AllocateInitialRangingInterval (uint32_t &symbolsToAllocation, uint32_t &availableSymbols)=0
virtual void SetupServiceFlow (SSRecord *ssRecord, ServiceFlow *serviceFlow)=0
virtual void ProcessBandwidthRequest (const BandwidthRequestHeader &bwRequestHdr)=0
virtual void InitOnce (void)=0
virtual void OnSetRequestedBandwidth (ServiceFlowRecord *sfr)=0

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::UplinkScheduler.

Detailed Description

Virtual class for uplink scheduler.


Member Function Documentation

virtual void ns3::UplinkScheduler::GetChannelDescriptorsToUpdate ( bool &  ,
bool &  ,
bool &  ,
bool &   
) [pure virtual]

Determines if channel descriptors sent in the current frame are required to be updated

Implemented in ns3::UplinkSchedulerMBQoS, ns3::UplinkSchedulerRtps, and ns3::UplinkSchedulerSimple.

static TypeId ns3::UplinkScheduler::GetTypeId ( void   )  [static]

This method returns the TypeId associated to ns3::UplinkScheduler.

This object is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/LinkManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/SSManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/Classifier/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/Classifier/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/Classifier/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/NoiseModel/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/NoiseModel/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/NoiseModel/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/PropagationModel/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/PropagationModel/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/PropagationModel/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Mac/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Mac/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Mac/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Phy/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Phy/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Phy/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Transducer/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Transducer/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Transducer/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/LinkManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/SSManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/Classifier/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/Classifier/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BandwidthManager/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BandwidthManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BurstProfileManager/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BurstProfileManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/NoiseModel/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/NoiseModel/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/PropagationModel/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/PropagationModel/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/ConnectionManager/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/ConnectionManager/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/NoiseModel/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/NoiseModel/$ns3::UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/PropagationModel/$ns3::BaseStationNetDevice/UplinkScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/PropagationModel/$ns3::UplinkScheduler

No Attributes defined for this type.
No TraceSources defined for this type.

Reimplemented from ns3::Object.

Reimplemented in ns3::UplinkSchedulerMBQoS, ns3::UplinkSchedulerRtps, and ns3::UplinkSchedulerSimple.


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