roch_diagnostics.h
Go to the documentation of this file.
1 
33 #ifndef roch_BASE_roch_DIAGNOSTICS_H
34 #define roch_BASE_roch_DIAGNOSTICS_H
35 
36 #include "ros/ros.h"
38 #include "roch_base/core_wrapper.h"
39 #include "roch_msgs/RochStatus.h"
40 
41 namespace roch_base
42 {
43 
46  {
47  public:
48  explicit rochSoftwareDiagnosticTask(roch_msgs::RochStatus &msg, double target_control_freq);
49 
51 
52  void updateControlFrequency(double frequency);
53 
54  private:
55  void reset();
56 
58  roch_msgs::RochStatus &msg_;
59  };
60 
61  template<typename T>
64  {
65  public:
66  explicit rochHardwareDiagnosticTask(roch_msgs::RochStatus &msg);
67 
69  {
71  if (latest)
72  {
73  update(stat, latest);
74  }
75  }
76 
78 
79  private:
80  roch_msgs::RochStatus &msg_;
81  };
82 
83  template<>
85 
86  template<>
88 
89  template<>
91  roch_msgs::RochStatus &msg);
92 
93  template<>
97 
98  template<>
102 
103  template<>
107 
108 } // namespace roch_base
109 #endif // roch_BASE_roch_DIAGNOSTICS_H
msg
void update(diagnostic_updater::DiagnosticStatusWrapper &stat, typename core::Channel< T >::Ptr &status)
void updateControlFrequency(double frequency)
rochSoftwareDiagnosticTask(roch_msgs::RochStatus &msg, double target_control_freq)
rochHardwareDiagnosticTask(roch_msgs::RochStatus &msg)
status
void run(diagnostic_updater::DiagnosticStatusWrapper &stat)
void update(controller_manager::ControllerManager &cm, const ros::TimerEvent &e)
void run(diagnostic_updater::DiagnosticStatusWrapper &stat)
static Ptr requestData(double timeout)
Definition: core_wrapper.h:98


roch_base
Author(s): Mike Purvis , Paul Bovbel , Chen
autogenerated on Mon Jun 10 2019 14:41:14