A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::BSScheduler Class Referenceabstract

#include <bs-scheduler.h>

+ Inheritance diagram for ns3::BSScheduler:
+ Collaboration diagram for ns3::BSScheduler:

Public Member Functions

 BSScheduler ()
 
 BSScheduler (Ptr< BaseStationNetDevice > bs)
 
 ~BSScheduler (void)
 
virtual void AddDownlinkBurst (Ptr< const WimaxConnection > connection, uint8_t diuc, WimaxPhy::ModulationType modulationType, Ptr< PacketBurst > burst)=0
 
bool CheckForFragmentation (Ptr< WimaxConnection > connection, int availableSymbols, WimaxPhy::ModulationType modulationType)
 
virtual Ptr< PacketBurstCreateUgsBurst (ServiceFlow *serviceFlow, WimaxPhy::ModulationType modulationType, uint32_t availableSymbols)=0
 
virtual Ptr< BaseStationNetDeviceGetBs (void)
 
virtual std::list< std::pair
< OfdmDlMapIe *, Ptr
< PacketBurst > > > * 
GetDownlinkBursts (void) const =0
 
virtual void Schedule (void)=0
 
virtual bool SelectConnection (Ptr< WimaxConnection > &connection)=0
 
virtual void SetBs (Ptr< BaseStationNetDevice > bs)
 
- Public Member Functions inherited from ns3::Object
 Object ()
 
virtual ~Object ()
 
void AggregateObject (Ptr< Object > other)
 
void Dispose (void)
 Run the DoDispose methods of this object and all the objects aggregated to it. More...
 
AggregateIterator GetAggregateIterator (void) const
 
virtual TypeId GetInstanceTypeId (void) const
 
template<typename T >
Ptr< T > GetObject (void) const
 
template<typename T >
Ptr< T > GetObject (TypeId tid) const
 
void Initialize (void)
 This method calls the virtual DoInitialize method on all the objects aggregated to this object. More...
 
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 Constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor. More...
 
void GetAttribute (std::string name, AttributeValue &value) const
 
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
 
void SetAttribute (std::string name, const AttributeValue &value)
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 

Static Public Member Functions

static TypeId GetTypeId (void)
 
- Static Public Member Functions inherited from ns3::Object
static TypeId GetTypeId (void)
 Register this type. More...
 
- Static Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
static void Cleanup (void)
 Noop. More...
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId (void)
 Get the type ID. More...
 

Private Attributes

Ptr< BaseStationNetDevicem_bs
 
std::list< std::pair
< OfdmDlMapIe *, Ptr
< PacketBurst > > > * 
m_downlinkBursts
 

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
 
virtual void DoDispose (void)
 This method is called by Object::Dispose or by the object's destructor, whichever comes first. More...
 
virtual void DoInitialize (void)
 This method is called only once by Object::Initialize. More...
 
virtual void NotifyNewAggregate (void)
 This method is invoked whenever two sets of objects are aggregated together. More...
 
- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 
virtual void NotifyConstructionCompleted (void)
 This method is invoked once all member attributes have been initialized. More...
 

Detailed Description

Config Paths

ns3::BSScheduler is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/BSScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/Scheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/BSScheduler
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/Scheduler

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

Definition at line 43 of file bs-scheduler.h.

Constructor & Destructor Documentation

ns3::BSScheduler::BSScheduler ( )

Definition at line 50 of file bs-scheduler.cc.

ns3::BSScheduler::BSScheduler ( Ptr< BaseStationNetDevice bs)

Definition at line 57 of file bs-scheduler.cc.

ns3::BSScheduler::~BSScheduler ( void  )

Definition at line 63 of file bs-scheduler.cc.

References m_downlinkBursts, and SetBs().

+ Here is the call graph for this function:

Member Function Documentation

virtual void ns3::BSScheduler::AddDownlinkBurst ( Ptr< const WimaxConnection connection,
uint8_t  diuc,
WimaxPhy::ModulationType  modulationType,
Ptr< PacketBurst burst 
)
pure virtual
virtual Ptr<PacketBurst> ns3::BSScheduler::CreateUgsBurst ( ServiceFlow serviceFlow,
WimaxPhy::ModulationType  modulationType,
uint32_t  availableSymbols 
)
pure virtual
virtual std::list<std::pair<OfdmDlMapIe*, Ptr<PacketBurst> > >* ns3::BSScheduler::GetDownlinkBursts ( void  ) const
pure virtual
TypeId ns3::BSScheduler::GetTypeId ( void  )
static

Definition at line 44 of file bs-scheduler.cc.

References ns3::TypeId::SetParent().

+ Here is the call graph for this function:

virtual void ns3::BSScheduler::Schedule ( void  )
pure virtual
virtual bool ns3::BSScheduler::SelectConnection ( Ptr< WimaxConnection > &  connection)
pure virtual
void ns3::BSScheduler::SetBs ( Ptr< BaseStationNetDevice bs)
virtual

Member Data Documentation

Ptr<BaseStationNetDevice> ns3::BSScheduler::m_bs
private

Definition at line 108 of file bs-scheduler.h.

Referenced by GetBs(), and SetBs().

std::list<std::pair<OfdmDlMapIe*, Ptr<PacketBurst> > >* ns3::BSScheduler::m_downlinkBursts
private

Definition at line 109 of file bs-scheduler.h.

Referenced by ~BSScheduler().


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