ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
colmap::LRUCache< key_t, value_t > Class Template Reference

#include <cache.h>

Inheritance diagram for colmap::LRUCache< key_t, value_t >:

Public Types

using LoadFn = std::function< std::shared_ptr< value_t >(const key_t &)>
 

Public Member Functions

 LRUCache (size_t max_num_elems, LoadFn load_fn)
 
size_t NumElems () const
 
size_t MaxNumElems () const
 
bool Exists (const key_t &key) const
 
std::shared_ptr< value_t > Get (const key_t &key)
 
bool Evict (const key_t &key)
 
void Pop ()
 
void Clear ()
 

Detailed Description

template<typename key_t, typename value_t>
class colmap::LRUCache< key_t, value_t >

Definition at line 24 of file cache.h.

Member Typedef Documentation

◆ LoadFn

template<typename key_t , typename value_t >
using colmap::LRUCache< key_t, value_t >::LoadFn = std::function<std::shared_ptr<value_t>(const key_t&)>

Definition at line 26 of file cache.h.

Constructor & Destructor Documentation

◆ LRUCache()

template<typename key_t , typename value_t >
colmap::LRUCache< key_t, value_t >::LRUCache ( size_t  max_num_elems,
LoadFn  load_fn 
)

Definition at line 173 of file cache.h.

Member Function Documentation

◆ Clear()

template<typename key_t , typename value_t >
void colmap::LRUCache< key_t, value_t >::Clear

Definition at line 237 of file cache.h.

◆ Evict()

template<typename key_t , typename value_t >
bool colmap::LRUCache< key_t, value_t >::Evict ( const key_t &  key)

Definition at line 216 of file cache.h.

◆ Exists()

template<typename key_t , typename value_t >
bool colmap::LRUCache< key_t, value_t >::Exists ( const key_t &  key) const

Definition at line 190 of file cache.h.

◆ Get()

template<typename key_t , typename value_t >
std::shared_ptr< value_t > colmap::LRUCache< key_t, value_t >::Get ( const key_t &  key)

Definition at line 195 of file cache.h.

◆ MaxNumElems()

template<typename key_t , typename value_t >
size_t colmap::LRUCache< key_t, value_t >::MaxNumElems

Definition at line 185 of file cache.h.

◆ NumElems()

template<typename key_t , typename value_t >
size_t colmap::LRUCache< key_t, value_t >::NumElems

Definition at line 180 of file cache.h.

◆ Pop()

template<typename key_t , typename value_t >
void colmap::LRUCache< key_t, value_t >::Pop

Definition at line 227 of file cache.h.


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