SimpleEvent< Receiver > Class Template Reference

#include <SimpleEvent.h>

Inheritance diagram for SimpleEvent< Receiver >:

ScheduledEvent List of all members.

Public Types

typedef void(Receiver::*) Action ()

Public Member Functions

 SimpleEvent (Receiver *r, Action a)
 SimpleEvent (Receiver *r, Action a, std::string n)
virtual void execute ()
virtual std::string name () const

Static Protected Member Functions

static void schedule (double t, ScheduledEvent *next)

Private Attributes

Receiver * m_receiver
Action m_action
std::string m_name

Detailed Description

template<class Receiver>
class SimpleEvent< Receiver >

Definition at line 9 of file SimpleEvent.h.


Member Typedef Documentation

template<class Receiver>
typedef void(Receiver::* ) SimpleEvent< Receiver >::Action()

Definition at line 17 of file SimpleEvent.h.


Constructor & Destructor Documentation

template<class Receiver>
SimpleEvent< Receiver >::SimpleEvent ( Receiver *  r,
Action  a 
) [inline]

Definition at line 20 of file SimpleEvent.h.

00022 :m_receiver(r),m_action(a)
00023 //## end SimpleEvent::SimpleEvent%249491085.initialization
00024 {
00025 
00026 //## begin SimpleEvent::SimpleEvent%249491085.body preserve=yes
00027 //## end SimpleEvent::SimpleEvent%249491085.body
00028 }

template<class Receiver>
SimpleEvent< Receiver >::SimpleEvent ( Receiver *  r,
Action  a,
std::string  n 
) [inline]

Definition at line 32 of file SimpleEvent.h.

00033 : m_receiver(r), m_action(a), m_name(n){};


Member Function Documentation

template<class Receiver>
void SimpleEvent< Receiver >::execute (  )  [inline, virtual]

Implements ScheduledEvent.

Definition at line 49 of file SimpleEvent.h.

References SimpleEvent< Receiver >::m_action, and SimpleEvent< Receiver >::m_receiver.

00049                                    {
00050 //## begin SimpleEvent::execute%478434479.body preserve=yes
00051         if (m_receiver) (m_receiver->*m_action)();
00052 //## end SimpleEvent::execute%478434479.body
00053 }

template<class Receiver>
virtual std::string SimpleEvent< Receiver >::name (  )  const [inline, virtual]

Reimplemented from ScheduledEvent.

Definition at line 38 of file SimpleEvent.h.

References SimpleEvent< Receiver >::m_name, and ScheduledEvent::name().

00038                                  { 
00039        return !m_name.empty()? m_name : ScheduledEvent::name();}

void ScheduledEvent::schedule ( double  t,
ScheduledEvent next 
) [static, protected, inherited]

Definition at line 8 of file ScheduledEvent.cxx.

References Scheduler::instance(), next, and Scheduler::schedule().

00009 {
00010     Scheduler::instance()->schedule(t, next);
00011 }


Member Data Documentation

template<class Receiver>
Action SimpleEvent< Receiver >::m_action [private]

Definition at line 43 of file SimpleEvent.h.

Referenced by SimpleEvent< Receiver >::execute().

template<class Receiver>
std::string SimpleEvent< Receiver >::m_name [private]

Definition at line 44 of file SimpleEvent.h.

Referenced by SimpleEvent< Receiver >::name().

template<class Receiver>
Receiver* SimpleEvent< Receiver >::m_receiver [private]

Definition at line 42 of file SimpleEvent.h.

Referenced by SimpleEvent< Receiver >::execute().


Generated on Tue Nov 29 23:35:54 2016 for BOSS_7.0.2 by  doxygen 1.4.7