LRUCache< KeyT, CacheItemT > Class Template Reference

`#include <pcl/outofcore/impl/lru_cache.hpp>`

## Public Types

typedef std::list< KeyT > | KeyIndex
typedef KeyIndex::iterator | KeyIndexIterator
typedef std::map< KeyT, std::pair< CacheItemT, typename KeyIndex::iterator > > | Cache
typedef Cache::iterator | CacheIterator

## Public Member Functions

| LRUCache (size_t c)
bool | hasKey (const KeyT &k)
CacheItemT & | get (const KeyT &k)
void | touch (const KeyT &key)
bool | insert (const KeyT &key, const CacheItemT &value)
void | setCapacity (size_t capacity)
CacheItemT & | tailItem ()
size_t | sizeOf (const CacheItemT &value)
bool | evict (int item_count=1)

## Public Attributes

size_t | capacity_
size_t | size_
KeyIndex | key_index_
Cache | cache_

## Detailed Description

### template<typename KeyT, typename CacheItemT>
class LRUCache< KeyT, CacheItemT >

Definition at line 27 of file lru_cache.hpp.

## Member Typedef Documentation

## Cache

template<typename KeyT , typename CacheItemT >

typedef std::map<KeyT, std::pair<CacheItemT, typename KeyIndex::iterator> > LRUCache< KeyT, CacheItemT >::Cache

Definition at line 34 of file lru_cache.hpp.

## CacheIterator

template<typename KeyT , typename CacheItemT >

typedef Cache::iterator LRUCache< KeyT, CacheItemT >::CacheIterator

Definition at line 35 of file lru_cache.hpp.

## KeyIndex

template<typename KeyT , typename CacheItemT >

typedef std::list<KeyT> LRUCache< KeyT, CacheItemT >::KeyIndex

Definition at line 31 of file lru_cache.hpp.

## KeyIndexIterator

template<typename KeyT , typename CacheItemT >

typedef KeyIndex::iterator LRUCache< KeyT, CacheItemT >::KeyIndexIterator

Definition at line 32 of file lru_cache.hpp.

## Constructor & Destructor Documentation

## LRUCache()

template<typename KeyT , typename CacheItemT >

LRUCache< KeyT, CacheItemT >::LRUCache | ( | size_t | c | ) |

inline

Definition at line 37 of file lru_cache.hpp.

## Member Function Documentation

## evict()

template<typename KeyT , typename CacheItemT >

bool LRUCache< KeyT, CacheItemT >::evict | ( | int | item_count = `1` | ) |

inline

Definition at line 145 of file lru_cache.hpp.

## get()

template<typename KeyT , typename CacheItemT >

CacheItemT& LRUCache< KeyT, CacheItemT >::get | ( | const KeyT & | k | ) |

inline

Definition at line 50 of file lru_cache.hpp.

## hasKey()

template<typename KeyT , typename CacheItemT >

bool LRUCache< KeyT, CacheItemT >::hasKey | ( | const KeyT & | k | ) |

inline

Definition at line 44 of file lru_cache.hpp.

## insert()

template<typename KeyT , typename CacheItemT >

bool LRUCache< KeyT, CacheItemT >::insert | ( | const KeyT & | key,
|  | const CacheItemT & | value
| ) |  |

inline

Definition at line 76 of file lru_cache.hpp.

## setCapacity()

template<typename KeyT , typename CacheItemT >

void LRUCache< KeyT, CacheItemT >::setCapacity | ( | size_t | capacity | ) |

inline

Definition at line 125 of file lru_cache.hpp.

## sizeOf()

template<typename KeyT , typename CacheItemT >

size_t LRUCache< KeyT, CacheItemT >::sizeOf | ( | const CacheItemT & | value | ) |

inline

Definition at line 138 of file lru_cache.hpp.

## tailItem()

template<typename KeyT , typename CacheItemT >

CacheItemT& LRUCache< KeyT, CacheItemT >::tailItem | ( |  | ) |

inline

Definition at line 131 of file lru_cache.hpp.

## touch()

template<typename KeyT , typename CacheItemT >

void LRUCache< KeyT, CacheItemT >::touch | ( | const KeyT & | key | ) |

inline

Definition at line 64 of file lru_cache.hpp.

## Member Data Documentation

## cache_

template<typename KeyT , typename CacheItemT >

Cache LRUCache< KeyT, CacheItemT >::cache_

Definition at line 175 of file lru_cache.hpp.

## capacity_

template<typename KeyT , typename CacheItemT >

size_t LRUCache< KeyT, CacheItemT >::capacity_

Definition at line 166 of file lru_cache.hpp.

## key_index_

template<typename KeyT , typename CacheItemT >

KeyIndex LRUCache< KeyT, CacheItemT >::key_index_

Definition at line 172 of file lru_cache.hpp.

## size_

template<typename KeyT , typename CacheItemT >

size_t LRUCache< KeyT, CacheItemT >::size_

Definition at line 169 of file lru_cache.hpp.

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

- /build/pcl-qv3n_B/pcl-1.8.1+dfsg1/outofcore/include/pcl/outofcore/impl/lru_cache.hpp