STXXL  1.4-dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
stxxl::lru_pager< npages_ > Class Template Reference

Detailed Description

template<unsigned npages_ = 0>
class stxxl::lru_pager< npages_ >

Pager with LRU replacement strategy.

Definition at line 66 of file pager.h.

+ Inheritance diagram for stxxl::lru_pager< npages_ >:
+ Collaboration diagram for stxxl::lru_pager< npages_ >:

Public Member Functions

 lru_pager (size_type num_pages=n_pages)
 
void hit (size_type ipage)
 
size_type kick ()
 
size_type size () const
 
void swap (lru_pager &obj)
 

Private Types

enum  { n_pages = npages_ }
 
typedef std::list< size_typelist_type
 
typedef unsigned_type size_type
 

Private Attributes

list_type history
 
simple_vector
< list_type::iterator > 
history_entry
 

Additional Inherited Members

- Private Member Functions inherited from stxxl::noncopyable
 noncopyable ()
 

Member Typedef Documentation

template<unsigned npages_ = 0>
typedef std::list<size_type> stxxl::lru_pager< npages_ >::list_type
private

Definition at line 71 of file pager.h.

template<unsigned npages_ = 0>
typedef unsigned_type stxxl::lru_pager< npages_ >::size_type
private

Definition at line 70 of file pager.h.

Member Enumeration Documentation

template<unsigned npages_ = 0>
anonymous enum
private
Enumerator
n_pages 

Definition at line 68 of file pager.h.

Constructor & Destructor Documentation

template<unsigned npages_ = 0>
stxxl::lru_pager< npages_ >::lru_pager ( size_type  num_pages = n_pages)
inline

Definition at line 77 of file pager.h.

Member Function Documentation

template<unsigned npages_ = 0>
void stxxl::lru_pager< npages_ >::hit ( size_type  ipage)
inline

Definition at line 88 of file pager.h.

template<unsigned npages_ = 0>
size_type stxxl::lru_pager< npages_ >::kick ( )
inline

Definition at line 83 of file pager.h.

template<unsigned npages_ = 0>
size_type stxxl::lru_pager< npages_ >::size ( ) const
inline

Definition at line 100 of file pager.h.

template<unsigned npages_ = 0>
void stxxl::lru_pager< npages_ >::swap ( lru_pager< npages_ > &  obj)
inline

Member Data Documentation

template<unsigned npages_ = 0>
list_type stxxl::lru_pager< npages_ >::history
private

Definition at line 73 of file pager.h.

Referenced by stxxl::lru_pager< npages_ >::swap().

template<unsigned npages_ = 0>
simple_vector<list_type::iterator> stxxl::lru_pager< npages_ >::history_entry
private

Definition at line 74 of file pager.h.

Referenced by stxxl::lru_pager< npages_ >::swap().


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