51 tf2::Stamped<tf2::Transform> endEffectorInPivotFrame;
61 "[" <<
getName() <<
"] tip unspecified, using default end effector: " << *
tipLink_);
71 if (tfListener !=
nullptr)
79 tf2::fromMsg(transformOpt.value(), endEffectorInPivotFrame);
81 this->
planePivotPose_.header.frame_id = endEffectorInPivotFrame.frame_id_;
83 rclcpp::Time(endEffectorInPivotFrame.stamp_.time_since_epoch().count());
90 <<
" to " << pivotFrameName <<
". Attempt countdown: " << attempts);
91 rclcpp::sleep_for(500ms);
101 <<
"] CpTfListener component not available, using legacy TF2 (consider "
102 "adding CpTfListener component)");
103 tf2_ros::Buffer tfBuffer(
getNode()->get_clock());
104 tf2_ros::TransformListener tfListenerLegacy(tfBuffer);
107 tfBuffer.lookupTransform(
108 pivotFrameName, *
tipLink_, rclcpp::Time(), rclcpp::Duration(10s)),
109 endEffectorInPivotFrame);
112 this->
planePivotPose_.header.frame_id = endEffectorInPivotFrame.frame_id_;
114 rclcpp::Time(endEffectorInPivotFrame.stamp_.time_since_epoch().count());
118 catch (
const std::exception & e)
120 RCLCPP_ERROR_STREAM(
getLogger(), e.what() <<
". Attempt countdown: " << attempts);
121 rclcpp::sleep_for(500ms);
129 getLogger(),
"[" <<
getName() <<
"] calling base CbCircularPivotMotion::onEntry");