fesa-core  5.0.1
fesa::LogicalEvent Class Referenceabstract

Abstract base-class for the LogicalEvent. More...

#include <LogicalEvent.h>

Inheritance diagram for fesa::LogicalEvent:
fesa::LogicalEventImpl

Public Member Functions

virtual ~LogicalEvent ()
 We need to define a virtual destructor to prevent a compiler-warning.
 
virtual void enable ()=0
 Enables this logical event.
 
virtual void disable ()=0
 Disables this logical event (It will not trigger any RT-Actions any more)
 
virtual bool isEnabled () const =0
 Check the enable-state of this logical-event. More...
 
virtual std::string getName () const =0
 Return the name of this logical-event. More...
 
virtual uint32_t getID () const =0
 Return the unique ID of this logical-event. More...
 
virtual void addScheduler (RTScheduler *scheduler)=0
 Adds a scheduler to this logical-event. Whenever a RTEvent is posted to this logical-event, the RTEvent will be forwarded to all registered schedulers. More...
 
virtual void postEventToSchedulers (boost::shared_ptr< RTEvent > &event, AtomicSizeTPtr &nSchedulers) const =0
 This method will post the given RTEvent to all schedulers which have registered to this logical-event. More...
 
virtual bool operator== (const LogicalEvent &rhs) const =0
 Compares two logical-events by the use of the unique id. More...
 
virtual bool operator!= (const LogicalEvent &rhs) const =0
 Compares two logical-events by the use of the unique id. More...
 

Detailed Description

Abstract base-class for the LogicalEvent.

Member Function Documentation

virtual void fesa::LogicalEvent::addScheduler ( RTScheduler scheduler)
pure virtual

Adds a scheduler to this logical-event. Whenever a RTEvent is posted to this logical-event, the RTEvent will be forwarded to all registered schedulers.

Parameters
schedulerThe scheduler to register

Implemented in fesa::LogicalEventImpl.

virtual uint32_t fesa::LogicalEvent::getID ( ) const
pure virtual

Return the unique ID of this logical-event.

Returns
unique ID of this logical-event

Implemented in fesa::LogicalEventImpl.

virtual std::string fesa::LogicalEvent::getName ( ) const
pure virtual

Return the name of this logical-event.

Returns
name of this logical-event

Implemented in fesa::LogicalEventImpl.

virtual bool fesa::LogicalEvent::isEnabled ( ) const
pure virtual

Check the enable-state of this logical-event.

Returns
enable-state of this logical event

Implemented in fesa::LogicalEventImpl.

virtual bool fesa::LogicalEvent::operator!= ( const LogicalEvent rhs) const
pure virtual

Compares two logical-events by the use of the unique id.

Parameters
rhsThe rightHandSide, the object after the !=
Returns
true, if the objects differ from each other

Implemented in fesa::LogicalEventImpl.

virtual bool fesa::LogicalEvent::operator== ( const LogicalEvent rhs) const
pure virtual

Compares two logical-events by the use of the unique id.

Parameters
rhsThe rightHandSide, the object after the ==
Returns
true, if the objects are equal

Implemented in fesa::LogicalEventImpl.

virtual void fesa::LogicalEvent::postEventToSchedulers ( boost::shared_ptr< RTEvent > &  event,
AtomicSizeTPtr &  nSchedulers 
) const
pure virtual

This method will post the given RTEvent to all schedulers which have registered to this logical-event.

Parameters
eventThe RTEvent to fire
nSchedulersinitial number of schedulers scheduling this event, assuming one scheduler per logical-event; to be adjusted if needed.

Implemented in fesa::LogicalEventImpl.


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