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

#include <storage.hh>

Public Member Functions

 DepthCache (std::size_t depth)
 
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
 
typedef std::deque< KEY > QueueType
 

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
 
QueueType m_queue
 

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

◆ MapType

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

Definition at line 181 of file storage.hh.

◆ QueueType

template<class KEY, class DATA>
typedef std::deque<KEY> crl::multisense::details::DepthCache< KEY, DATA >::QueueType
private

Definition at line 176 of file storage.hh.

Constructor & Destructor Documentation

◆ DepthCache()

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

Definition at line 134 of file storage.hh.

◆ ~DepthCache()

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

Definition at line 137 of file storage.hh.

Member Function Documentation

◆ find()

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

Definition at line 155 of file storage.hh.

◆ find_()

template<class KEY, class DATA>
DATA* crl::multisense::details::DepthCache< KEY, DATA >::find_ ( KEY  key)
inlineprivate

Definition at line 183 of file storage.hh.

◆ find_nolock()

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

Definition at line 151 of file storage.hh.

◆ insert()

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

Definition at line 164 of file storage.hh.

◆ insert_()

template<class KEY, class DATA>
void crl::multisense::details::DepthCache< KEY, DATA >::insert_ ( KEY  key,
DATA *  data 
)
inlineprivate

Definition at line 192 of file storage.hh.

◆ insert_nolock()

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

Definition at line 160 of file storage.hh.

◆ mutex()

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

Definition at line 147 of file storage.hh.

◆ pop_oldest_()

template<class KEY, class DATA>
void crl::multisense::details::DepthCache< KEY, DATA >::pop_oldest_ ( )
inlineprivate

Definition at line 227 of file storage.hh.

◆ remove()

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

Definition at line 173 of file storage.hh.

◆ remove_()

template<class KEY, class DATA>
void crl::multisense::details::DepthCache< KEY, DATA >::remove_ ( KEY  key)
inlineprivate

Definition at line 210 of file storage.hh.

◆ remove_nolock()

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

Definition at line 169 of file storage.hh.

Member Data Documentation

◆ m_depth

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

Definition at line 241 of file storage.hh.

◆ m_lock

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

Definition at line 246 of file storage.hh.

◆ m_map

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

Definition at line 244 of file storage.hh.

◆ m_queue

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

Definition at line 245 of file storage.hh.


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


multisense_lib
Author(s):
autogenerated on Sat Jun 24 2023 03:01:21