Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
DarwinAutochargeAlgNode Class Reference

IRI ROS Specific Algorithm Class. More...

#include <darwin_autocharge_alg_node.h>

Inheritance diagram for DarwinAutochargeAlgNode:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 DarwinAutochargeAlgNode (void)
 Constructor.
 ~DarwinAutochargeAlgNode (void)
 Destructor.

Protected Member Functions

void addNodeDiagnostics (void)
 node add diagnostics
void mainNodeThread (void)
 main node thread
void node_config_update (Config &config, uint32_t level)
 dynamic reconfigure server callback

Private Member Functions

void adc_channels_callback (const std_msgs::Float64MultiArray::ConstPtr &msg)
void joint_states_callback (const sensor_msgs::JointState::ConstPtr &msg)
void marker_callback (const ar_pose::ARMarkers::ConstPtr &msg)
void move_jointsActive ()
void move_jointsDone (const actionlib::SimpleClientGoalState &state, const control_msgs::FollowJointTrajectoryResultConstPtr &result)
void move_jointsFeedback (const control_msgs::FollowJointTrajectoryFeedbackConstPtr &feedback)
void move_jointsMakeActionRequest ()
void move_left_armActive ()
void move_left_armDone (const actionlib::SimpleClientGoalState &state, const arm_navigation_msgs::MoveArmResultConstPtr &result)
void move_left_armFeedback (const arm_navigation_msgs::MoveArmFeedbackConstPtr &feedback)
void move_left_armMakeActionRequest ()
void move_right_armActive ()
void move_right_armDone (const actionlib::SimpleClientGoalState &state, const arm_navigation_msgs::MoveArmResultConstPtr &result)
void move_right_armFeedback (const arm_navigation_msgs::MoveArmFeedbackConstPtr &feedback)
void move_right_armMakeActionRequest ()
void tracking_headActive ()
void tracking_headDone (const actionlib::SimpleClientGoalState &state, const iri_darwin_robot::tracking_headResultConstPtr &result)
void tracking_headFeedback (const iri_darwin_robot::tracking_headFeedbackConstPtr &feedback)
void tracking_headMakeActionRequest ()

Private Attributes

CMutex adc_channels_mutex_
ros::Subscriber adc_channels_subscriber_
bool close_to_station
ros::Publisher cmd_vel_publisher_
geometry_msgs::PoseStamped conv_msg_
double current_pan
sensor_msgs::JointState current_state
double current_tilt
double current_voltage
ros::Publisher execute_action_publisher_
bool first_goal
std_msgs::Float64MultiArray Float64MultiArray_msg_
ros::ServiceClient get_ik_client_
kinematics_msgs::GetPositionIK get_ik_srv_
bool head_is_tracking
ros::Publisher head_target_publisher_
std_msgs::Int32 Int32_msg_
CMutex joint_states_mutex_
ros::Subscriber joint_states_subscriber_
bool joints_moving
int k
bool left_arm_moving
bool left_data_ready
bool left_done
bool left_marker_found
bool left_ok
geometry_msgs::PoseStamped left_pose_
bool left_ready_tf
int m
geometry_msgs::PoseStamped marker_
bool marker_found
CMutex marker_mutex_
bool marker_really_founded
ros::Subscriber marker_subscriber_
actionlib::SimpleActionClient
< control_msgs::FollowJointTrajectoryAction
move_joints_client_
control_msgs::FollowJointTrajectoryGoal move_joints_goal_
actionlib::SimpleActionClient
< arm_navigation_msgs::MoveArmAction
move_left_arm_client_
arm_navigation_msgs::MoveArmGoal move_left_arm_goal_
actionlib::SimpleActionClient
< arm_navigation_msgs::MoveArmAction
move_right_arm_client_
arm_navigation_msgs::MoveArmGoal move_right_arm_goal_
ar_pose::ARMarkers msg_
int n
int p
bool prev_left_ok
bool prev_right_ok
bool ready
bool ready_for_check
bool right_arm_moving
bool right_data_ready
bool right_marker_found
bool right_ok
geometry_msgs::PoseStamped right_pose_
bool right_ready_tf
TStates state
bool success
tf::TransformListener tf_listener
actionlib::SimpleActionClient
< iri_darwin_robot::tracking_headAction
tracking_head_client_
iri_darwin_robot::tracking_headGoal tracking_head_goal_
geometry_msgs::Twist Twist_msg_

Detailed Description

IRI ROS Specific Algorithm Class.

Definition at line 60 of file darwin_autocharge_alg_node.h.


Constructor & Destructor Documentation

Constructor.

This constructor initializes specific class attributes and all ROS communications variables to enable message exchange.

Definition at line 7 of file darwin_autocharge_alg_node.cpp.

Destructor.

This destructor frees all necessary dynamic memory allocated within this this class.

Definition at line 70 of file darwin_autocharge_alg_node.cpp.


Member Function Documentation

void DarwinAutochargeAlgNode::adc_channels_callback ( const std_msgs::Float64MultiArray::ConstPtr &  msg) [private]

Definition at line 1177 of file darwin_autocharge_alg_node.cpp.

void DarwinAutochargeAlgNode::addNodeDiagnostics ( void  ) [protected, virtual]

node add diagnostics

In this abstract function additional ROS diagnostics applied to the specific algorithms may be added.

Implements algorithm_base::IriBaseAlgorithm< DarwinAutochargeAlgorithm >.

Definition at line 1525 of file darwin_autocharge_alg_node.cpp.

void DarwinAutochargeAlgNode::joint_states_callback ( const sensor_msgs::JointState::ConstPtr &  msg) [private]

Definition at line 1191 of file darwin_autocharge_alg_node.cpp.

void DarwinAutochargeAlgNode::mainNodeThread ( void  ) [protected, virtual]

main node thread

This is the main thread node function. Code written here will be executed in every node loop while the algorithm is on running state. Loop frequency can be tuned by modifying loop_rate attribute.

Here data related to the process loop or to ROS topics (mainly data structs related to the MSG and SRV files) must be updated. ROS publisher objects must publish their data in this process. ROS client servers may also request data to the corresponding server topics.

Implements algorithm_base::IriBaseAlgorithm< DarwinAutochargeAlgorithm >.

Definition at line 75 of file darwin_autocharge_alg_node.cpp.

void DarwinAutochargeAlgNode::marker_callback ( const ar_pose::ARMarkers::ConstPtr &  msg) [private]

Definition at line 1204 of file darwin_autocharge_alg_node.cpp.

Definition at line 1422 of file darwin_autocharge_alg_node.cpp.

Definition at line 1411 of file darwin_autocharge_alg_node.cpp.

Definition at line 1427 of file darwin_autocharge_alg_node.cpp.

Definition at line 1499 of file darwin_autocharge_alg_node.cpp.

Definition at line 1329 of file darwin_autocharge_alg_node.cpp.

Definition at line 1318 of file darwin_autocharge_alg_node.cpp.

Definition at line 1334 of file darwin_autocharge_alg_node.cpp.

Definition at line 1445 of file darwin_autocharge_alg_node.cpp.

Definition at line 1361 of file darwin_autocharge_alg_node.cpp.

Definition at line 1350 of file darwin_autocharge_alg_node.cpp.

Definition at line 1366 of file darwin_autocharge_alg_node.cpp.

Definition at line 1463 of file darwin_autocharge_alg_node.cpp.

void DarwinAutochargeAlgNode::node_config_update ( Config config,
uint32_t  level 
) [protected, virtual]

dynamic reconfigure server callback

This method is called whenever a new configuration is received through the dynamic reconfigure. The derivated generic algorithm class must implement it.

Parameters:
configan object with new configuration from all algorithm parameters defined in the config file.
levelinteger referring the level in which the configuration has been changed.

Implements algorithm_base::IriBaseAlgorithm< DarwinAutochargeAlgorithm >.

Definition at line 1518 of file darwin_autocharge_alg_node.cpp.

Definition at line 1392 of file darwin_autocharge_alg_node.cpp.

Definition at line 1382 of file darwin_autocharge_alg_node.cpp.

Definition at line 1397 of file darwin_autocharge_alg_node.cpp.

Definition at line 1481 of file darwin_autocharge_alg_node.cpp.


Member Data Documentation

Definition at line 74 of file darwin_autocharge_alg_node.h.

Definition at line 72 of file darwin_autocharge_alg_node.h.

Definition at line 135 of file darwin_autocharge_alg_node.h.

Definition at line 66 of file darwin_autocharge_alg_node.h.

geometry_msgs::PoseStamped DarwinAutochargeAlgNode::conv_msg_ [private]

Definition at line 85 of file darwin_autocharge_alg_node.h.

Definition at line 133 of file darwin_autocharge_alg_node.h.

sensor_msgs::JointState DarwinAutochargeAlgNode::current_state [private]

Definition at line 79 of file darwin_autocharge_alg_node.h.

Definition at line 133 of file darwin_autocharge_alg_node.h.

Definition at line 75 of file darwin_autocharge_alg_node.h.

Definition at line 64 of file darwin_autocharge_alg_node.h.

Definition at line 148 of file darwin_autocharge_alg_node.h.

std_msgs::Float64MultiArray DarwinAutochargeAlgNode::Float64MultiArray_msg_ [private]

Definition at line 69 of file darwin_autocharge_alg_node.h.

Definition at line 93 of file darwin_autocharge_alg_node.h.

kinematics_msgs::GetPositionIK DarwinAutochargeAlgNode::get_ik_srv_ [private]

Definition at line 94 of file darwin_autocharge_alg_node.h.

Definition at line 121 of file darwin_autocharge_alg_node.h.

Definition at line 68 of file darwin_autocharge_alg_node.h.

Definition at line 65 of file darwin_autocharge_alg_node.h.

Definition at line 78 of file darwin_autocharge_alg_node.h.

Definition at line 76 of file darwin_autocharge_alg_node.h.

Definition at line 129 of file darwin_autocharge_alg_node.h.

Definition at line 132 of file darwin_autocharge_alg_node.h.

Definition at line 105 of file darwin_autocharge_alg_node.h.

Definition at line 139 of file darwin_autocharge_alg_node.h.

Definition at line 140 of file darwin_autocharge_alg_node.h.

Definition at line 136 of file darwin_autocharge_alg_node.h.

Definition at line 142 of file darwin_autocharge_alg_node.h.

geometry_msgs::PoseStamped DarwinAutochargeAlgNode::left_pose_ [private]

Definition at line 87 of file darwin_autocharge_alg_node.h.

Definition at line 146 of file darwin_autocharge_alg_node.h.

Definition at line 132 of file darwin_autocharge_alg_node.h.

geometry_msgs::PoseStamped DarwinAutochargeAlgNode::marker_ [private]

Definition at line 84 of file darwin_autocharge_alg_node.h.

Definition at line 88 of file darwin_autocharge_alg_node.h.

Definition at line 82 of file darwin_autocharge_alg_node.h.

Definition at line 89 of file darwin_autocharge_alg_node.h.

Definition at line 80 of file darwin_autocharge_alg_node.h.

Definition at line 123 of file darwin_autocharge_alg_node.h.

Definition at line 124 of file darwin_autocharge_alg_node.h.

Definition at line 99 of file darwin_autocharge_alg_node.h.

Definition at line 100 of file darwin_autocharge_alg_node.h.

Definition at line 107 of file darwin_autocharge_alg_node.h.

Definition at line 108 of file darwin_autocharge_alg_node.h.

ar_pose::ARMarkers DarwinAutochargeAlgNode::msg_ [private]

Definition at line 83 of file darwin_autocharge_alg_node.h.

Definition at line 132 of file darwin_autocharge_alg_node.h.

Definition at line 132 of file darwin_autocharge_alg_node.h.

Definition at line 144 of file darwin_autocharge_alg_node.h.

Definition at line 145 of file darwin_autocharge_alg_node.h.

Definition at line 134 of file darwin_autocharge_alg_node.h.

Definition at line 141 of file darwin_autocharge_alg_node.h.

Definition at line 113 of file darwin_autocharge_alg_node.h.

Definition at line 138 of file darwin_autocharge_alg_node.h.

Definition at line 137 of file darwin_autocharge_alg_node.h.

Definition at line 143 of file darwin_autocharge_alg_node.h.

geometry_msgs::PoseStamped DarwinAutochargeAlgNode::right_pose_ [private]

Definition at line 86 of file darwin_autocharge_alg_node.h.

Definition at line 147 of file darwin_autocharge_alg_node.h.

Definition at line 151 of file darwin_autocharge_alg_node.h.

Definition at line 149 of file darwin_autocharge_alg_node.h.

Definition at line 131 of file darwin_autocharge_alg_node.h.

Definition at line 115 of file darwin_autocharge_alg_node.h.

Definition at line 116 of file darwin_autocharge_alg_node.h.

geometry_msgs::Twist DarwinAutochargeAlgNode::Twist_msg_ [private]

Definition at line 67 of file darwin_autocharge_alg_node.h.


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


darwin_autocharge
Author(s): darwin
autogenerated on Fri Dec 6 2013 23:37:39