21 #ifndef UPLINK_SCHEDULER_SIMPLE_H 22 #define UPLINK_SCHEDULER_SIMPLE_H 26 #include "ns3/nstime.h" 33 class BaseStationNetDevice;
67 const uint32_t &allocationSize,
68 uint32_t &symbolsToAllocation,
69 uint32_t &availableSymbols);
84 uint32_t &symbolsToAllocation,
85 uint32_t &availableSymbols);
99 uint32_t &symbolsToAllocation,
100 uint32_t &availableSymbols);
115 uint32_t &symbolsToAllocation,
116 uint32_t &availableSymbols);
Smart pointer class similar to boost::intrusive_ptr.
void SetupServiceFlow(SSRecord *ssRecord, ServiceFlow *serviceFlow)
Setup service flow function.
void AddUplinkAllocation(OfdmUlMapIe &ulMapIe, const uint32_t &allocationSize, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)
Add uplink allocation.
void AllocateInitialRangingInterval(uint32_t &symbolsToAllocation, uint32_t &availableSymbols)
Allocate Initial Ranging Interval function.
this class implements a structure to manage some parameters and statistics related to a service flow ...
void ServiceBandwidthRequests(const SSRecord *ssRecord, enum ServiceFlow::SchedulingType schedulingType, OfdmUlMapIe &ulMapIe, const WimaxPhy::ModulationType modulationType, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)
Service Bandwidth Requests function.
void ServiceUnsolicitedGrants(const SSRecord *ssRecord, enum ServiceFlow::SchedulingType schedulingType, OfdmUlMapIe &ulMapIe, const WimaxPhy::ModulationType modulationType, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)
Service Unsolicited Grants function.
void GetChannelDescriptorsToUpdate(bool &, bool &, bool &, bool &)
Determines if channel descriptors sent in the current frame are required to be updated.
static TypeId GetTypeId(void)
Get the type ID.
void InitOnce(void)
Init once function.
SchedulingType
section 11.13.11 Service flow scheduling type, page 701
std::list< OfdmUlMapIe > m_uplinkAllocations
uplink allocations
Virtual class for uplink scheduler.
UplinkSchedulerSimple(void)
Every class exported by the ns3 library is enclosed in the ns3 namespace.
void ProcessBandwidthRequest(const BandwidthRequestHeader &bwRequestHdr)
Process bandwidth requet function.
This class implements the bandwidth-request mac Header as described by IEEE Standard for Local and me...
This class implements service flows as described by the IEEE-802.16 standard.
void Schedule(void)
Schedule function.
ModulationType
ModulationType enumeration.
~UplinkSchedulerSimple(void)
void OnSetRequestedBandwidth(ServiceFlowRecord *sfr)
Set requested bandwidth function.
This class is used by the base station to store some information related to subscriber station in the...
uint32_t CalculateAllocationStartTime(void)
This class implements the UL-MAP_IE message as described by "IEEE Standard for Local and metropolitan...
std::list< OfdmUlMapIe > GetUplinkAllocations(void) const
a unique identifier for an interface.