Pyrogenesis  trunk
Classes | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
Landlord< Key, Entry, McdCalc > Class Template Reference

#include <cache_adt.h>

Collaboration diagram for Landlord< Key, Entry, McdCalc >:
Collaboration graph
[legend]

Classes

class  Map
 

Public Member Functions

bool empty () const
 
void add (const Key &key, const Entry &entry)
 
bool find (const Key &key, const Entry **pentry) const
 
void remove (const Key &key)
 
void on_access (Entry &entry)
 
void remove_least_valuable (std::list< Entry > &entry_list)
 

Protected Types

typedef Map::iterator MapIt
 
typedef Map::const_iterator MapCIt
 

Protected Member Functions

MapIt add_ (const Key &key, const Entry &entry)
 
void remove_ (MapIt it)
 
void charge (Entry &entry, float delta)
 
void charge_all (float delta)
 
bool should_evict (const Entry &entry)
 

Protected Attributes

Map map
 

Private Attributes

McdCalc< Entry, Mapmcd_calc
 

Member Typedef Documentation

template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
typedef Map::const_iterator Landlord< Key, Entry, McdCalc >::MapCIt
protected
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
typedef Map::iterator Landlord< Key, Entry, McdCalc >::MapIt
protected

Member Function Documentation

template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::add ( const Key &  key,
const Entry entry 
)
inline
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
MapIt Landlord< Key, Entry, McdCalc >::add_ ( const Key &  key,
const Entry entry 
)
inlineprotected
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::charge ( Entry entry,
float  delta 
)
inlineprotected
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::charge_all ( float  delta)
inlineprotected
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
bool Landlord< Key, Entry, McdCalc >::empty ( ) const
inline
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
bool Landlord< Key, Entry, McdCalc >::find ( const Key &  key,
const Entry **  pentry 
) const
inline
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::on_access ( Entry entry)
inline
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::remove ( const Key &  key)
inline
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::remove_ ( MapIt  it)
inlineprotected
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::remove_least_valuable ( std::list< Entry > &  entry_list)
inline
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
bool Landlord< Key, Entry, McdCalc >::should_evict ( const Entry entry)
inlineprotected

Member Data Documentation

template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
Map Landlord< Key, Entry, McdCalc >::map
protected
template<typename Key, typename Entry, template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
McdCalc<Entry, Map> Landlord< Key, Entry, McdCalc >::mcd_calc
private

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