00001 #include <ros/ros.h> 00002 #include <move_base_msgs/MoveBaseAction.h> 00003 #include <actionlib/client/simple_action_client.h> 00004 #include <geometry_msgs/PoseStamped.h> 00005 #include <nav_msgs/GetMap.h> 00006 00007 #include <actionlib/client/simple_action_client.h> 00008 #include <actionlib/server/simple_action_server.h> 00009 #include <explore_hrl/ExploreAction.h> 00010 #include <explore_hrl/explore.h> 00011 00012 #include <costmap_2d/costmap_2d_ros.h> 00013 #include <costmap_2d/costmap_2d.h> 00014 #include <navfn/navfn_ros.h> 00015 #include <explore_hrl/explore_frontier.h> 00016 #include <explore_hrl/loop_closure.h> 00017 #include <visualization_msgs/MarkerArray.h> 00018 #include <vector> 00019 #include <string> 00020 #include <boost/thread/mutex.hpp> 00021 00022 using namespace explore_hrl; 00023 00024 namespace explore { 00025 00026 class ExploreAction { 00027 public: 00028 ExploreAction( std::string name ); 00029 virtual ~ExploreAction(); 00030 void executeCB( const explore_hrl::ExploreGoalConstPtr &goal ); 00031 00032 private: 00033 ros::NodeHandle node_; 00034 Explore* e_; 00035 00036 // Action Server additions (follows ExecuteCallbackMethod tutorial): 00037 ros::NodeHandle nh_; 00038 actionlib::SimpleActionServer<explore_hrl::ExploreAction> as_; 00039 std::string action_name_; 00040 00041 }; 00042 00043 }