Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
mbf_abstract_nav::MoveBaseAction Class Reference

#include <move_base_action.h>

Public Types

typedef actionlib::SimpleActionClient< mbf_msgs::ExePathAction > ActionClientExePath
 
typedef actionlib::SimpleActionClient< mbf_msgs::GetPathAction > ActionClientGetPath
 Action clients for the MoveBase action. More...
 
typedef actionlib::SimpleActionClient< mbf_msgs::RecoveryAction > ActionClientRecovery
 
typedef actionlib::ActionServer< mbf_msgs::MoveBaseAction >::GoalHandle GoalHandle
 

Public Member Functions

void cancel ()
 
 MoveBaseAction (const std::string &name, const mbf_utility::RobotInformation &robot_info, const std::vector< std::string > &controllers)
 
void reconfigure (mbf_abstract_nav::MoveBaseFlexConfig &config, uint32_t level)
 
void start (GoalHandle &goal_handle)
 
 ~MoveBaseAction ()
 

Protected Types

enum  MoveBaseActionState {
  NONE, GET_PATH, EXE_PATH, RECOVERY,
  OSCILLATING, SUCCEEDED, CANCELED, FAILED
}
 

Protected Member Functions

void actionExePathActive ()
 
void actionExePathDone (const actionlib::SimpleClientGoalState &state, const mbf_msgs::ExePathResultConstPtr &result)
 
void actionExePathFeedback (const mbf_msgs::ExePathFeedbackConstPtr &feedback)
 
void actionGetPathDone (const actionlib::SimpleClientGoalState &state, const mbf_msgs::GetPathResultConstPtr &result)
 
void actionGetPathReplanningDone (const actionlib::SimpleClientGoalState &state, const mbf_msgs::GetPathResultConstPtr &result)
 
void actionRecoveryDone (const actionlib::SimpleClientGoalState &state, const mbf_msgs::RecoveryResultConstPtr &result)
 
bool attemptRecovery ()
 
template<typename ResultType >
void fillMoveBaseResult (const ResultType &result, mbf_msgs::MoveBaseResult &move_base_result)
 

Protected Attributes

ActionClientExePath action_client_exe_path_
 Action client used by the move_base action. More...
 
ActionClientGetPath action_client_get_path_
 Action client used by the move_base action. More...
 
ActionClientRecovery action_client_recovery_
 Action client used by the move_base action. More...
 
MoveBaseActionState action_state_
 
const std::vector< std::string > & behaviors_
 
std::vector< std::string >::iterator current_recovery_behavior_
 
mbf_msgs::ExePathGoal exe_path_goal_
 
mbf_msgs::GetPathGoal get_path_goal_
 
GoalHandle goal_handle_
 
geometry_msgs::PoseStamped goal_pose_
 current goal pose; used to compute remaining distance and angle More...
 
geometry_msgs::PoseStamped last_oscillation_pose_
 
ros::Time last_oscillation_reset_
 
std::string name_
 
double oscillation_distance_
 minimal move distance to not detect an oscillation More...
 
ros::Duration oscillation_timeout_
 timeout after a oscillation is detected More...
 
ros::NodeHandle private_nh_
 
std::vector< std::string > recovery_behaviors_
 
bool recovery_enabled_
 true, if recovery behavior for the MoveBase action is enabled. More...
 
mbf_msgs::RecoveryGoal recovery_goal_
 
MoveBaseActionState recovery_trigger_
 
bool replanning_
 
boost::mutex replanning_mtx_
 
ros::Rate replanning_rate_
 
const mbf_utility::RobotInformationrobot_info_
 current robot state More...
 
geometry_msgs::PoseStamped robot_pose_
 current robot pose; updated with exe_path action feedback More...
 

Detailed Description

Definition at line 59 of file move_base_action.h.

Member Typedef Documentation

Definition at line 65 of file move_base_action.h.

Action clients for the MoveBase action.

Definition at line 64 of file move_base_action.h.

Definition at line 66 of file move_base_action.h.

Definition at line 68 of file move_base_action.h.

Member Enumeration Documentation

Enumerator
NONE 
GET_PATH 
EXE_PATH 
RECOVERY 
OSCILLATING 
SUCCEEDED 
CANCELED 
FAILED 

Definition at line 174 of file move_base_action.h.

Constructor & Destructor Documentation

mbf_abstract_nav::MoveBaseAction::MoveBaseAction ( const std::string &  name,
const mbf_utility::RobotInformation robot_info,
const std::vector< std::string > &  controllers 
)

Definition at line 49 of file move_base_action.cpp.

mbf_abstract_nav::MoveBaseAction::~MoveBaseAction ( )

Definition at line 67 of file move_base_action.cpp.

Member Function Documentation

void mbf_abstract_nav::MoveBaseAction::actionExePathActive ( )
protected

Definition at line 181 of file move_base_action.cpp.

void mbf_abstract_nav::MoveBaseAction::actionExePathDone ( const actionlib::SimpleClientGoalState state,
const mbf_msgs::ExePathResultConstPtr &  result 
)
protected

Definition at line 350 of file move_base_action.cpp.

void mbf_abstract_nav::MoveBaseAction::actionExePathFeedback ( const mbf_msgs::ExePathFeedbackConstPtr &  feedback)
protected

Definition at line 186 of file move_base_action.cpp.

void mbf_abstract_nav::MoveBaseAction::actionGetPathDone ( const actionlib::SimpleClientGoalState state,
const mbf_msgs::GetPathResultConstPtr &  result 
)
protected

Definition at line 244 of file move_base_action.cpp.

void mbf_abstract_nav::MoveBaseAction::actionGetPathReplanningDone ( const actionlib::SimpleClientGoalState state,
const mbf_msgs::GetPathResultConstPtr &  result 
)
protected

Definition at line 547 of file move_base_action.cpp.

void mbf_abstract_nav::MoveBaseAction::actionRecoveryDone ( const actionlib::SimpleClientGoalState state,
const mbf_msgs::RecoveryResultConstPtr &  result 
)
protected

Definition at line 467 of file move_base_action.cpp.

bool mbf_abstract_nav::MoveBaseAction::attemptRecovery ( )
protected

Definition at line 435 of file move_base_action.cpp.

void mbf_abstract_nav::MoveBaseAction::cancel ( )

Definition at line 102 of file move_base_action.cpp.

template<typename ResultType >
void mbf_abstract_nav::MoveBaseAction::fillMoveBaseResult ( const ResultType &  result,
mbf_msgs::MoveBaseResult &  move_base_result 
)
inlineprotected

Utility method that fills move base action result with the result of any of the action clients.

Template Parameters
ResultType
Parameters
result
move_base_result

Definition at line 114 of file move_base_action.h.

void mbf_abstract_nav::MoveBaseAction::reconfigure ( mbf_abstract_nav::MoveBaseFlexConfig &  config,
uint32_t  level 
)

Definition at line 71 of file move_base_action.cpp.

void mbf_abstract_nav::MoveBaseAction::start ( GoalHandle goal_handle)

Definition at line 122 of file move_base_action.cpp.

Member Data Documentation

ActionClientExePath mbf_abstract_nav::MoveBaseAction::action_client_exe_path_
protected

Action client used by the move_base action.

Definition at line 153 of file move_base_action.h.

ActionClientGetPath mbf_abstract_nav::MoveBaseAction::action_client_get_path_
protected

Action client used by the move_base action.

Definition at line 156 of file move_base_action.h.

ActionClientRecovery mbf_abstract_nav::MoveBaseAction::action_client_recovery_
protected

Action client used by the move_base action.

Definition at line 159 of file move_base_action.h.

MoveBaseActionState mbf_abstract_nav::MoveBaseAction::action_state_
protected

Definition at line 186 of file move_base_action.h.

const std::vector<std::string>& mbf_abstract_nav::MoveBaseAction::behaviors_
protected

Definition at line 172 of file move_base_action.h.

std::vector<std::string>::iterator mbf_abstract_nav::MoveBaseAction::current_recovery_behavior_
protected

Definition at line 170 of file move_base_action.h.

mbf_msgs::ExePathGoal mbf_abstract_nav::MoveBaseAction::exe_path_goal_
protected

Definition at line 124 of file move_base_action.h.

mbf_msgs::GetPathGoal mbf_abstract_nav::MoveBaseAction::get_path_goal_
protected

Definition at line 125 of file move_base_action.h.

GoalHandle mbf_abstract_nav::MoveBaseAction::goal_handle_
protected

Definition at line 137 of file move_base_action.h.

geometry_msgs::PoseStamped mbf_abstract_nav::MoveBaseAction::goal_pose_
protected

current goal pose; used to compute remaining distance and angle

Definition at line 148 of file move_base_action.h.

geometry_msgs::PoseStamped mbf_abstract_nav::MoveBaseAction::last_oscillation_pose_
protected

Definition at line 128 of file move_base_action.h.

ros::Time mbf_abstract_nav::MoveBaseAction::last_oscillation_reset_
protected

Definition at line 129 of file move_base_action.h.

std::string mbf_abstract_nav::MoveBaseAction::name_
protected

Definition at line 139 of file move_base_action.h.

double mbf_abstract_nav::MoveBaseAction::oscillation_distance_
protected

minimal move distance to not detect an oscillation

Definition at line 135 of file move_base_action.h.

ros::Duration mbf_abstract_nav::MoveBaseAction::oscillation_timeout_
protected

timeout after a oscillation is detected

Definition at line 132 of file move_base_action.h.

ros::NodeHandle mbf_abstract_nav::MoveBaseAction::private_nh_
protected

Definition at line 150 of file move_base_action.h.

std::vector<std::string> mbf_abstract_nav::MoveBaseAction::recovery_behaviors_
protected

Definition at line 168 of file move_base_action.h.

bool mbf_abstract_nav::MoveBaseAction::recovery_enabled_
protected

true, if recovery behavior for the MoveBase action is enabled.

Definition at line 166 of file move_base_action.h.

mbf_msgs::RecoveryGoal mbf_abstract_nav::MoveBaseAction::recovery_goal_
protected

Definition at line 126 of file move_base_action.h.

MoveBaseActionState mbf_abstract_nav::MoveBaseAction::recovery_trigger_
protected

Definition at line 187 of file move_base_action.h.

bool mbf_abstract_nav::MoveBaseAction::replanning_
protected

Definition at line 161 of file move_base_action.h.

boost::mutex mbf_abstract_nav::MoveBaseAction::replanning_mtx_
protected

Definition at line 163 of file move_base_action.h.

ros::Rate mbf_abstract_nav::MoveBaseAction::replanning_rate_
protected

Definition at line 162 of file move_base_action.h.

const mbf_utility::RobotInformation& mbf_abstract_nav::MoveBaseAction::robot_info_
protected

current robot state

Definition at line 142 of file move_base_action.h.

geometry_msgs::PoseStamped mbf_abstract_nav::MoveBaseAction::robot_pose_
protected

current robot pose; updated with exe_path action feedback

Definition at line 145 of file move_base_action.h.


The documentation for this class was generated from the following files:


mbf_abstract_nav
Author(s): Sebastian Pütz
autogenerated on Fri Nov 6 2020 03:56:24