1 #ifndef CALCULATEGOALSTATE_H 2 #define CALCULATEGOALSTATE_H 10 #include <geometry_msgs/PoseArray.h> 11 #include <rsm_msgs/SetNavigationGoal.h> 12 #include <rsm_msgs/GetRobotPose.h> 133 const geometry_msgs::PoseArray::ConstPtr& failed_goals);
void onExplorationStart(bool &success, std::string &message)
ros::Subscriber _failed_goals_sub
void onInterrupt(int interrupt)
Called when an operation mode interrupt was received.
void onExplorationStop(bool &success, std::string &message)
Called when exploration was stopped manually.
void abortCalculateGoal()
geometry_msgs::PoseArray _failed_goals
bool differentFromFailedGoals(geometry_msgs::Point point)
Checks if a point is different from a previously failed goals including a small tolerance.
void onExit()
Called once when left.
void onEntry()
Called once when activated.
ros::ServiceClient _get_robot_pose_service
bool _failed_goals_received
ros::Subscriber _frontiers_sub
CalculateGoalState()
Constructor.
geometry_msgs::Pose _goal
void onSetup()
Called once when registered at StateInterface.
ros::ServiceClient _set_navigation_goal_service
void timerCallback(const ros::TimerEvent &event)
Callback for when no goal was chosen in time and calculation likely failed.
geometry_msgs::PoseArray _frontier_points
void onActive()
Process method (step-wise, never block this method)
void onWaypointFollowingStart(bool &success, std::string &message)
void onWaypointFollowingStop(bool &success, std::string &message)
~CalculateGoalState()
Destructor.
State for choosing a goal from all provided frontiers and calling Navigation when successful...
void frontiersCallback(const geometry_msgs::PoseArray::ConstPtr &frontiers)
Called when new frontiers are received.
void failedGoalsCallback(const geometry_msgs::PoseArray::ConstPtr &failed_goals)
Called when new failed goals are received.