#include <RosMsgSynchronizer.h>
Public Member Functions | |
const std::pair< T1, T2 > & | back () const |
void | clear () |
bool | empty () const |
const std::pair< T1, T2 > & | front () const |
unsigned int | getBufferSize () const |
void | pop () |
void | purgeBuffer () |
void | purgeBuffer (const ros::Time &oldDataTime) |
void | pushSource1 (const T1 &source1) |
void | pushSource2 (const T2 &source2) |
RosMsgSynchronizer () | |
void | setWindowDelta (double windowDelta_in) |
unsigned int | size () const |
~RosMsgSynchronizer () | |
Protected Member Functions | |
template<class T3 , class T4 > | |
bool | findMatch (std::map< ros::Time, T3 > &sourceBuffer, const T4 &find, T3 &match) |
Protected Attributes | |
std::map< ros::Time, std::pair < T1, T2 > > | matches |
std::map< ros::Time, T1 > | source1Buffer |
std::map< ros::Time, T2 > | source2Buffer |
double | windowDelta |
/brief RosMsgSynchronizer allows you to synchronize two ros message sources
The type is assumed to be a ros message. Bad things will likely happen if it is not.
Definition at line 13 of file RosMsgSynchronizer.h.
RosMsgSynchronizer< T1, T2 >::RosMsgSynchronizer | ( | ) | [inline] |
Definition at line 16 of file RosMsgSynchronizer.h.
RosMsgSynchronizer< T1, T2 >::~RosMsgSynchronizer | ( | ) | [inline] |
Definition at line 19 of file RosMsgSynchronizer.h.
const std::pair<T1, T2>& RosMsgSynchronizer< T1, T2 >::back | ( | ) | const [inline] |
Definition at line 35 of file RosMsgSynchronizer.h.
void RosMsgSynchronizer< T1, T2 >::clear | ( | ) | [inline] |
Definition at line 44 of file RosMsgSynchronizer.h.
bool RosMsgSynchronizer< T1, T2 >::empty | ( | ) | const [inline] |
Definition at line 28 of file RosMsgSynchronizer.h.
bool RosMsgSynchronizer< T1, T2 >::findMatch | ( | std::map< ros::Time, T3 > & | sourceBuffer, |
const T4 & | find, | ||
T3 & | match | ||
) | [protected] |
Definition at line 112 of file RosMsgSynchronizer.h.
const std::pair<T1, T2>& RosMsgSynchronizer< T1, T2 >::front | ( | ) | const [inline] |
Definition at line 30 of file RosMsgSynchronizer.h.
unsigned int RosMsgSynchronizer< T1, T2 >::getBufferSize | ( | ) | const [inline] |
Definition at line 26 of file RosMsgSynchronizer.h.
void RosMsgSynchronizer< T1, T2 >::pop | ( | ) | [inline] |
Definition at line 40 of file RosMsgSynchronizer.h.
void RosMsgSynchronizer< T1, T2 >::purgeBuffer | ( | ) |
Definition at line 94 of file RosMsgSynchronizer.h.
void RosMsgSynchronizer< T1, T2 >::purgeBuffer | ( | const ros::Time & | oldDataTime | ) |
Definition at line 101 of file RosMsgSynchronizer.h.
void RosMsgSynchronizer< T1, T2 >::pushSource1 | ( | const T1 & | source1 | ) | [inline] |
Definition at line 64 of file RosMsgSynchronizer.h.
void RosMsgSynchronizer< T1, T2 >::pushSource2 | ( | const T2 & | source2 | ) | [inline] |
Definition at line 79 of file RosMsgSynchronizer.h.
void RosMsgSynchronizer< T1, T2 >::setWindowDelta | ( | double | windowDelta_in | ) | [inline] |
Definition at line 46 of file RosMsgSynchronizer.h.
unsigned int RosMsgSynchronizer< T1, T2 >::size | ( | ) | const [inline] |
Definition at line 29 of file RosMsgSynchronizer.h.
std::map<ros::Time, std::pair<T1, T2> > RosMsgSynchronizer< T1, T2 >::matches [protected] |
Definition at line 55 of file RosMsgSynchronizer.h.
std::map<ros::Time, T1> RosMsgSynchronizer< T1, T2 >::source1Buffer [protected] |
Definition at line 53 of file RosMsgSynchronizer.h.
std::map<ros::Time, T2> RosMsgSynchronizer< T1, T2 >::source2Buffer [protected] |
Definition at line 54 of file RosMsgSynchronizer.h.
double RosMsgSynchronizer< T1, T2 >::windowDelta [protected] |
Definition at line 60 of file RosMsgSynchronizer.h.