-
Notifications
You must be signed in to change notification settings - Fork 197
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
Create a StaticTransformListener #662
Comments
I would love this. @ahcorde @clalancette is this something that you'd be open to merging if it was provided in a PR? |
It seems like a reasonable feature request to me. One other implementation idea I'll throw out is to not add a new class at all, but instead add a new parameter to the constructor/ |
That seems like approval @ayrton04 😄 |
If we're OK with changing the API for We'll have to think about how to add that parameter. It feels a little strange if we have a parameter that says "only subscribe to static data", but then we have to provide the QoS and subscription options for the unused On PTO, but will come back to this soon. |
To be clear, we can't change any of the existing parameters or constructors; that would constitute an API break. But we can add in new parameters with default values (this is only an ABI break), or we can add in new constructors as you suggest. |
Would adding an optional camera1 → base_link1 → odom ← base_link2 ← camera2 |
Feature request
Feature description
The
TransformListener
intf2_ros
subscribes to both the/tf
and/tf_static
topics and provides a unified transform tree. However, there are many cases where a node will only be using transforms that are known to be static, e.g., looking up transforms from a sensor frame to the body frame. In those cases, all of the overhead in maintaining the high-rate transform data as provided by the/tf
topic is totally wasted. Given that many nodes useTransformListener
, this can quickly add up to a lot of wasted resources in systems with large numbers of nodes.I propose that we implement a
StaticTransformListener
that only subscribes to/tf_static
.Implementation considerations
We could define a base class for both
TransformListener
andStaticTransformListener
so keep the interface consistent between the two. The aim of the design would be to not change anything aboutTransformListener
itself from a user perspective.If that is not possible, then if we could at least make the
init
method protected instead of private, it will let users override this behaviour themselves.The text was updated successfully, but these errors were encountered: