$search
00001 #ifndef RCPDF_INTERFACE_CONTACT_HH 00002 # define RCPDF_INTERFACE_CONTACT_HH 00003 # include <string> 00004 # include <boost/shared_ptr.hpp> 00005 00006 # include <ros/ros.h> 00007 # include <urdf_interface/link.h> 00008 # include <urdf_interface/pose.h> 00009 00010 namespace rcpdf_interface 00011 { 00013 typedef ::urdf::Geometry Geometry; 00015 typedef ::urdf::Pose Pose; 00016 00021 class Limit 00022 { 00023 public: 00024 explicit Limit () 00025 : normal_force_(0.) 00026 {} 00027 ~Limit() 00028 {} 00029 00034 double normal_force_; 00035 }; 00036 00044 class Contact 00045 { 00046 public: 00047 explicit Contact() 00048 : name_(), 00049 link_(), 00050 origin_(), 00051 geometry_(), 00052 limit_() 00053 {} 00054 ~Contact() 00055 {} 00056 00061 std::string name_; 00062 00067 std::string link_; 00068 00073 Pose origin_; 00074 00079 boost::shared_ptr<Geometry> geometry_; 00083 boost::shared_ptr<Limit> limit_; 00084 00085 void clear() 00086 { 00087 geometry_.reset(); 00088 } 00089 }; 00090 } // end of namespace rcpdf_interface. 00091 00092 #endif //! RCPDF_INTERFACE_CONTACT_HH