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;
Forward declarations for transport.
A plugin with access to physics::Model.
Definition Plugin.hh:304
Definition MudPlugin.hh:33
virtual void Init()
Override this method for custom plugin initialization behavior.
virtual void Load(physics::ModelPtr _model, sdf::ElementPtr _sdf)
Load function.
boost::shared_ptr< Connection > ConnectionPtr
Definition CommonTypes.hh:134
boost::shared_ptr< PhysicsEngine > PhysicsEnginePtr
Definition PhysicsTypes.hh:125
boost::shared_ptr< Link > LinkPtr
Definition PhysicsTypes.hh:109
boost::shared_ptr< World > WorldPtr
Definition PhysicsTypes.hh:89
boost::shared_ptr< Model > ModelPtr
Definition PhysicsTypes.hh:93
boost::shared_ptr< Subscriber > SubscriberPtr
Definition TransportTypes.hh:53
boost::shared_ptr< Node > NodePtr
Definition TransportTypes.hh:57
Forward declarations for the common classes.
Definition Animation.hh:27