husky_diagnostics.h
Go to the documentation of this file.
1 
32 #ifndef HUSKY_BASE_HUSKY_DIAGNOSTICS_H
33 #define HUSKY_BASE_HUSKY_DIAGNOSTICS_H
34 
35 #include "ros/ros.h"
38 #include "husky_msgs/HuskyStatus.h"
39 
40 namespace husky_base
41 {
42 
45  {
46  public:
47  explicit HuskySoftwareDiagnosticTask(husky_msgs::HuskyStatus &msg, double target_control_freq);
48 
50 
51  void updateControlFrequency(double frequency);
52 
53  private:
54  void reset();
55 
57  husky_msgs::HuskyStatus &msg_;
58  };
59 
60  template<typename T>
63  {
64  public:
65  explicit HuskyHardwareDiagnosticTask(husky_msgs::HuskyStatus &msg);
66 
68  {
70  if (latest)
71  {
72  update(stat, latest);
73  }
74  }
75 
77 
78  private:
79  husky_msgs::HuskyStatus &msg_;
80  };
81 
82  template<>
84 
85  template<>
87 
88  template<>
90  husky_msgs::HuskyStatus &msg);
91 
92  template<>
96 
97  template<>
101 
102  template<>
106 
107 } // namespace husky_base
108 #endif // HUSKY_BASE_HUSKY_DIAGNOSTICS_H
msg
void run(diagnostic_updater::DiagnosticStatusWrapper &stat)
HuskyHardwareDiagnosticTask(husky_msgs::HuskyStatus &msg)
void update(diagnostic_updater::DiagnosticStatusWrapper &stat, typename horizon_legacy::Channel< T >::Ptr &status)
status
void update(controller_manager::ControllerManager &cm, const ros::TimerEvent &e)
void run(diagnostic_updater::DiagnosticStatusWrapper &stat)
static Ptr requestData(double timeout)
HuskySoftwareDiagnosticTask(husky_msgs::HuskyStatus &msg, double target_control_freq)


husky_base
Author(s): Mike Purvis , Paul Bovbel
autogenerated on Fri Oct 2 2020 03:40:07