#include <transform_collection.h>
Public Member Functions | |
tf::StampedTransform | lookupTransform (const std::string &target_frame, const std::string &source_frame, double t) const override |
void | putTransform (tf::StampedTransform) |
Put the transform into the collection. More... | |
TransformCollection (MessageCollection< tf::tfMessage > &coll, const double search_back=10.0, const double search_forward=1.0) | |
Private Attributes | |
MessageCollection< tf::tfMessage > | coll_ |
double | search_back_ |
double | search_forward_ |
The setup is that you have a db containing a collection with tf messages, in which each message has a metadata field named 'stamp', that equals the tf timestamp (this could be generated, e.g., with bag_to_db followed by add_metadata). Given such a collection, this class allows querying for a transform as with tf::TransformListener::lookupTransform, except this is deterministic with no dependency on network state or message queues.
Definition at line 66 of file transform_collection.h.
|
inline |
Definition at line 69 of file transform_collection.h.
|
overridevirtual |
Get the transform between two frames at a given timepoint. Can throw all the exceptions tf::lookupTransform can.
Implements warehouse_ros::TransformSource.
Definition at line 44 of file transform_collection.cpp.
void warehouse_ros::TransformCollection::putTransform | ( | tf::StampedTransform | ) |
Put the transform into the collection.
Definition at line 74 of file transform_collection.cpp.
|
private |
Definition at line 84 of file transform_collection.h.
|
private |
Definition at line 85 of file transform_collection.h.
|
private |
Definition at line 86 of file transform_collection.h.