Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes
diagnostic_aggregator::GenericAnalyzerBase Class Reference

GenericAnalyzerBase is the base class for GenericAnalyzer and OtherAnalyzer. More...

#include <generic_analyzer_base.h>

Inheritance diagram for diagnostic_aggregator::GenericAnalyzerBase:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual bool analyze (const boost::shared_ptr< StatusItem > item)
 Update state with new StatusItem.
 GenericAnalyzerBase ()
virtual std::string getName () const
 Returns nice name (ex: "Power System")
virtual std::string getPath () const
 Returns full prefix (ex: "/Robot/Power System")
bool init (const std::string path, const ros::NodeHandle &n)=0
 Analyzer is initialized with base path and namespace.
bool init (const std::string path, const std::string nice_name, double timeout=-1.0, int num_items_expected=-1, bool discard_stale=false)
virtual bool match (const std::string name)=0
 Match function isn't implemented by GenericAnalyzerBase.
virtual std::vector
< boost::shared_ptr
< diagnostic_msgs::DiagnosticStatus > > 
report ()
 Reports current state, returns vector of formatted status messages.
virtual ~GenericAnalyzerBase ()

Protected Member Functions

void addItem (std::string name, boost::shared_ptr< StatusItem > item)
 Subclasses can add items to analyze.

Protected Attributes

std::string nice_name_
int num_items_expected_
std::string path_
double timeout_

Private Attributes

bool discard_stale_
bool has_initialized_
bool has_warned_
std::map< std::string,
boost::shared_ptr< StatusItem > > 
items_
 Stores items by name. State of analyzer.
int last_header_level_
ros::Time last_header_status_change_

Detailed Description

GenericAnalyzerBase is the base class for GenericAnalyzer and OtherAnalyzer.

GenericAnalyzerBase contains the getPath(), getName(), analyze() and report() functions of the Generic and Other Analyzers. It is a virtual class, and cannot be instantiated or loaded as a plugin. Subclasses are responsible for implementing the init() and match() functions.

The GenericAnalyzerBase holds the state of the analyzer, and tracks if items are stale, and if the user has the correct number of items.

Definition at line 65 of file generic_analyzer_base.h.


Constructor & Destructor Documentation

Definition at line 68 of file generic_analyzer_base.h.

Definition at line 73 of file generic_analyzer_base.h.


Member Function Documentation

void diagnostic_aggregator::GenericAnalyzerBase::addItem ( std::string  name,
boost::shared_ptr< StatusItem item 
) [inline, protected]

Subclasses can add items to analyze.

Definition at line 265 of file generic_analyzer_base.h.

virtual bool diagnostic_aggregator::GenericAnalyzerBase::analyze ( const boost::shared_ptr< StatusItem item) [inline, virtual]

Update state with new StatusItem.

Implements diagnostic_aggregator::Analyzer.

Definition at line 110 of file generic_analyzer_base.h.

virtual std::string diagnostic_aggregator::GenericAnalyzerBase::getName ( ) const [inline, virtual]

Returns nice name (ex: "Power System")

Implements diagnostic_aggregator::Analyzer.

Definition at line 253 of file generic_analyzer_base.h.

virtual std::string diagnostic_aggregator::GenericAnalyzerBase::getPath ( ) const [inline, virtual]

Returns full prefix (ex: "/Robot/Power System")

Implements diagnostic_aggregator::Analyzer.

Definition at line 248 of file generic_analyzer_base.h.

bool diagnostic_aggregator::GenericAnalyzerBase::init ( const std::string  base_path,
const ros::NodeHandle n 
) [pure virtual]

Analyzer is initialized with base path and namespace.

The Analyzer initialized with parameters in its given namespace. The "base_path" is common to all analyzers, and needs to be prepended to all DiagnosticStatus names.

Parameters:
base_path: Common to all analyzers, prepended to all processed names. Starts with "/".
n: NodeHandle with proper private namespace for analyzer.

Implements diagnostic_aggregator::Analyzer.

Implemented in diagnostic_aggregator::GenericAnalyzer, and diagnostic_aggregator::OtherAnalyzer.

bool diagnostic_aggregator::GenericAnalyzerBase::init ( const std::string  path,
const std::string  nice_name,
double  timeout = -1.0,
int  num_items_expected = -1,
bool  discard_stale = false 
) [inline]

Definition at line 85 of file generic_analyzer_base.h.

virtual bool diagnostic_aggregator::GenericAnalyzerBase::match ( const std::string  name) [pure virtual]
virtual std::vector<boost::shared_ptr<diagnostic_msgs::DiagnosticStatus> > diagnostic_aggregator::GenericAnalyzerBase::report ( ) [inline, virtual]

Reports current state, returns vector of formatted status messages.

Returns:
Vector of DiagnosticStatus messages. They must have the correct prefix for all names.

Implements diagnostic_aggregator::Analyzer.

Reimplemented in diagnostic_aggregator::GenericAnalyzer, diagnostic_aggregator::OtherAnalyzer, and diagnostic_aggregator::DiscardAnalyzer.

Definition at line 131 of file generic_analyzer_base.h.


Member Data Documentation

Definition at line 273 of file generic_analyzer_base.h.

Definition at line 273 of file generic_analyzer_base.h.

Definition at line 273 of file generic_analyzer_base.h.

std::map<std::string, boost::shared_ptr<StatusItem> > diagnostic_aggregator::GenericAnalyzerBase::items_ [private]

Stores items by name. State of analyzer.

Definition at line 271 of file generic_analyzer_base.h.

Definition at line 275 of file generic_analyzer_base.h.

Definition at line 274 of file generic_analyzer_base.h.

Definition at line 256 of file generic_analyzer_base.h.

Definition at line 260 of file generic_analyzer_base.h.

Definition at line 257 of file generic_analyzer_base.h.

Definition at line 259 of file generic_analyzer_base.h.


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


diagnostic_aggregator
Author(s): Kevin Watts, Brice Rebsamen
autogenerated on Tue Mar 26 2019 03:09:37