Apollo  6.0
Open source self driving car software
Public Member Functions | List of all members
apollo::common::util::LRUCache< K, V > Class Template Reference

#include <lru_cache.h>

Collaboration diagram for apollo::common::util::LRUCache< K, V >:
Collaboration graph

Public Member Functions

 LRUCache (const size_t capacity=kDefaultCapacity)
 
 ~LRUCache ()
 
void GetCache (std::map< K, V > *cache)
 
V & operator[] (const K &key)
 
void GetAllSilently (std::vector< V *> *ret)
 
template<typename VV >
bool Put (const K &key, VV &&val)
 
template<typename VV >
bool Update (const K &key, VV &&val)
 
template<typename VV >
bool UpdateSilently (const K &key, VV *val)
 
template<typename VV >
bool Add (const K &key, VV *val)
 
template<typename VV >
bool PutAndGetObsolete (const K &key, VV *val, K *obs)
 
template<typename VV >
bool AddAndGetObsolete (const K &key, VV *val, K *obs)
 
V * GetSilently (const K &key)
 
V * Get (const K &key)
 
bool GetCopySilently (const K &key, V *const val)
 
bool GetCopy (const K &key, V *const val)
 
size_t size ()
 
bool Full ()
 
bool Empty ()
 
size_t capacity ()
 
Node< K, V > * First ()
 
Node< K, V > * Last ()
 
bool Contains (const K &key)
 
bool Prioritize (const K &key)
 
void Clear ()
 
bool Remove (const K &key)
 
bool ChangeCapacity (const size_t capacity)
 

Constructor & Destructor Documentation

◆ LRUCache()

template<class K, class V>
apollo::common::util::LRUCache< K, V >::LRUCache ( const size_t  capacity = kDefaultCapacity)
inlineexplicit

◆ ~LRUCache()

template<class K, class V>
apollo::common::util::LRUCache< K, V >::~LRUCache ( )
inline

Member Function Documentation

◆ Add()

template<class K, class V>
template<typename VV >
bool apollo::common::util::LRUCache< K, V >::Add ( const K &  key,
VV *  val 
)
inline

◆ AddAndGetObsolete()

template<class K, class V>
template<typename VV >
bool apollo::common::util::LRUCache< K, V >::AddAndGetObsolete ( const K &  key,
VV *  val,
K *  obs 
)
inline

◆ capacity()

template<class K, class V>
size_t apollo::common::util::LRUCache< K, V >::capacity ( )
inline

◆ ChangeCapacity()

template<class K, class V>
bool apollo::common::util::LRUCache< K, V >::ChangeCapacity ( const size_t  capacity)
inline

◆ Clear()

template<class K, class V>
void apollo::common::util::LRUCache< K, V >::Clear ( )
inline

◆ Contains()

template<class K, class V>
bool apollo::common::util::LRUCache< K, V >::Contains ( const K &  key)
inline

◆ Empty()

template<class K, class V>
bool apollo::common::util::LRUCache< K, V >::Empty ( )
inline

◆ First()

template<class K, class V>
Node<K, V>* apollo::common::util::LRUCache< K, V >::First ( )
inline

◆ Full()

template<class K, class V>
bool apollo::common::util::LRUCache< K, V >::Full ( )
inline

◆ Get()

template<class K, class V>
V* apollo::common::util::LRUCache< K, V >::Get ( const K &  key)
inline

◆ GetAllSilently()

template<class K, class V>
void apollo::common::util::LRUCache< K, V >::GetAllSilently ( std::vector< V *> *  ret)
inline

◆ GetCache()

template<class K, class V>
void apollo::common::util::LRUCache< K, V >::GetCache ( std::map< K, V > *  cache)
inline

◆ GetCopy()

template<class K, class V>
bool apollo::common::util::LRUCache< K, V >::GetCopy ( const K &  key,
V *const  val 
)
inline

◆ GetCopySilently()

template<class K, class V>
bool apollo::common::util::LRUCache< K, V >::GetCopySilently ( const K &  key,
V *const  val 
)
inline

◆ GetSilently()

template<class K, class V>
V* apollo::common::util::LRUCache< K, V >::GetSilently ( const K &  key)
inline

◆ Last()

template<class K, class V>
Node<K, V>* apollo::common::util::LRUCache< K, V >::Last ( )
inline

◆ operator[]()

template<class K, class V>
V& apollo::common::util::LRUCache< K, V >::operator[] ( const K &  key)
inline

◆ Prioritize()

template<class K, class V>
bool apollo::common::util::LRUCache< K, V >::Prioritize ( const K &  key)
inline

◆ Put()

template<class K, class V>
template<typename VV >
bool apollo::common::util::LRUCache< K, V >::Put ( const K &  key,
VV &&  val 
)
inline

◆ PutAndGetObsolete()

template<class K, class V>
template<typename VV >
bool apollo::common::util::LRUCache< K, V >::PutAndGetObsolete ( const K &  key,
VV *  val,
K *  obs 
)
inline

◆ Remove()

template<class K, class V>
bool apollo::common::util::LRUCache< K, V >::Remove ( const K &  key)
inline

◆ size()

template<class K, class V>
size_t apollo::common::util::LRUCache< K, V >::size ( )
inline

◆ Update()

template<class K, class V>
template<typename VV >
bool apollo::common::util::LRUCache< K, V >::Update ( const K &  key,
VV &&  val 
)
inline

◆ UpdateSilently()

template<class K, class V>
template<typename VV >
bool apollo::common::util::LRUCache< K, V >::UpdateSilently ( const K &  key,
VV *  val 
)
inline

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