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

#include <bs-scheduler-simple.h>

+ Inheritance diagram for ns3::BSSchedulerSimple:
+ Collaboration diagram for ns3::BSSchedulerSimple:

Public Member Functions

 BSSchedulerSimple ()
 BSSchedulerSimple (Ptr< BaseStationNetDevice > bs)
 ~BSSchedulerSimple (void)
void AddDownlinkBurst (Ptr< const WimaxConnection > connection, uint8_t diuc, WimaxPhy::ModulationType modulationType, Ptr< PacketBurst > burst)
Ptr< PacketBurstCreateUgsBurst (ServiceFlow *serviceFlow, WimaxPhy::ModulationType modulationType, uint32_t availableSymbols)
std::list< std::pair
< OfdmDlMapIe *, Ptr
< PacketBurst > > > * 
GetDownlinkBursts (void) const
void Schedule (void)
bool SelectConnection (Ptr< WimaxConnection > &connection)
- Public Member Functions inherited from ns3::BSScheduler
 BSScheduler ()
 BSScheduler (Ptr< BaseStationNetDevice > bs)
 ~BSScheduler (void)
bool CheckForFragmentation (Ptr< WimaxConnection > connection, int availableSymbols, WimaxPhy::ModulationType modulationType)
virtual Ptr< BaseStationNetDeviceGetBs (void)
virtual void SetBs (Ptr< BaseStationNetDevice > bs)
- Public Member Functions inherited from ns3::Object
 Object ()
virtual ~Object ()
void AggregateObject (Ptr< Object > other)
void Dispose (void)
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 Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
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)
 This method returns the TypeId associated to ns3::BSSchedulerSimple.

Private Attributes

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)
virtual void DoStart (void)
virtual void NotifyNewAggregate (void)

Detailed Description

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

Constructor & Destructor Documentation

ns3::BSSchedulerSimple::BSSchedulerSimple ( )

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

References ns3::BSScheduler::SetBs().

+ Here is the call graph for this function:

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

Definition at line 56 of file bs-scheduler-simple.cc.

References ns3::BSScheduler::SetBs().

+ Here is the call graph for this function:

ns3::BSSchedulerSimple::~BSSchedulerSimple ( void  )

Definition at line 64 of file bs-scheduler-simple.cc.

References m_downlinkBursts, and ns3::BSScheduler::SetBs().

+ Here is the call graph for this function:

Member Function Documentation

void ns3::BSSchedulerSimple::AddDownlinkBurst ( Ptr< const WimaxConnection connection,
uint8_t  diuc,
WimaxPhy::ModulationType  modulationType,
Ptr< PacketBurst burst 
)
virtual

Implements ns3::BSScheduler.

Definition at line 85 of file bs-scheduler-simple.cc.

References ns3::PacketBurst::GetNPackets(), ns3::PacketBurst::GetSize(), m_downlinkBursts, NS_LOG_INFO, ns3::OfdmDlMapIe::SetCid(), ns3::OfdmDlMapIe::SetDiuc(), and ns3::Cid::TRANSPORT.

Referenced by Schedule().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::list< std::pair< OfdmDlMapIe *, Ptr< PacketBurst > > > * ns3::BSSchedulerSimple::GetDownlinkBursts ( void  ) const
virtual

Implements ns3::BSScheduler.

Definition at line 80 of file bs-scheduler-simple.cc.

References m_downlinkBursts.

TypeId ns3::BSSchedulerSimple::GetTypeId ( void  )
static

This method returns the TypeId associated to ns3::BSSchedulerSimple.

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

Reimplemented from ns3::BSScheduler.

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

References ns3::TypeId::SetParent().

+ Here is the call graph for this function:

void ns3::BSSchedulerSimple::Schedule ( void  )
virtual

Implements ns3::BSScheduler.

Definition at line 106 of file bs-scheduler-simple.cc.

References AddDownlinkBurst(), ns3::PacketBurst::AddPacket(), ns3::Cid::BASIC, ns3::BSScheduler::CheckForFragmentation(), CreateUgsBurst(), ns3::WimaxConnection::Dequeue(), ns3::WimaxNetDevice::DIRECTION_DOWNLINK, ns3::OfdmDlBurstProfile::DIUC_BURST_PROFILE_1, ns3::WimaxNetDevice::GetBroadcastConnection(), ns3::BSScheduler::GetBs(), ns3::BurstProfileManager::GetBurstProfile(), ns3::WimaxNetDevice::GetBurstProfileManager(), ns3::WimaxConnection::GetCid(), ns3::WimaxNetDevice::GetConnectionManager(), ns3::WimaxMacQueue::GetFirstPacketRequiredByte(), ns3::ServiceFlowRecord::GetGrantSize(), ns3::WimaxNetDevice::GetInitialRangingConnection(), ns3::ServiceFlow::GetModulation(), ns3::PacketBurst::GetNPackets(), ns3::ConnectionManager::GetNPackets(), ns3::WimaxPhy::GetNrBytes(), ns3::BaseStationNetDevice::GetNrDlSymbols(), ns3::WimaxPhy::GetNrSymbols(), ns3::WimaxNetDevice::GetPhy(), ns3::WimaxConnection::GetQueue(), ns3::ServiceFlow::GetRecord(), ns3::WimaxConnection::GetSchedulingType(), ns3::WimaxConnection::GetServiceFlow(), ns3::PacketBurst::GetSize(), ns3::WimaxMacQueue::GetSize(), ns3::BaseStationNetDevice::GetSSManager(), ns3::SSManager::GetSSRecord(), ns3::WimaxConnection::GetType(), ns3::WimaxConnection::HasPackets(), ns3::MacHeaderType::HEADER_TYPE_GENERIC, m_downlinkBursts, ns3::WimaxPhy::MODULATION_TYPE_BPSK_12, ns3::Cid::MULTICAST, NS_LOG_DEBUG, ns3::Cid::PRIMARY, SelectConnection(), ns3::ServiceFlow::SF_TYPE_ALL, ns3::ServiceFlow::SF_TYPE_NONE, ns3::ServiceFlow::SF_TYPE_UGS, and ns3::Cid::TRANSPORT.

+ Here is the call graph for this function:

Member Data Documentation

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

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