37 #ifndef MOVEIT_COLLISION_DETECTION_WORLD_ 38 #define MOVEIT_COLLISION_DETECTION_WORLD_ 45 #include <boost/function.hpp> 46 #include <Eigen/Geometry> 81 Object(
const std::string&
id) : id_(id)
110 std::vector<std::string> getObjectIds()
const;
113 ObjectConstPtr getObject(
const std::string& object_id)
const;
120 return objects_.begin();
123 const_iterator
end()
const 125 return objects_.end();
130 return objects_.size();
133 const_iterator
find(
const std::string&
id)
const 135 return objects_.find(
id);
139 bool hasObject(
const std::string& object_id)
const;
146 void addToObject(
const std::string& object_id,
const std::vector<shapes::ShapeConstPtr>&
shapes,
153 void addToObject(
const std::string& object_id,
const shapes::ShapeConstPtr& shape,
const Eigen::Isometry3d& pose);
158 const Eigen::Isometry3d& pose);
161 bool moveObject(
const std::string& object_id,
const Eigen::Isometry3d& transform);
175 bool removeObject(
const std::string& object_id);
249 void notify(
const ObjectConstPtr& obj,
Action action);
252 void notifyAll(
Action action);
257 void ensureUnique(ObjectPtr& obj);
261 const Eigen::Isometry3d& pose);
270 Observer(
const ObserverCallbackFn& callback) : callback_(callback)
ObserverCallbackFn callback_
EigenSTL::vector_Isometry3d shape_poses_
The poses of the corresponding entries in shapes_.
std::vector< Observer * > observers_
All registered observers of this world representation.
std::vector< shapes::ShapeConstPtr > shapes_
All the shapes making up this object.
Maintain a representation of the environment.
Represents an action that occurred on an object in the world. Several bits may be set indicating seve...
Object(const std::string &id)
std::map< std::string, ObjectPtr >::const_iterator const_iterator
Generic interface to collision detection.
const_iterator begin() const
const Observer * observer_
EIGEN_MAKE_ALIGNED_OPERATOR_NEW std::string id_
The id for this object.
boost::function< void(const ObjectConstPtr &, Action)> ObserverCallbackFn
MOVEIT_CLASS_FORWARD(Shape)
A representation of an object.
const_iterator end() const
ROS/KDL based interface for the inverse kinematics of the PR2 arm.
ObserverHandle(const Observer *o)
#define MOVEIT_STRUCT_FORWARD(C)
std::map< std::string, ObjectPtr > objects_
Observer(const ObserverCallbackFn &callback)
std::vector< Eigen::Isometry3d, Eigen::aligned_allocator< Eigen::Isometry3d > > vector_Isometry3d
const_iterator find(const std::string &id) const
std::shared_ptr< const Shape > ShapeConstPtr