00001 // Copyright CERN 2012 - Developed in collaboration with GSI 00002 00003 #ifndef _RT_DIAGNOSTIC_SETTING_H_ 00004 #define _RT_DIAGNOSTIC_SETTING_H_ 00005 00006 #include <fesa-core/RealTime/AbstractRTAction.h> 00007 00008 namespace fesa 00009 { 00010 00016 class RTDiagnosticSetting : public AbstractRTAction 00017 { 00018 public: 00023 RTDiagnosticSetting(RTActionConfig& rtActionConfig, const AbstractServiceLocator* serviceLocator, const std::map<std::string, const AbstractServiceLocator*> serviceLocatorRelatedClasses); 00027 virtual ~RTDiagnosticSetting(); 00032 void execute(RTEvent* event); 00033 // CRFESA-764 why virtual? 00038 virtual void printConfig(FesaStream*); 00043 virtual void printState(FesaStream*, double); 00044 00045 private: 00050 double processStartTS_; 00054 double lastStateTS_; 00059 bool splitProcess_; 00060 }; 00061 00062 } // fesa 00063 00064 #endif // _RT_DIAGNOSTIC_SETTING_H_