50 tf2::Stamped<tf2::Transform> endEffectorInPivotFrame;
59 "[" <<
getName() <<
"] tip unspecified, using default end effector: " << *
tipLink_);
68 if (tfListener !=
nullptr)
76 tf2::fromMsg(transformOpt.value(), endEffectorInPivotFrame);
78 this->
planePivotPose_.header.frame_id = endEffectorInPivotFrame.frame_id_;
80 rclcpp::Time(endEffectorInPivotFrame.stamp_.time_since_epoch().count());
87 <<
" to " << pivotFrameName <<
". Attempt countdown: " << attempts);
88 rclcpp::sleep_for(500ms);
98 <<
"] CpTfListener component not available, using legacy TF2 (consider "
99 "adding CpTfListener component)");
100 tf2_ros::Buffer tfBuffer(
getNode()->get_clock());
101 tf2_ros::TransformListener tfListenerLegacy(tfBuffer);
104 tfBuffer.lookupTransform(
105 pivotFrameName, *
tipLink_, rclcpp::Time(), rclcpp::Duration(10s)),
106 endEffectorInPivotFrame);
109 this->
planePivotPose_.header.frame_id = endEffectorInPivotFrame.frame_id_;
111 rclcpp::Time(endEffectorInPivotFrame.stamp_.time_since_epoch().count());
115 catch (
const std::exception & e)
117 RCLCPP_ERROR_STREAM(
getLogger(), e.what() <<
". Attempt countdown: " << attempts);
118 rclcpp::sleep_for(500ms);
126 getLogger(),
"[" <<
getName() <<
"] calling base CbCircularPivotMotion::onEntry");