Commit 16331cee authored by abhagwan's avatar abhagwan
Browse files

Redocumented

parent 8282143c
......@@ -32,12 +32,56 @@ class CIriAnaNavModuleBT
*/
CIriAnaNavModuleBT();
/**
* \brief Register all conditions and actions needed for navigation
*
* This function registers all conditions and actions needed for navigation
* to the factory provided including all input and output ports required
* by actions.
*
* \param factory (IriBehaviorTreeFactory)
*
*/
void init(IriBehaviorTreeFactory &factory);
/**
* \brief Stops the current goal synchronously
*
* This is a auxiliary function in order to provide an easy way to stop the
* robot through the client node if needed.
*
* This function stops the motion of the robot, whatever the type of goal
* that has been given. This function signals the stop to the navigation
* module, but the is_finished_bool() function must be used to know when the
* navigation is actually stopped as it is a synchronous action.
*
*/
void stop();
/**
* \brief Checks if the last goal has finished or not
*
* This is a auxiliary function in order to provide an easy way to check if
* the robot has finished its motion through the client node if needed.
*
* This function must be used to know when the last navigation goal has
* ended in the case of synchronous actions, either successfully or by any
* error. In the case of asynchronous actions it is already called by
* these.
*
* \return a bool indicating whether the last navigation goal has ended
* (True) or not (False), regardless of its success or not.
*
*/
bool is_finished_bool();
/**
* \brief Sets goal sent variables to false
*
* This is a auxiliary function in order to provide an easy way to reset
* the values of goal sent variables through the client node if needed.
*
* It will be needed in case of restart of the same tree or if a new tree
* is created.
*
*/
void init_goal_variables();
/**
......@@ -69,6 +113,7 @@ class CIriAnaNavModuleBT
*
* \return a BT:NodeStatus indicating whether the request has been
* successfull (BT:NodeStatus::SUCCESS) or not (BT:NodeStatus::FAILURE).
* If inputs are missing or incorrect it also returns BT:NodeStatus::FAILURE.
*
*/
BT::NodeStatus sync_go_to_orientation(BT::TreeNode& self);
......@@ -94,6 +139,7 @@ class CIriAnaNavModuleBT
*
* \return a BT:NodeStatus indicating whether the request has been
* successfull (BT:NodeStatus::SUCCESS) or not (BT:NodeStatus::FAILURE).
* If inputs are missing or incorrect it also returns BT:NodeStatus::FAILURE.
*
*/
BT::NodeStatus sync_go_to_position(BT::TreeNode& self);
......@@ -123,6 +169,7 @@ class CIriAnaNavModuleBT
*
* \return a BT:NodeStatus indicating whether the request has been
* successfull (BT:NodeStatus::SUCCESS) or not (BT:NodeStatus::FAILURE).
* If inputs are missing or incorrect it also returns BT:NodeStatus::FAILURE.
*
*/
BT::NodeStatus sync_go_to_pose(BT::TreeNode& self);
......@@ -146,7 +193,8 @@ class CIriAnaNavModuleBT
* \return a BT:NodeStatus indicating whether the request has been
* successfull and the action has finished (BT:NodeStatus::SUCCESS) or the
* request has been unsuccessfull (BT:NodeStatus::FAILURE) or it is still
* in progress (BT:NodeStatus::RUNNING).
* in progress (BT:NodeStatus::RUNNING). If inputs are missing or incorrect
* it also returns BT:NodeStatus::FAILURE.
*
*/
BT::NodeStatus async_go_to_orientation(BT::TreeNode& self);
......@@ -173,7 +221,8 @@ class CIriAnaNavModuleBT
* \return a BT:NodeStatus indicating whether the request has been
* successfull and the action has finished (BT:NodeStatus::SUCCESS) or the
* request has been unsuccessfull (BT:NodeStatus::FAILURE) or it is still
* in progress (BT:NodeStatus::RUNNING).
* in progress (BT:NodeStatus::RUNNING). If inputs are missing or incorrect
* it also returns BT:NodeStatus::FAILURE.
*
*/
BT::NodeStatus async_go_to_position(BT::TreeNode& self);
......@@ -211,16 +260,17 @@ class CIriAnaNavModuleBT
* \return a BT:NodeStatus indicating whether the request has been
* successfull and the action has finished (BT:NodeStatus::SUCCESS) or the
* request has been unsuccessfull (BT:NodeStatus::FAILURE) or it is still
* in progress (BT:NodeStatus::RUNNING).
* in progress (BT:NodeStatus::RUNNING). If inputs are missing or incorrect
* it also returns BT:NodeStatus::FAILURE.
*
*/
BT::NodeStatus async_go_to_pose(BT::TreeNode& self);
// Stop functions
// Stop function
/**
* \brief Stops the current goal synchronously
*
* This functions stops the motion of the robot, whatever the type of goal
* that has been given. This functions signals the stop to the navigation
* This function stops the motion of the robot, whatever the type of goal
* that has been given. This function signals the stop to the navigation
* module, but the is_finished() function must be used to know when the
* navigation is actually stopped as it is a synchronous action.
*
......@@ -406,7 +456,7 @@ class CIriAnaNavModuleBT
/**
* \brief Set the goal reference frame
*
* This functions sets the reference with used for all the position,
* This function sets the reference with used for all the position,
* orientation and pose goals.
*
* \param self node with the required input defined as follows:
......@@ -420,18 +470,18 @@ class CIriAnaNavModuleBT
*/
BT::NodeStatus set_goal_frame(BT::TreeNode& self);
/**
* \brief Get current pose (x,y,theta)
* \brief Get current pose (x,y,yaw)
*
* This function calls get_current_pose of iri_ana_nav_module and converts
* from geometry_msgs::PoseStamped to a structure defined as Pose.
* from geometry_msgs::PoseStamped to 3 outputs (x,y,yaw).
*
* \param self node with the required output defined as follows:
*
* x (double): current X positon with respect to the /map frame.
* current_x (double): current X positon with respect to the /map frame.
*
* y (double): current Y positon with respect to the /map frame.
* current_y (double): current Y positon with respect to the /map frame.
*
* yaw (double): current orientation with respect the /map frame.
* current_yaw (double): current orientation with respect the /map frame.
*
* \return a BT:NodeStatus::SUCCESS always.
*
......@@ -451,7 +501,7 @@ class CIriAnaNavModuleBT
/**
* \brief Clears the costmaps
*
* This functions can be used to clear the navigation costmaps at any time.
* This function can be used to clear the navigation costmaps at any time.
* On success, this function will remove any ghost obstacles that remained
* from previous detections. Calling this function when the auto-clearing
* feature is enabled will have no effect.
......@@ -466,7 +516,7 @@ class CIriAnaNavModuleBT
/**
* \brief Enable the autoclear of the costmaps
*
* This functions enables a periodic clearing of the navigation costmaps at a
* This function enables a periodic clearing of the navigation costmaps at a
* desired rate, which in general should be lower than 1 Hz. When this feature
* is enabled, it will be no longer possible to clear the costmaps manually
* with the costmaps_clear() function.
......@@ -487,14 +537,14 @@ class CIriAnaNavModuleBT
* After disabling this feature, the costmaps_clear() function may be used
* to do so.
*
* \return a BT:NodeStatus::SUCCESS always
* \return a BT:NodeStatus::SUCCESS if input is valid.
*
*/
BT::NodeStatus costmaps_disable_auto_clear();
/**
* \brief Checks the status of the autoclear feature
*
* This functions checks whether the costmaps autoclear feature is enabled
* This function checks whether the costmaps autoclear feature is enabled
* or not.
*
* \return a BT:NodeStatus indicating whether the costmaps autoclear feature
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment