32 #include <hector_nav_msgs/GetRobotTrajectory.h> 54 hector_nav_msgs::GetRobotTrajectory srv_exploration_plan;
57 ROS_INFO(
"Generated exploration path with %u poses", (
unsigned int)srv_exploration_plan.response.trajectory.poses.size());
60 ROS_WARN(
"Service call for exploration service failed");
66 geometry_msgs::Twist twist;
84 int main(
int argc,
char **argv) {
pose_follower::HectorPathFollower path_follower_
ServiceClient serviceClient(const std::string &service_name, bool persistent=false, const M_string &header_values=M_string())
bool setPlan(const std::vector< geometry_msgs::PoseStamped > &global_plan)
void timerCmdVelGeneration(const ros::TimerEvent &e)
void publish(const boost::shared_ptr< M > &message) const
ros::Timer exploration_plan_generation_timer_
ros::Timer cmd_vel_generator_timer_
tf::TransformListener tfl_
SimpleExplorationController()
ROSCPP_DECL void init(int &argc, char **argv, const std::string &name, uint32_t options=0)
bool call(MReq &req, MRes &res)
ROSCPP_DECL void spin(Spinner &spinner)
ros::ServiceClient exploration_plan_service_client_
Timer createTimer(Rate r, Handler h, Obj o, bool oneshot=false, bool autostart=true) const
Publisher advertise(const std::string &topic, uint32_t queue_size, bool latch=false)
void initialize(tf::TransformListener *tf)
bool computeVelocityCommands(geometry_msgs::Twist &cmd_vel)
void timerPlanExploration(const ros::TimerEvent &e)
int main(int argc, char **argv)