18 #ifndef _CONTACTMANAGER_HH_ 
   19 #define _CONTACTMANAGER_HH_ 
   25 #include <boost/unordered/unordered_set.hpp> 
   26 #include <boost/unordered/unordered_map.hpp> 
   27 #include <boost/thread/recursive_mutex.hpp> 
   97       public: 
unsigned int GetContactCount() 
const;
 
  103       public: 
Contact *GetContact(
unsigned int _index) 
const;
 
  110       public: 
const std::vector<Contact *> &GetContacts() 
const;
 
  113       public: 
void Clear();
 
  116       public: 
void PublishContacts();
 
  119       public: 
void ResetCount();
 
  126       public: std::string CreateFilter(
const std::string &_topic,
 
  127                   const std::vector<std::string> &_collisions);
 
  134       public: std::string CreateFilter(
const std::string &_topic,
 
  135                   const std::string &_collision);
 
  143       public: std::string CreateFilter(
const std::string &_name,
 
  144                   const std::map<std::string, physics::CollisionPtr>
 
  149       public: 
void RemoveFilter(
const std::string &_name);
 
  153       public: 
unsigned int GetFilterCount();
 
  158       public: 
bool HasFilter(
const std::string &_name);
 
  160       private: std::vector<Contact*> contacts;
 
  162       private: 
unsigned int contactIndex;
 
  175       private: boost::unordered_map<std::string, ContactPublisher *>
 
  176           customContactPublishers;
 
  179       private: boost::recursive_mutex *customMutex;
 
Base class for all collision entities. 
Definition: Collision.hh:44
Forward declarations for transport. 
default namespace for gazebo 
boost::shared_ptr< World > WorldPtr
Definition: PhysicsTypes.hh:78
boost::shared_ptr< Node > NodePtr
Definition: TransportTypes.hh:57
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message. 
boost::shared_ptr< Publisher > PublisherPtr
Definition: TransportTypes.hh:49
#define GAZEBO_VISIBLE
Use to represent "symbol visible" if supported. 
Definition: system.hh:48
A Time class, can be used to hold wall- or sim-time. 
Definition: Time.hh:43