Public Member Functions | Private Types | Private Member Functions | Private Attributes
crl::multisense::details::DepthCache< KEY, DATA > Class Template Reference

#include <storage.hh>

List of all members.

Public Member Functions

 DepthCache (std::size_t depth, KEY min)
DATA * find (KEY key)
DATA * find_nolock (KEY key)
void insert (KEY key, DATA *data)
void insert_nolock (KEY key, DATA *data)
utility::Mutexmutex ()
void remove (KEY key)
void remove_nolock (KEY key)
 ~DepthCache ()

Private Types

typedef std::map< KEY, DATA * > MapType

Private Member Functions

DATA * find_ (KEY key)
void insert_ (KEY key, DATA *data)
void pop_oldest_ ()
void remove_ (KEY key)

Private Attributes

const std::size_t m_depth
utility::Mutex m_lock
MapType m_map
const KEY m_minimum

Detailed Description

template<class KEY, class DATA>
class crl::multisense::details::DepthCache< KEY, DATA >

Definition at line 131 of file storage.hh.


Member Typedef Documentation

template<class KEY, class DATA>
typedef std::map<KEY,DATA*> crl::multisense::details::DepthCache< KEY, DATA >::MapType [private]

Definition at line 177 of file storage.hh.


Constructor & Destructor Documentation

template<class KEY, class DATA>
crl::multisense::details::DepthCache< KEY, DATA >::DepthCache ( std::size_t  depth,
KEY  min 
) [inline]

Definition at line 134 of file storage.hh.

template<class KEY, class DATA>
crl::multisense::details::DepthCache< KEY, DATA >::~DepthCache ( ) [inline]

Definition at line 138 of file storage.hh.


Member Function Documentation

template<class KEY, class DATA>
DATA* crl::multisense::details::DepthCache< KEY, DATA >::find ( KEY  key) [inline]

Definition at line 156 of file storage.hh.

template<class KEY, class DATA>
DATA* crl::multisense::details::DepthCache< KEY, DATA >::find_ ( KEY  key) [inline, private]

Definition at line 183 of file storage.hh.

template<class KEY, class DATA>
DATA* crl::multisense::details::DepthCache< KEY, DATA >::find_nolock ( KEY  key) [inline]

Definition at line 152 of file storage.hh.

template<class KEY, class DATA>
void crl::multisense::details::DepthCache< KEY, DATA >::insert ( KEY  key,
DATA *  data 
) [inline]

Definition at line 165 of file storage.hh.

template<class KEY, class DATA>
void crl::multisense::details::DepthCache< KEY, DATA >::insert_ ( KEY  key,
DATA *  data 
) [inline, private]

Definition at line 192 of file storage.hh.

template<class KEY, class DATA>
void crl::multisense::details::DepthCache< KEY, DATA >::insert_nolock ( KEY  key,
DATA *  data 
) [inline]

Definition at line 161 of file storage.hh.

template<class KEY, class DATA>
utility::Mutex& crl::multisense::details::DepthCache< KEY, DATA >::mutex ( ) [inline]

Definition at line 148 of file storage.hh.

template<class KEY, class DATA>
void crl::multisense::details::DepthCache< KEY, DATA >::pop_oldest_ ( ) [inline, private]

Definition at line 207 of file storage.hh.

template<class KEY, class DATA>
void crl::multisense::details::DepthCache< KEY, DATA >::remove ( KEY  key) [inline]

Definition at line 174 of file storage.hh.

template<class KEY, class DATA>
void crl::multisense::details::DepthCache< KEY, DATA >::remove_ ( KEY  key) [inline, private]

Definition at line 199 of file storage.hh.

template<class KEY, class DATA>
void crl::multisense::details::DepthCache< KEY, DATA >::remove_nolock ( KEY  key) [inline]

Definition at line 170 of file storage.hh.


Member Data Documentation

template<class KEY, class DATA>
const std::size_t crl::multisense::details::DepthCache< KEY, DATA >::m_depth [private]

Definition at line 213 of file storage.hh.

template<class KEY, class DATA>
utility::Mutex crl::multisense::details::DepthCache< KEY, DATA >::m_lock [private]

Definition at line 219 of file storage.hh.

template<class KEY, class DATA>
MapType crl::multisense::details::DepthCache< KEY, DATA >::m_map [private]

Definition at line 218 of file storage.hh.

template<class KEY, class DATA>
const KEY crl::multisense::details::DepthCache< KEY, DATA >::m_minimum [private]

Definition at line 216 of file storage.hh.


The documentation for this class was generated from the following file:


multisense_lib
Author(s):
autogenerated on Mon Oct 9 2017 03:06:22