Pyrogenesis  13997
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | Private Types | Private Member Functions | List of all members
SparseGrid< T > Class Template Reference

Similar to Grid, except optimised for sparse usage (the grid is subdivided into buckets whose contents are only initialised on demand, to save on memset cost). More...

#include <Grid.h>

Public Member Functions

 SparseGrid (u16 w, u16 h)
 
 ~SparseGrid ()
 
void reset ()
 
void set (int i, int j, const T &value)
 
Tget (int i, int j)
 

Public Attributes

u16 m_W
 
u16 m_H
 
u16 m_BW
 
u16 m_BH
 
T ** m_Data
 
size_t m_DirtyID
 

Private Types

enum  { BucketBits = 4, BucketSize = 1 << BucketBits }
 

Private Member Functions

 NONCOPYABLE (SparseGrid)
 
TGetBucket (int i, int j)
 

Detailed Description

template<typename T>
class SparseGrid< T >

Similar to Grid, except optimised for sparse usage (the grid is subdivided into buckets whose contents are only initialised on demand, to save on memset cost).

Definition at line 112 of file Grid.h.

Member Enumeration Documentation

template<typename T >
anonymous enum
private
Enumerator
BucketBits 
BucketSize 

Definition at line 116 of file Grid.h.

Constructor & Destructor Documentation

template<typename T >
SparseGrid< T >::SparseGrid ( u16  w,
u16  h 
)
inline

Definition at line 130 of file Grid.h.

template<typename T >
SparseGrid< T >::~SparseGrid ( )
inline

Definition at line 141 of file Grid.h.

Member Function Documentation

template<typename T >
T& SparseGrid< T >::get ( int  i,
int  j 
)
inline

Definition at line 163 of file Grid.h.

template<typename T >
T* SparseGrid< T >::GetBucket ( int  i,
int  j 
)
inlineprivate

Definition at line 118 of file Grid.h.

template<typename T >
SparseGrid< T >::NONCOPYABLE ( SparseGrid< T )
private
template<typename T >
void SparseGrid< T >::reset ( )
inline

Definition at line 147 of file Grid.h.

template<typename T >
void SparseGrid< T >::set ( int  i,
int  j,
const T value 
)
inline

Definition at line 155 of file Grid.h.

Member Data Documentation

template<typename T >
u16 SparseGrid< T >::m_BH

Definition at line 172 of file Grid.h.

template<typename T >
u16 SparseGrid< T >::m_BW

Definition at line 172 of file Grid.h.

template<typename T >
T** SparseGrid< T >::m_Data

Definition at line 173 of file Grid.h.

template<typename T >
size_t SparseGrid< T >::m_DirtyID

Definition at line 175 of file Grid.h.

template<typename T >
u16 SparseGrid< T >::m_H

Definition at line 171 of file Grid.h.

template<typename T >
u16 SparseGrid< T >::m_W

Definition at line 171 of file Grid.h.


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