$search

tf::TimeCache Class Reference

A class to keep a sorted linked list in time This builds and maintains a list of timestamped data. And provides lookup functions to get data out as a function of time. More...

#include <time_cache.h>

List of all members.

Public Member Functions

void clearList ()
bool getData (ros::Time time, TransformStorage &data_out, std::string *error_str=0)
P_TimeAndFrameID getLatestTimeAndParent ()
ros::Time getLatestTimestamp ()
unsigned int getListLength ()
 Debugging information methods.
ros::Time getOldestTimestamp ()
CompactFrameID getParent (ros::Time time, std::string *error_str)
bool insertData (const TransformStorage &new_data)
 TimeCache (ros::Duration max_storage_time=ros::Duration().fromNSec(DEFAULT_MAX_STORAGE_TIME))

Static Public Attributes

static const int64_t DEFAULT_MAX_STORAGE_TIME = 1ULL * 1000000000LL
 default value of 10 seconds storage
static const unsigned int MAX_LENGTH_LINKED_LIST = 1000000
 Maximum length of linked list, to make sure not to be able to use unlimited memory.
static const int MIN_INTERPOLATION_DISTANCE = 5
 Number of nano-seconds to not interpolate below.

Private Types

typedef std::list
< TransformStorage
L_TransformStorage

Private Member Functions

uint8_t findClosest (TransformStorage *&one, TransformStorage *&two, ros::Time target_time, std::string *error_str)
 A helper function for getData.
void interpolate (const TransformStorage &one, const TransformStorage &two, ros::Time time, TransformStorage &output)
void pruneList ()

Private Attributes

ros::Duration max_storage_time_
L_TransformStorage storage_

Detailed Description

A class to keep a sorted linked list in time This builds and maintains a list of timestamped data. And provides lookup functions to get data out as a function of time.

Definition at line 90 of file time_cache.h.


Member Typedef Documentation

Definition at line 112 of file time_cache.h.


Constructor & Destructor Documentation

TimeCache::TimeCache ( ros::Duration  max_storage_time = ros::Duration().fromNSec(DEFAULT_MAX_STORAGE_TIME)  ) 

Definition at line 55 of file cache.cpp.


Member Function Documentation

void TimeCache::clearList (  ) 

Definition at line 267 of file cache.cpp.

uint8_t TimeCache::findClosest ( TransformStorage *&  one,
TransformStorage *&  two,
ros::Time  target_time,
std::string *  error_str 
) [inline, private]

A helper function for getData.

Definition at line 98 of file cache.cpp.

bool TimeCache::getData ( ros::Time  time,
TransformStorage data_out,
std::string *  error_str = 0 
)

Definition at line 195 of file cache.cpp.

P_TimeAndFrameID TimeCache::getLatestTimeAndParent (  ) 

Definition at line 277 of file cache.cpp.

ros::Time TimeCache::getLatestTimestamp (  ) 

Definition at line 288 of file cache.cpp.

unsigned int TimeCache::getListLength (  ) 

Debugging information methods.

Definition at line 272 of file cache.cpp.

ros::Time TimeCache::getOldestTimestamp (  ) 

Definition at line 294 of file cache.cpp.

CompactFrameID TimeCache::getParent ( ros::Time  time,
std::string *  error_str 
)

Definition at line 228 of file cache.cpp.

bool TimeCache::insertData ( const TransformStorage new_data  ) 

Definition at line 242 of file cache.cpp.

void TimeCache::interpolate ( const TransformStorage one,
const TransformStorage two,
ros::Time  time,
TransformStorage output 
) [inline, private]

Definition at line 173 of file cache.cpp.

void TimeCache::pruneList (  )  [private]

Definition at line 300 of file cache.cpp.


Member Data Documentation

const int64_t tf::TimeCache::DEFAULT_MAX_STORAGE_TIME = 1ULL * 1000000000LL [static]

default value of 10 seconds storage

Definition at line 95 of file time_cache.h.

const unsigned int tf::TimeCache::MAX_LENGTH_LINKED_LIST = 1000000 [static]

Maximum length of linked list, to make sure not to be able to use unlimited memory.

Definition at line 94 of file time_cache.h.

Definition at line 115 of file time_cache.h.

Number of nano-seconds to not interpolate below.

Definition at line 93 of file time_cache.h.

Definition at line 113 of file time_cache.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


tf
Author(s): Tully Foote, Eitan Marder-Eppstein, Wim Meeussen
autogenerated on Tue Mar 5 11:58:33 2013