51 tf2::Stamped<tf2::Transform> endEffectorInPivotFrame;
61 "[" <<
getName() <<
"] tip unspecified, using default end effector: " << *
tipLink_);
70 if (tfListener !=
nullptr)
78 tf2::fromMsg(transformOpt.value(), endEffectorInPivotFrame);
80 this->
planePivotPose_.header.frame_id = endEffectorInPivotFrame.frame_id_;
82 rclcpp::Time(endEffectorInPivotFrame.stamp_.time_since_epoch().count());
89 <<
" to " << pivotFrameName <<
". Attempt countdown: " << attempts);
90 rclcpp::sleep_for(500ms);
100 <<
"] CpTfListener component not available, using legacy TF2 (consider "
101 "adding CpTfListener component)");
102 tf2_ros::Buffer tfBuffer(
getNode()->get_clock());
103 tf2_ros::TransformListener tfListenerLegacy(tfBuffer);
106 tfBuffer.lookupTransform(
107 pivotFrameName, *
tipLink_, rclcpp::Time(), rclcpp::Duration(10s)),
108 endEffectorInPivotFrame);
111 this->
planePivotPose_.header.frame_id = endEffectorInPivotFrame.frame_id_;
113 rclcpp::Time(endEffectorInPivotFrame.stamp_.time_since_epoch().count());
117 catch (
const std::exception & e)
119 RCLCPP_ERROR_STREAM(
getLogger(), e.what() <<
". Attempt countdown: " << attempts);
120 rclcpp::sleep_for(500ms);
128 getLogger(),
"[" <<
getName() <<
"] calling base CbCircularPivotMotion::onEntry");