21 #ifndef UPLINK_SCHEDULER_RTPS_H 22 #define UPLINK_SCHEDULER_RTPS_H 26 #include "ns3/nstime.h" 32 class BaseStationNetDevice;
99 const uint32_t &allocationSize,
100 uint32_t &symbolsToAllocation,
101 uint32_t &availableSymbols);
119 uint32_t &symbolsToAllocation,
120 uint32_t &availableSymbols);
134 uint32_t &symbolsToAllocation,
135 uint32_t &availableSymbols);
150 uint32_t &symbolsToAllocation,
151 uint32_t &availableSymbols);
std::list< OfdmUlMapIe > GetUplinkAllocations(void) const
Get uplink allocations.
Smart pointer class similar to boost::intrusive_ptr.
static TypeId GetTypeId(void)
Get the type ID.
void InitOnce(void)
Init once 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 ProcessBandwidthRequest(const BandwidthRequestHeader &bwRequestHdr)
Process bandwidth requet function.
this class implements a structure to manage some parameters and statistics related to a service flow ...
std::list< OfdmUlMapIe > m_uplinkAllocations
uplink allocations
void AddUplinkAllocation(OfdmUlMapIe &ulMapIe, const uint32_t &allocationSize, uint32_t &symbolsToAllocation, uint32_t &availableSymbols)
Add Uplink Allocation function.
void SetupServiceFlow(SSRecord *ssRecord, ServiceFlow *serviceFlow)
Setup service flow function.
This class implements a simple uplink scheduler for rtPS flows.
void GetChannelDescriptorsToUpdate(bool &updateDcd, bool &updateUcd, bool &sendDcd, bool &sendUcd)
Determines if channel descriptors sent in the current frame are required to be updated.
SchedulingType
section 11.13.11 Service flow scheduling type, page 701
Virtual class for uplink scheduler.
~UplinkSchedulerRtps(void)
void ULSchedulerRTPSConnection(uint32_t &symbolsToAllocation, uint32_t &availableSymbols)
Uplink Scheduler for rtPS connections.
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.
uint32_t CalculateAllocationStartTime(void)
Calculate allocation start time function.
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...
This class implements service flows as described by the IEEE-802.16 standard.
void AllocateInitialRangingInterval(uint32_t &symbolsToAllocation, uint32_t &availableSymbols)
Allocate Initial Ranging Interval function.
void Schedule(void)
Schedule function.
ModulationType
ModulationType enumeration.
This class is used by the base station to store some information related to subscriber station in the...
void OnSetRequestedBandwidth(ServiceFlowRecord *sfr)
Set requested bandwidth function.
This class implements the UL-MAP_IE message as described by "IEEE Standard for Local and metropolitan...
a unique identifier for an interface.