fesa-core  5.0.1
fesa::Diagnostics Class Reference

Diagnostic infrastructure. More...

#include <Diagnostics.h>

Public Member Functions

 Diagnostics (const FrameworkDiagnostics &frameworkDiagnostics, const UserDiagnosticsCollection &userDiagnosticsCollection)
 Constructor. More...
 
 ~Diagnostics ()
 Destructor.
 
const
DiagnosticsDefs::DiagnosticTopics & 
getTopics (DiagnosticsDefs::Side::Side side, const std::string &fesaClassName="") const
 Get diagnostic topics. More...
 
void log (const std::string &topic, DiagnosticsDefs::DiagnosticMessage &diagMsg, const boost::optional< AbstractDevice * > &device=boost::none)
 Log a diagnostic message. More...
 
void enable (DiagnosticsDefs::Side::Side side, const std::string &topic, const std::string &fesaClassName="") const
 Enable logging for the given topic. More...
 
void disable (DiagnosticsDefs::Side::Side side, const std::string &topic, const std::string &fesaClassName="") const
 Disable logging for the given topic. More...
 

Detailed Description

Diagnostic infrastructure.

Constructor & Destructor Documentation

fesa::Diagnostics::Diagnostics ( const FrameworkDiagnostics frameworkDiagnostics,
const UserDiagnosticsCollection &  userDiagnosticsCollection 
)

Constructor.

Parameters
[in]frameworkDiagnosticsDiagnostics done on the framework side
[in]frameworkDiagnosticsDiagnostics done on the user side

Member Function Documentation

void fesa::Diagnostics::disable ( DiagnosticsDefs::Side::Side  side,
const std::string &  topic,
const std::string &  fesaClassName = "" 
) const

Disable logging for the given topic.

Parameters
[in]sideThe side on which diagnostics are performed, framework or user
[in]topicThe diagnostic topic to disable logging for
[in]fesaClassNameThe name of the FESA class on which diagnostics are performed. This parameter is meaningful only for the user side diagnostics
void fesa::Diagnostics::enable ( DiagnosticsDefs::Side::Side  side,
const std::string &  topic,
const std::string &  fesaClassName = "" 
) const

Enable logging for the given topic.

Parameters
[in]sideThe side on which diagnostics are performed, framework or user
[in]topicThe diagnostic topic to enable logging for
[in]fesaClassNameThe name of the FESA class on which diagnostics are performed. This parameter is meaningful only for the user side diagnostics
const DiagnosticsDefs::DiagnosticTopics & fesa::Diagnostics::getTopics ( DiagnosticsDefs::Side::Side  side,
const std::string &  fesaClassName = "" 
) const

Get diagnostic topics.

Parameters
[in]sideThe side on which diagnostics are performed, framework or user
[in]fesaClassNameThe name of the FESA class on which diagnostics are performed. This parameter is meaningful only for the user side diagnostics
Returns
List of diagnostic topics for the given side
void fesa::Diagnostics::log ( const std::string &  topic,
DiagnosticsDefs::DiagnosticMessage diagMsg,
const boost::optional< AbstractDevice * > &  device = boost::none 
)

Log a diagnostic message.

Parameters
[in]topicThe diagnostic topic which the diagnostic message is concerned with
[in]diagMsgThe diagnostic message to log

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