Developer documentation

mmx::memory::linear_allocator< T, automatic > Struct Template Reference

#include <system_linear_allocator.h>

Classes

struct  automatic_dispatch
 

Public Types

typedef T data_t
 
typedef unsigned sz_t
 

Public Member Functions

void _chnkresize_ (sz_t nsz)
 
sz_t memuse ()
 
void reserve (sz_t nsz)
 
sz_t alloc (sz_t sz)
 
void free (sz_t sz)
 
void dec (sz_t sz)
 
void free ()
 
T * data (sz_t address, const automatic_dispatch< false > &) const
 
T * data (sz_t address, const automatic_dispatch< true > &)
 
T * data (sz_t address) const
 
 linear_allocator (unsigned n=0)
 
 ~linear_allocator ()
 

Public Attributes

data_tm_chnk
 
sz_t m_csz
 
sz_t m_nalloc
 

Static Public Attributes

static const sz_t block = 1024
 

Member Typedef Documentation

template<class T, bool automatic = false>
typedef T mmx::memory::linear_allocator< T, automatic >::data_t
template<class T, bool automatic = false>
typedef unsigned mmx::memory::linear_allocator< T, automatic >::sz_t

Constructor & Destructor Documentation

template<class T, bool automatic = false>
mmx::memory::linear_allocator< T, automatic >::linear_allocator ( unsigned  n = 0)
inline
template<class T, bool automatic = false>
mmx::memory::linear_allocator< T, automatic >::~linear_allocator ( )
inline

Member Function Documentation

template<class T, bool automatic = false>
void mmx::memory::linear_allocator< T, automatic >::_chnkresize_ ( sz_t  nsz)
inline
template<class T, bool automatic = false>
sz_t mmx::memory::linear_allocator< T, automatic >::alloc ( sz_t  sz)
inline
template<class T, bool automatic = false>
T* mmx::memory::linear_allocator< T, automatic >::data ( sz_t  address,
const automatic_dispatch< false > &   
) const
inline
template<class T, bool automatic = false>
T* mmx::memory::linear_allocator< T, automatic >::data ( sz_t  address,
const automatic_dispatch< true > &   
)
inline
template<class T, bool automatic = false>
T* mmx::memory::linear_allocator< T, automatic >::data ( sz_t  address) const
inline
template<class T, bool automatic = false>
void mmx::memory::linear_allocator< T, automatic >::dec ( sz_t  sz)
inline
template<class T, bool automatic = false>
void mmx::memory::linear_allocator< T, automatic >::free ( sz_t  sz)
inline
template<class T, bool automatic = false>
void mmx::memory::linear_allocator< T, automatic >::free ( )
inline
template<class T, bool automatic = false>
sz_t mmx::memory::linear_allocator< T, automatic >::memuse ( )
inline
template<class T, bool automatic = false>
void mmx::memory::linear_allocator< T, automatic >::reserve ( sz_t  nsz)
inline

Member Data Documentation

template<class T, bool automatic = false>
const sz_t mmx::memory::linear_allocator< T, automatic >::block = 1024
static
template<class T, bool automatic = false>
data_t* mmx::memory::linear_allocator< T, automatic >::m_chnk
template<class T, bool automatic = false>
sz_t mmx::memory::linear_allocator< T, automatic >::m_csz
template<class T, bool automatic = false>
sz_t mmx::memory::linear_allocator< T, automatic >::m_nalloc

The documentation for this struct was generated from the following file:
Home