27 #include "ns3/simulator.h" 
   46     .SetGroupName(
"Wimax");
 
   71   uint32_t allocationSize = 0;
 
   98             allocationSize = bs->GetBwReqOppSize ();
 
  108         allocationSize = bs->GetBwReqOppSize ();
 
  116         allocationSize = bs->GetBwReqOppSize ();
 
  123   return allocationSize;
 
  135   for (std::vector<ServiceFlow*>::iterator iter = serviceFlows.begin (); iter != serviceFlows.end (); ++iter)
 
  145               bytesToRequest = serviceFlow->
GetQueue ()->GetQueueLengthWithMACOverhead ();
 
  159   uint32_t bytesToRequest = 0;
 
  162   if (!serviceFlow || !bytesToRequest)
 
  173   bwRequestHdr.
SetBr (bytesToRequest);
 
  188   ServiceFlow *serviceFlow = bs->GetConnectionManager ()->GetConnection (bwRequestHdr.
GetCid ())->GetServiceFlow ();
 
  191       serviceFlow->GetRecord ()->UpdateRequestedBandwidth (bwRequestHdr.
GetBr ());
 
  195       serviceFlow->GetRecord ()->SetRequestedBandwidth (bwRequestHdr.
GetBr ());
 
  196       bs->GetUplinkScheduler ()->OnSetRequestedBandwidth (serviceFlow->GetRecord ());
 
  198   bs->GetUplinkScheduler ()->ProcessBandwidthRequest (bwRequestHdr);
 
  200   serviceFlow->GetRecord ()->IncreaseBacklogged (bwRequestHdr.
GetBr ());
 
  210   uint32_t symbolsPerFrame = bs->GetPhy ()->GetSymbolsPerFrame ();
 
  213   bs->SetNrDlSymbols (symbolsPerFrame / 2);
 
  214   bs->SetNrUlSymbols (symbolsPerFrame / 2);
 
  222   uint32_t allocationPerFrame = 0;
 
  224   std::vector<SSRecord*> *ssRecords = bs->GetSSManager ()->GetSSRecords ();
 
  225   for (std::vector<SSRecord*>::iterator iter1 = ssRecords->begin (); iter1 != ssRecords->end (); ++iter1)
 
  230           allocationPerFrame += (*iter2)->GetRecord ()->GetGrantSize ();
 
  233   return allocationPerFrame;
 
void SendBandwidthRequest(uint8_t uiuc, uint16_t allocationSize)
 
Simulation virtual time values and global simulation resolution. 
 
Smart pointer class similar to boost::intrusive_ptr. 
 
enum ServiceFlow::SchedulingType GetSchedulingType(void) const 
 
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system. 
 
void SetType(uint8_t type)
 
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name. 
 
#define NS_FATAL_ERROR(msg)
Report a fatal error with a message and terminate. 
 
Ptr< WimaxMacQueue > GetQueue(void) const 
 
uint8_t GetType(void) const 
 
void DoDispose(void)
Destructor implementation. 
 
Ptr< WimaxConnection > GetConnection(void) const 
 
Ptr< WimaxNetDevice > m_device
 
static TypeId GetTypeId(void)
 
Time GetGrantTimeStamp(void) const 
 
void SetGrantTimeStamp(Time grantTimeStamp)
Set the grant time stamp. 
 
ServiceFlow * SelectFlowForRequest(uint32_t &bytesToRequest)
 
void ProcessBandwidthRequest(const BandwidthRequestHeader &bwRequestHdr)
 
bool GetHasServiceFlowUgs(void) const 
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
bool GetPollMeBit(void) const 
 
this class implements the bandwidth-request mac Header as described by IEEE Standard for Local and me...
 
BandwidthManager(Ptr< WimaxNetDevice > device)
 
This class implements service flows as described by the IEEE-802.16 standard. 
 
static Time Now(void)
Return the current simulation virtual time. 
 
ServiceFlowRecord * GetRecord(void) const 
 
#define NS_ASSERT_MSG(condition, message)
At runtime, in debugging builds, if this condition is not true, the program prints the message to out...
 
uint32_t GetBr(void) const 
 
void SetSubframeRatio(void)
 
uint32_t GetGrantSize(void) const 
 
uint32_t GetSymbolsPerFrameAllocated(void)
 
uint16_t GetUnsolicitedGrantInterval(void) const 
 
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. 
 
uint32_t CalculateAllocationSize(const SSRecord *ssRecord, const ServiceFlow *serviceFlow)
 
a unique identifier for an interface. 
 
TypeId SetParent(TypeId tid)
Set the parent TypeId. 
 
void AddHeader(const Header &header)
Add header to this packet. 
 
uint16_t GetUnsolicitedPollingInterval(void) const 
 
bool HasPackets(void) const