fesa-core  4.0.0
fesa::AbstractRTAction Class Referenceabstract

This class represents a real time action on the system. More...

#include <AbstractRTAction.h>

Inheritance diagram for fesa::AbstractRTAction:
fesa::HasMetrics fesa::RTAction< DeviceType > fesa::RTDiagnosticSetting

Public Member Functions

 AbstractRTAction (RTActionConfig &rtActionConfig, const AbstractServiceLocator *serviceLocator, const std::map< std::string, const AbstractServiceLocator * > &serviceLocatorRelatedClasses)
 Stores the RT action configuration. More...
 
virtual ~AbstractRTAction ()
 destructor
 
void executeAction (RTEvent *event)
 This method will be called by the scheduler when the event arrives. More...
 
virtual void execute (RTEvent *event)=0
 this method contains the logic of the real time action More...
 
- Public Member Functions inherited from fesa::AbstractAction
void sendManualNotification (const MultiplexingContext *muxContext) const
 this method sends a manual notification message in order to notify the properties and devices specified in the message
 
void resetManualNotification () const
 Clears any registered properties/devices for the manual notification.
 
void disableAutomaticNotification ()
 
void enableAutomaticNotification ()
 
bool isAutomaticNotificationDisabled () const
 
- Public Member Functions inherited from fesa::HasMetrics
 HasMetrics (const std::string &componentName)
 

Protected Attributes

std::string logicalEventName_
 name of the logical-event that fires the action
 
std::string concreteEventName_
 name of the concrete-event that fires the action
 
std::string selectionCriterion_
 selection criterion to select devices used for notification
 
std::string eventSourceName_
 event source name (timing, timingSim, timer, user, <custom-name>)
 
std::vector< AbstractDevice * > abstractDeviceCol_
 set of devices to which the real time action has access
 
DiagnosticsDefs::DiagStateCounter completedActionCount_
 number of completed actions
 
uint32_t abortedActionCount_
 number of real time actions aborted
 
- Protected Attributes inherited from fesa::AbstractAction
std::string name_
 name of the action
 
std::string className_
 name of the FESA-class, which controls this action
 
NotificationProducertheNotificationProducer_
 the notification producer is used to send properties' notifications to the server side
 
std::set< std::string > automaticallyNotifiedPropertiesCol_
 list of properties that will be notified automatically, after the action has finished
 

Additional Inherited Members

- Protected Member Functions inherited from fesa::AbstractAction
virtual void registerManualNotification (const std::string aPropertyName, const std::string aDeviceName)
 Adds a property/device pair for the manual notification.
 
- Protected Member Functions inherited from fesa::HasMetrics
template<typename T >
void registerMetric (const std::string &name, T &value)
 
template<typename T >
void registerMetric (const std::string &name, boost::atomic< T > &value)
 

Detailed Description

This class represents a real time action on the system.

Real time actions are fired by an event source to carry out operations in the devices

Constructor & Destructor Documentation

fesa::AbstractRTAction::AbstractRTAction ( RTActionConfig rtActionConfig,
const AbstractServiceLocator *  serviceLocator,
const std::map< std::string, const AbstractServiceLocator * > &  serviceLocatorRelatedClasses 
)

Stores the RT action configuration.

Parameters
rtActionConfigstructure that contains all the necessary parameters to configure a real time action

Member Function Documentation

virtual void fesa::AbstractRTAction::execute ( RTEvent event)
pure virtual

this method contains the logic of the real time action

Parameters
eventthat triggers the execution

Implemented in fesa::RTDiagnosticSetting.

void fesa::AbstractRTAction::executeAction ( RTEvent event)

This method will be called by the scheduler when the event arrives.

Parameters
eventthat triggers the execution

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