17 #ifndef GAZEBO_PLUGINS_MUDPLUGIN_HH_
18 #define GAZEBO_PLUGINS_MUDPLUGIN_HH_
23 #include <ignition/transport/Node.hh>
26 #include "gazebo/physics/physics.hh"
41 public:
virtual void Init();
45 private:
void OnContact(ConstContactsPtr &_msg);
48 private:
void OnUpdate();
69 private: std::string modelName;
76 private: std::string contactSensorName;
79 private:
mutable std::mutex mutex;
82 private: msgs::Contacts newestContactsMsg;
88 private:
unsigned int newMsgWait;
92 private:
double stiffness;
96 private:
double damping;
99 private: std::vector<std::string> allowedLinks;
102 private: std::vector<physics::LinkPtr> links;
105 private: std::vector<physics::JointPtr> joints;
108 private:
unsigned int contactSurfaceBitmask;
111 private: sdf::ElementPtr sdf;
118 private: ignition::transport::Node nodeIgn;
121 #endif // ifndef _MUD_PLUGIN_HH_
boost::shared_ptr< Link > LinkPtr
Definition: PhysicsTypes.hh:109
boost::shared_ptr< World > WorldPtr
Definition: PhysicsTypes.hh:89
Forward declarations for transport.
boost::shared_ptr< Subscriber > SubscriberPtr
Definition: TransportTypes.hh:53
boost::shared_ptr< Node > NodePtr
Definition: TransportTypes.hh:57
boost::shared_ptr< PhysicsEngine > PhysicsEnginePtr
Definition: PhysicsTypes.hh:125
Definition: MudPlugin.hh:32
boost::shared_ptr< Connection > ConnectionPtr
Definition: CommonTypes.hh:134
boost::shared_ptr< Model > ModelPtr
Definition: PhysicsTypes.hh:93
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
A plugin with access to physics::Model.
Definition: Plugin.hh:260
#define GAZEBO_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system.hh:59