#include <scheduler.hh>
Public Types | |
typedef std::multiset< TimedEvent *, tevent_less > | teventset_t |
typedef std::multiset< IOEvent *, ioevent_less > | ioeventset_t |
Public Member Functions | |
Scheduler (LoopHandler &) | |
~Scheduler () | |
void | insert (TimedEvent *e) |
void | erase (TimedEvent *e) |
void | insert (IOEvent *e) |
void | erase (IOEvent *e) |
template<class E> | |
void | destroy (E *e) |
bool | to_delete () const |
void | loop () |
Private Types | |
typedef Scheduler | This |
Private Member Functions | |
Scheduler (const This &other) | |
This & | operator= (const This &other) |
void | handle_tevents () |
void | handle_ioevents () |
Private Attributes | |
teventset_t | tevent_set_ |
Set of timed events. | |
ioeventset_t | ioevent_set_ |
Set of I/O events. | |
LoopHandler & | loophandler_ |
const Event * | current_event_ |
Currently processed event. | |
bool | delete_ |
Classes | |
struct | ioevent_less |
struct | tevent_less |
typedef Scheduler olsr::sch::Scheduler::This [private] |
typedef std::multiset<TimedEvent*, tevent_less> olsr::sch::Scheduler::teventset_t |
typedef std::multiset<IOEvent*, ioevent_less> olsr::sch::Scheduler::ioeventset_t |
olsr::sch::Scheduler::Scheduler | ( | LoopHandler & | ) | [inline] |
Constructor.
olsr::sch::Scheduler::~Scheduler | ( | ) | [inline] |
olsr::sch::Scheduler::Scheduler | ( | const This & | other | ) | [inline, private] |
void olsr::sch::Scheduler::insert | ( | TimedEvent * | e | ) | [inline] |
Timed event registering method. Adds the pointer to the timed events set and resets the timer.
void olsr::sch::Scheduler::erase | ( | TimedEvent * | e | ) | [inline] |
void olsr::sch::Scheduler::insert | ( | IOEvent * | e | ) | [inline] |
I/O event registering method. Add the pointer to the I/O events set.
void olsr::sch::Scheduler::erase | ( | IOEvent * | e | ) | [inline] |
void olsr::sch::Scheduler::destroy | ( | E * | e | ) | [inline] |
bool olsr::sch::Scheduler::to_delete | ( | ) | const [inline] |
void olsr::sch::Scheduler::handle_tevents | ( | ) | [inline, private] |
Timed events handling method. To be called from the event loop.
void olsr::sch::Scheduler::handle_ioevents | ( | ) | [inline, private] |
I/O events handling method. To be called from the event loop.
void olsr::sch::Scheduler::loop | ( | ) | [inline] |
The main event loop of the scheduler.
teventset_t olsr::sch::Scheduler::tevent_set_ [private] |
Set of timed events.
Set of I/O events.
LoopHandler& olsr::sch::Scheduler::loophandler_ [private] |
const Event* olsr::sch::Scheduler::current_event_ [private] |
Currently processed event.
bool olsr::sch::Scheduler::delete_ [private] |