21 #ifndef _GAZEBO_SIDE_CONTACT_PLUGIN_HH_    22 #define _GAZEBO_SIDE_CONTACT_PLUGIN_HH_    24 #include <gazebo/common/Plugin.hh>    25 #include <gazebo/common/UpdateInfo.hh>    26 #include <gazebo/sensors/sensors.hh>    27 #include <gazebo/transport/Node.hh>    28 #include <gazebo/transport/Publisher.hh>    29 #include <gazebo/util/system.hh>    46     public: 
virtual void Load(physics::ModelPtr _model, sdf::ElementPtr _sdf);
    49     protected: 
virtual void OnContactsReceived(ConstContactsPtr& _msg);
    53     protected: 
virtual void OnUpdate(
const common::UpdateInfo &_info);
    72     protected: physics::WorldPtr 
world;
    75     protected: physics::ModelPtr 
model;
    78     protected: transport::NodePtr 
node;
    87     protected: 
mutable boost::mutex 
mutex;
   106     protected: 
bool FindContactSensor();
   109     protected: 
virtual void CalculateContactingLinks();
   112     protected: 
virtual void CalculateContactingModels();