22 #ifndef GAZEBO_ROS_MOVEIT_PLANNING_SCENE_H 23 #define GAZEBO_ROS_MOVEIT_PLANNING_SCENE_H 30 #include <geometry_msgs/Pose.h> 33 #include <boost/thread.hpp> 34 #include <boost/thread/mutex.hpp> 36 #include <gazebo/physics/physics.hh> 37 #include <gazebo/transport/TransportTypes.hh> 38 #include <gazebo/common/Plugin.hh> 39 #include <gazebo/common/Events.hh> 41 #include <std_srvs/Empty.h> 42 #include <moveit_msgs/PlanningScene.h> 100 protected:
void Load(physics::ModelPtr _model, sdf::ElementPtr _sdf);
109 std_srvs::Empty::Request& req,
110 std_srvs::Empty::Response& resp);
122 private: boost::scoped_ptr<ros::NodeHandle>
rosnode_;
ros::Time last_publish_time_
ros::CallbackQueue queue_
bool PublishPlanningSceneCB(std_srvs::Empty::Request &req, std_srvs::Empty::Response &resp)
publish the complete planning scene
ros::Publisher planning_scene_pub_
event::ConnectionPtr update_connection_
moveit_msgs::PlanningScene planning_scene_msg_
Container for the planning scene.
event::ConnectionPtr delete_connection_
boost::mutex mutex_
A mutex to lock access to fields that are used in ROS message callbacks.
physics::WorldPtr world_
A pointer to the gazebo world.
std::string robot_namespace_
for setting ROS name space
std::string scene_name_
The MoveIt scene name.
std::string topic_name_
ROS topic name inputs.
physics::ModelPtr model_
A pointer to the Model of the robot doing the planning.
void QueueThread()
The custom callback queue thread function.
boost::scoped_ptr< ros::NodeHandle > rosnode_
A pointer to the ROS node. A node will be instantiated if it does not exist.
std::map< std::string, moveit_msgs::CollisionObject > collision_object_map_
ros::ServiceServer publish_planning_scene_service_
void subscriber_connected()
void Load(physics::ModelPtr _model, sdf::ElementPtr _sdf)
GazeboRosMoveItPlanningScene()
Constructor.
event::ConnectionPtr add_connection_
virtual ~GazeboRosMoveItPlanningScene()
Destructor.
ros::Duration publish_period_
boost::thread callback_queue_thread_
Thead object for the running callback Thread.