-
Notifications
You must be signed in to change notification settings - Fork 198
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[bug] tf2_ros::Buffer:transform always assumes timeout #589
Comments
This seems like a reasonable feature request. We'd be happy to review a PR that implements this. |
Hi @clalancette if (!checkAndErrorDedicatedThreadPresent(errstr) && timeout != tf2::Duration(0.0)) {
return false;
} |
You will want to switch the order of those checks, since |
You're right about that, that's my bad. I preferred approach 2 to approach 1 because those who have implemented this code should be able to transform as is without having to pass another kind of signature. I'll write up a PR for this. |
Bug report
Required Info:
Steps to reproduce issue
setUsingDedicatedThread(true)
transform()
on atf2_ros::Buffer
tf2_ros::threading_error
Expected behavior
I just want to call
transform
using the latest transform in the tf buffer.Actual behavior
lookupTransform
allows for this, buttransform
always calls an overloaded version oflookupTransform
that takes a timeout, which then checks for a dedicated thread. This means I get spam ERROR logs about not using a dedicated thread.Additional details
This could be fixed two ways:
timeout
as default argument ontransform
and making a separate overload that takes an explicittimeout
argcanTransform
, only check for threading if thetimeout
is non-zero.The text was updated successfully, but these errors were encountered: