cajun::grid_base_t Class Reference

#include <grid_base.H>

Inheritance diagram for cajun::grid_base_t:
cajun::grid_t< CELL_t >

List of all members.

Classes

class  iterator_base_t
struct  key_hash_t
struct  key_t
class  tile_base_t

Public Member Functions

 grid_base_t ()
void lru_limit (unsigned limit_)
void lru_update ()
void lru_flush ()

Protected Types

typedef HashMap< key_t,
tile_base_t *, key_hash_t
index_t

Protected Member Functions

void split_coord (int coord_, int &tile_coord_, int &cell_coord_)
virtual ~grid_base_t ()
void find (iterator_base_t *iter_, int x_, int y_)
virtual tile_base_tcreate_tile ()=0

Protected Attributes

index_t m_index

Static Protected Attributes

static int const TILE_SIZE = 32

Private Member Functions

void init_tile (int tx_, int ty_)
void use_tile (tile_base_t *tile_)

Private Attributes

unsigned m_lru_limit
unsigned m_lru_sequence
std::list< tile_base_t * > m_lru_list

Member Typedef Documentation

typedef HashMap<key_t, tile_base_t *, key_hash_t> cajun::grid_base_t::index_t [protected]

Constructor & Destructor Documentation

cajun::grid_base_t::grid_base_t (  )  [inline]
grid_base_t::~grid_base_t (  )  [protected, virtual]

References m_index.


Member Function Documentation

virtual tile_base_t* cajun::grid_base_t::create_tile (  )  [protected, pure virtual]

Implemented in cajun::grid_t< CELL_t >.

Referenced by init_tile().

void grid_base_t::find ( iterator_base_t iter_,
int  x_,
int  y_ 
) [protected]
void grid_base_t::init_tile ( int  tx_,
int  ty_ 
) [private]
void grid_base_t::lru_flush (  ) 
void cajun::grid_base_t::lru_limit ( unsigned  limit_  )  [inline]

References m_lru_limit.

void cajun::grid_base_t::lru_update (  )  [inline]

References m_lru_sequence.

void cajun::grid_base_t::split_coord ( int  coord_,
int &  tile_coord_,
int &  cell_coord_ 
) [inline, protected]

References TILE_SIZE.

Referenced by find().

void cajun::grid_base_t::use_tile ( tile_base_t tile_  )  [inline, private]

Member Data Documentation

unsigned cajun::grid_base_t::m_lru_limit [private]

Referenced by lru_flush(), and lru_limit().

Referenced by init_tile(), lru_flush(), and use_tile().

int const cajun::grid_base_t::TILE_SIZE = 32 [static, protected]

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

Generated on Fri Apr 9 10:45:11 2010 for cbutils by  doxygen 1.6.1