Class TimeCache

Inheritance Relationships

Base Type

Class Documentation

class TimeCache : public tf2::TimeCacheInterface

A class to keep a sorted linked list in time (newest first, oldest last). This builds and maintains a list of timestamped data. And provides lookup functions to get data out as a function of time.

Public Functions

explicit TimeCache(tf2::Duration max_storage_time = TIMECACHE_DEFAULT_MAX_STORAGE_TIME)
virtual bool getData(tf2::TimePoint time, tf2::TransformStorage &data_out, std::string *error_str = nullptr, TF2Error *error_code = nullptr) override

Overridden methods.

virtual bool insertData(const tf2::TransformStorage &new_data) override

Insert data into the cache.

virtual void clearList() override

Clear the list of stored values.

virtual tf2::CompactFrameID getParent(tf2::TimePoint time, std::string *error_str = nullptr, TF2Error *error_code = nullptr) override

Retrieve the parent at a specific time.

virtual P_TimeAndFrameID getLatestTimeAndParent() override

Get the latest time stored in this cache, and the parent associated with it. Returns parent = 0 if no data.

virtual unsigned int getListLength() override

Debugging information methods.

virtual TimePoint getLatestTimestamp() override

Get the latest timestamp cached.

virtual TimePoint getOldestTimestamp() override

Get the oldest timestamp cached.

Protected Functions

const std::list<TransformStorage> &getAllItems() const