hebiros_gazebo_group.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "ros/ros.h"
4 #include "std_srvs/Empty.h"
5 #include "hebiros/FeedbackMsg.h"
6 #include "hebiros/CommandMsg.h"
7 #include "hebiros/SettingsMsg.h"
8 #include "hebiros/SetCommandLifetimeSrv.h"
9 #include "hebiros/SetFeedbackFrequencySrv.h"
10 #include "hebiros_gazebo_joint.h"
11 
12 using namespace hebiros;
13 
14 class HebirosGazeboGroup : public std::enable_shared_from_this<HebirosGazeboGroup> {
15 
16 public:
17 
18  // TODO: Make these private.
19  std::string name;
20  std::map<std::string, std::shared_ptr<HebirosGazeboJoint>> joints;
21  FeedbackMsg feedback;
22  CommandMsg command_target;
23  SettingsMsg settings;
24  bool check_acknowledgement = false;
25  bool acknowledgement = false;
26  bool command_received = false;
27  bool group_added = false;
28  int command_lifetime = 100;
29  int feedback_frequency = 100;
30 
34 
40 
41  HebirosGazeboGroup(std::string name, std::shared_ptr<ros::NodeHandle> n);
42 
43  void SubCommand(const boost::shared_ptr<CommandMsg const> data);
44  bool SrvAcknowledge(std_srvs::Empty::Request &req, std_srvs::Empty::Response &res);
45  bool SrvSetCommandLifetime(SetCommandLifetimeSrv::Request &req, SetCommandLifetimeSrv::Response &res);
46  bool SrvSetFeedbackFrequency(SetFeedbackFrequencySrv::Request &req, SetFeedbackFrequencySrv::Response &res);
47 
48 };
ros::ServiceServer feedback_frequency_srv
std::map< std::string, std::shared_ptr< HebirosGazeboJoint > > joints
ros::Publisher feedback_pub
ros::ServiceServer command_lifetime_srv
ros::ServiceServer acknowledge_srv
ros::Subscriber command_sub


hebiros_gazebo_plugin
Author(s): Xavier Artache , Matthew Tesch
autogenerated on Thu Sep 3 2020 04:13:55