25 #include <control_msgs/FollowJointTrajectoryAction.h> 29 #include <condition_variable> 43 typedef control_msgs::FollowJointTrajectoryAction
Action;
44 typedef control_msgs::FollowJointTrajectoryResult
Result;
67 void onGoal(GoalHandle gh);
70 bool validate(GoalHandle& gh, Result& res);
78 std::vector<size_t>
reorderMap(std::vector<std::string> goal_joints);
std::condition_variable tj_cv_
void interruptGoal(GoalHandle &gh)
bool validateState(GoalHandle &gh, Result &res)
bool validateJoints(GoalHandle &gh, Result &res)
control_msgs::FollowJointTrajectoryResult Result
std::atomic< bool > running_
virtual bool consume(RTState_V1_6__7 &state)
std::atomic< bool > has_goal_
control_msgs::FollowJointTrajectoryAction Action
actionlib::ServerGoalHandle< Action > GoalHandle
void onGoal(GoalHandle gh)
bool validate(GoalHandle &gh, Result &res)
actionlib::ActionServer< Action > Server
std::array< double, 6 > qd_actual_
virtual void onRobotStateChange(RobotState state)
bool updateState(RTShared &data)
ActionServer(ActionTrajectoryFollowerInterface &follower, std::vector< std::string > &joint_names, double max_velocity)
std::vector< std::string > joint_names_
bool try_execute(GoalHandle &gh, Result &res)
bool validateTrajectory(GoalHandle &gh, Result &res)
std::set< std::string > joint_set_
std::vector< size_t > reorderMap(std::vector< std::string > goal_joints)
std::atomic< bool > interrupt_traj_
void onCancel(GoalHandle gh)
ActionTrajectoryFollowerInterface & follower_
std::array< double, 6 > q_actual_