18 #ifndef _GAZEBO_VACUUM_GRIPPER_PLUGIN_HH_ 19 #define _GAZEBO_VACUUM_GRIPPER_PLUGIN_HH_ 23 #include <gazebo/common/Events.hh> 24 #include <gazebo/common/Plugin.hh> 25 #include <gazebo/msgs/contacts.pb.h> 26 #include <gazebo/physics/PhysicsTypes.hh> 32 class VacuumGripperPluginPrivate;
44 public:
virtual void Load(physics::ModelPtr _model, sdf::ElementPtr _sdf);
47 public:
virtual void Reset();
50 public: std::string Name()
const;
53 public:
bool Enabled()
const;
58 public:
bool Attached()
const;
61 public:
void Enable();
64 public:
void Disable();
67 private:
void OnUpdate();
71 private:
void OnContacts(ConstContactsPtr &_msg);
74 private:
void HandleAttach();
77 private:
void HandleDetach();
81 private:
virtual void Publish()
const;
85 private: std::unique_ptr<VacuumGripperPluginPrivate>
dataPtr;
std::unique_ptr< VacuumGripperPluginPrivate > dataPtr