10 #ifndef _TARGET_PLUGIN_HH_ 11 #define _TARGET_PLUGIN_HH_ 14 #include "gazebo/common/Plugin.hh" 15 #include <gazebo/msgs/msgs.hh> 16 #include <gazebo/physics/physics.hh> 17 #include <gazebo/transport/transport.hh> 20 #include "target_request.pb.h" 21 #include "target_response.pb.h" 28 #define REQUEST_TOPIC "~/grasp/target" 29 #define RESPONSE_TOPIC "~/grasp/target/response" 33 #define REQ_GET_POSE grasp::msgs::TargetRequest::GET_POSE 34 #define REQ_SET_POSE grasp::msgs::TargetRequest::SET_POSE 36 #define REQ_GET_REST_POSE grasp::msgs::TargetRequest::GET_REST_POSE 38 #define REQ_RESET grasp::msgs::TargetRequest::RESET 40 #define RES_POSE grasp::msgs::TargetResponse::POSE 42 #define RES_REST_POSE grasp::msgs::TargetResponse::REST_POSE 46 #define LIN_VEL_EPSILON 0.000001 47 #define ANG_VEL_EPSILON 0.00001 56 typedef const boost::shared_ptr<const grasp::msgs::TargetRequest>
61 typedef const boost::shared_ptr<const grasp::msgs::TargetResponse>
73 private: std::unique_ptr<TargetPluginPrivate>
data_ptr;
75 private: physics::ModelPtr
model;
82 private:
bool get_pose {
false};
84 private:
bool set_pose {
false};
86 private:
bool update_rest_pose {
false};
88 private:
bool reset {
false};
105 public:
virtual void Load(physics::ModelPtr _model, sdf::ElementPtr _sdf);
108 public:
void onUpdate();
111 public:
void onReset();
Definition: ContactSensorPlugin.cc:12
ignition::math::Pose3d new_pose
New pose.
Definition: TargetPlugin.hh:92
event::ConnectionPtr update_connection
Connection to world update event.
Definition: TargetPlugin.hh:77
Class for private Target plugin data.
Definition: TargetPlugin.cc:16
event::ConnectionPtr reset_connection
Connection to world reset event.
Definition: TargetPlugin.hh:79
grasp::msgs::TargetResponse TargetResponse
Declaration for response message type.
Definition: TargetPlugin.hh:59
std::unique_ptr< TargetPluginPrivate > data_ptr
Class with private attributes.
Definition: TargetPlugin.hh:73
grasp::msgs::TargetRequest TargetRequest
Declaration for request message type.
Definition: TargetPlugin.hh:54
physics::ModelPtr model
Model to which the plugin is attached.
Definition: TargetPlugin.hh:75
const boost::shared_ptr< const grasp::msgs::TargetResponse > TargetResponsePtr
Shared pointer declaration for response message type.
Definition: TargetPlugin.hh:62
ignition::math::Pose3d init_pose
Initial pose.
Definition: TargetPlugin.hh:90
const boost::shared_ptr< const grasp::msgs::TargetRequest > TargetRequestPtr
Shared pointer declaration for request message type.
Definition: TargetPlugin.hh:57
Definition: TargetPlugin.hh:23