Public Member Functions | Static Public Member Functions

ns3::Scheduler Class Reference
[Scheduler]

Maintain the event list. More...

#include <scheduler.h>

Inheritance diagram for ns3::Scheduler:
Inheritance graph
[legend]
Collaboration diagram for ns3::Scheduler:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual void Insert (const EventId &id)=0
virtual bool IsEmpty (void) const =0
virtual EventId PeekNext (void) const =0
virtual EventId RemoveNext (void)=0
virtual bool Remove (const EventId &id)=0

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::Scheduler.

Detailed Description

Maintain the event list.

This base class specifies the interface used to maintain the event list. If you want to provide a new event list scheduler, you need to create a subclass of this base class and implement all the pure virtual methods defined here. Namely:


Member Function Documentation

static TypeId ns3::Scheduler::GetTypeId ( void   )  [static]

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

/*! /*! /*! /*! /*!

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

Reimplemented from ns3::Object.

virtual void ns3::Scheduler::Insert ( const EventId id  )  [pure virtual]
Parameters:
id event to store in the event list

This method takes ownership of the event pointer.

Implemented in ns3::HeapScheduler, ns3::ListScheduler, and ns3::MapScheduler.

virtual bool ns3::Scheduler::IsEmpty ( void   )  const [pure virtual]
Returns:
true if the event list is empty and false otherwise.

Implemented in ns3::HeapScheduler, ns3::ListScheduler, and ns3::MapScheduler.

virtual EventId ns3::Scheduler::PeekNext ( void   )  const [pure virtual]
Returns:
a pointer to the next earliest event. The caller takes ownership of the returned pointer.

This method cannot be invoked if the list is empty.

Implemented in ns3::HeapScheduler, ns3::ListScheduler, and ns3::MapScheduler.

virtual bool ns3::Scheduler::Remove ( const EventId id  )  [pure virtual]
Parameters:
id the id of the event to remove
Returns:
true if the id was found and removed successfully, false otherwise.

This methods cannot be invoked if the list is empty.

Implemented in ns3::HeapScheduler, ns3::ListScheduler, and ns3::MapScheduler.

virtual EventId ns3::Scheduler::RemoveNext ( void   )  [pure virtual]

This method cannot be invoked if the list is empty. Remove the next earliest event from the event list.

Implemented in ns3::HeapScheduler, ns3::ListScheduler, and ns3::MapScheduler.


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