21 #ifndef UPLINK_SCHEDULER_H 
   22 #define UPLINK_SCHEDULER_H 
   26 #include "ns3/nstime.h" 
   33 class BaseStationNetDevice;
 
   36 class ServiceFlowRecord;
 
   80                                     const uint32_t &allocationSize,
 
   81                                     uint32_t &symbolsToAllocation,
 
   82                                     uint32_t &availableSymbols) = 0;
 
   88                                          uint32_t &symbolsToAllocation,
 
   89                                          uint32_t &availableSymbols) = 0;
 
   94                                          uint32_t &symbolsToAllocation,
 
   95                                          uint32_t &availableSymbols) = 0;
 
  100                                          uint32_t &symbolsToAllocation,
 
  101                                          uint32_t &availableSymbols) = 0;
 
Simulation virtual time values and global simulation resolution. 
 
Smart pointer class similar to boost::intrusive_ptr. 
 
virtual void SetDcdTimeStamp(Time dcdTimeStamp)
 
virtual Time GetUcdTimeStamp(void) const 
 
this class implements a structure to manage some parameters and statistics related to a service flow ...
 
static TypeId GetTypeId(void)
 
uint8_t m_nrIrOppsAllocated
 
virtual void SetIsIrIntrvlAllocated(bool isIrIntrvlAllocated)
 
Time m_timeStampIrInterval
 
virtual void AllocateInitialRangingInterval(uint32_t &symbolsToAllocation, uint32_t &availableSymbols)=0
 
virtual void ProcessBandwidthRequest(const BandwidthRequestHeader &bwRequestHdr)=0
 
virtual void OnSetRequestedBandwidth(ServiceFlowRecord *sfr)=0
 
virtual void SetupServiceFlow(SSRecord *ssRecord, ServiceFlow *serviceFlow)=0
 
virtual void SetTimeStampIrInterval(Time timeStampIrInterval)
 
virtual Time GetTimeStampIrInterval(void)
 
virtual void SetBs(Ptr< BaseStationNetDevice > bs)
 
Virtual class for uplink scheduler. 
 
virtual void GetChannelDescriptorsToUpdate(bool &, bool &, bool &, bool &)=0
Determines if channel descriptors sent in the current frame are required to be updated. 
 
virtual void SetNrIrOppsAllocated(uint8_t nrIrOppsAllocated)
 
Ptr< BaseStationNetDevice > m_bs
 
virtual uint32_t CalculateAllocationStartTime(void)=0
 
bool m_isIrIntrvlAllocated
 
virtual void Schedule(void)=0
 
virtual void AddUplinkAllocation(OfdmUlMapIe &ulMapIe, const uint32_t &allocationSize, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)=0
 
virtual bool GetIsIrIntrvlAllocated(void) const 
 
virtual void SetIsInvIrIntrvlAllocated(bool isInvIrIntrvlAllocated)
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
this class implements the bandwidth-request mac Header as described by IEEE Standard for Local and me...
 
virtual uint8_t GetNrIrOppsAllocated(void) const 
 
std::list< OfdmUlMapIe > m_uplinkAllocations
 
This class implements service flows as described by the IEEE-802.16 standard. 
 
virtual void ServiceBandwidthRequests(const SSRecord *ssRecord, enum ServiceFlow::SchedulingType schedulingType, OfdmUlMapIe &ulMapIe, const WimaxPhy::ModulationType modulationType, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)=0
 
virtual Ptr< BaseStationNetDevice > GetBs(void)
 
bool m_isInvIrIntrvlAllocated
 
virtual ~UplinkScheduler(void)
 
virtual void SetUcdTimeStamp(Time ucdTimeStamp)
 
virtual void InitOnce(void)=0
 
This class is used by the base station to store some information related to subscriber station in the...
 
A base class which provides memory management and object aggregation. 
 
virtual void ServiceUnsolicitedGrants(const SSRecord *ssRecord, enum ServiceFlow::SchedulingType schedulingType, OfdmUlMapIe &ulMapIe, const WimaxPhy::ModulationType modulationType, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)=0
 
virtual Time GetDcdTimeStamp(void) const 
 
a unique identifier for an interface. 
 
virtual bool GetIsInvIrIntrvlAllocated(void) const 
 
virtual std::list< OfdmUlMapIe > GetUplinkAllocations(void) const