Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
Landlord< Key, Entry, McdCalc > Class Template Reference

#include <cache_adt.h>

Collaboration diagram for Landlord< Key, Entry, McdCalc >:

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

◆ MapCIt

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

◆ MapIt

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

◆ add()

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

◆ add_()

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

◆ charge()

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

◆ charge_all()

template<typename Key , typename Entry , template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::charge_all ( float  delta)
inlineprotected

◆ empty()

template<typename Key , typename Entry , template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
bool Landlord< Key, Entry, McdCalc >::empty ( ) const
inline

◆ find()

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

◆ on_access()

template<typename Key , typename Entry , template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::on_access ( Entry entry)
inline

◆ remove()

template<typename Key , typename Entry , template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::remove ( const Key &  key)
inline

◆ remove_()

template<typename Key , typename Entry , template< class Entry_, class Entries > class McdCalc = McdCalc_Cached>
void Landlord< Key, Entry, McdCalc >::remove_ ( MapIt  it)
inlineprotected

◆ remove_least_valuable()

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

◆ should_evict()

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

◆ map

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

◆ mcd_calc

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: