11#include <visualization_msgs/MarkerArray.h>
12#include <tf/transform_datatypes.h>
16 template <
typename AsyncCB,
typename Orthogonal>
22 template <
typename AsyncCB,
typename Orthogonal>
50 template <
typename TOrthogonal,
typename TSourceObject>
53 smacc::SmaccAsyncClientBehavior::onOrthogonalAllocation<TOrthogonal, TSourceObject>();
57 ev->trajectory = traj;
64 ev->trajectory = traj;
70 ROS_INFO_STREAM(
"[" << this->
getName() <<
"] motion execution failed");
72 this->postEvent<EvMoveGroupMotionExecutionFailed<TSourceObject,TOrthogonal>>();
76 virtual void onEntry()
override;
78 virtual void onExit()
override;
80 virtual void update()
override;
boost::optional< bool > allowInitialTrajectoryStateJointDiscontinuity_
boost::optional< std::string > tipLink_
std::function< void(moveit_msgs::RobotTrajectory &)> postJointDiscontinuityEvent
void executeJointSpaceTrajectory(const moveit_msgs::RobotTrajectory &computedJointTrajectory)
virtual void createMarkers()
ComputeJointTrajectoryErrorCode computeJointSpaceTrajectory(moveit_msgs::RobotTrajectory &computedJointTrajectory)
virtual void onExit() override
void getCurrentEndEffectorPose(std::string globalFrame, tf::StampedTransform ¤tEndEffectorTransform)
virtual void update() override
std::function< void(moveit_msgs::RobotTrajectory &)> postIncorrectInitialStateEvent
std::function< void()> postMotionExecutionFailureEvents
visualization_msgs::MarkerArray beahiorMarkers_
ros::ServiceClient iksrv_
boost::optional< std::string > group_
ros::Publisher markersPub_
void onOrthogonalAllocation()
virtual void onEntry() override
std::atomic< bool > markersInitialized_
std::vector< geometry_msgs::PoseStamped > endEffectorTrajectory_
ClMoveGroup * movegroupClient_
virtual void generateTrajectory()
void postEventMotionExecutionFailed()
std::string getName() const
ComputeJointTrajectoryErrorCode
@ INCORRECT_INITIAL_STATE
@ JOINT_TRAJECTORY_DISCONTINUITY
moveit_msgs::RobotTrajectory trajectory
moveit_msgs::RobotTrajectory trajectory