Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

olsr::sch::Scheduler Class Reference

The scheduler class. More...

#include <scheduler.hh>

List of all members.

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)
Thisoperator= (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.
LoopHandlerloophandler_
const Eventcurrent_event_
 Currently processed event.
bool delete_

Classes

struct  ioevent_less
struct  tevent_less


Detailed Description

The scheduler class.


Member Typedef Documentation

typedef std::multiset<IOEvent*, ioevent_less> olsr::sch::Scheduler::ioeventset_t
 

typedef std::multiset<TimedEvent*, tevent_less> olsr::sch::Scheduler::teventset_t
 

typedef Scheduler olsr::sch::Scheduler::This [private]
 


Constructor & Destructor Documentation

olsr::sch::Scheduler::Scheduler LoopHandler  ) 
 

Constructor.

olsr::sch::Scheduler::~Scheduler  ) 
 

olsr::sch::Scheduler::Scheduler const This other  )  [private]
 


Member Function Documentation

template<class E>
void olsr::sch::Scheduler::destroy E *  e  ) 
 

void olsr::sch::Scheduler::erase IOEvent e  ) 
 

void olsr::sch::Scheduler::erase TimedEvent e  ) 
 

void olsr::sch::Scheduler::handle_ioevents  )  [private]
 

I/O events handling method. To be called from the event loop.

void olsr::sch::Scheduler::handle_tevents  )  [private]
 

Timed events handling method. To be called from the event loop.

void olsr::sch::Scheduler::insert IOEvent e  ) 
 

I/O event registering method. Add the pointer to the I/O events set.

  • e pointer to I/O event to register

void olsr::sch::Scheduler::insert TimedEvent e  ) 
 

Timed event registering method. Adds the pointer to the timed events set and resets the timer.

  • e pointer to timed event to register

void olsr::sch::Scheduler::loop  ) 
 

The main event loop of the scheduler.

This& olsr::sch::Scheduler::operator= const This other  )  [private]
 

bool olsr::sch::Scheduler::to_delete  )  const [inline]
 


Member Data Documentation

const Event* olsr::sch::Scheduler::current_event_ [private]
 

Currently processed event.

bool olsr::sch::Scheduler::delete_ [private]
 

ioeventset_t olsr::sch::Scheduler::ioevent_set_ [private]
 

Set of I/O events.

LoopHandler& olsr::sch::Scheduler::loophandler_ [private]
 

teventset_t olsr::sch::Scheduler::tevent_set_ [private]
 

Set of timed events.


The documentation for this class was generated from the following files:
Generated on Thu Jul 28 21:21:50 2005 for Qolyester daemon by  doxygen 1.4.1