Anklang C++ API 0.0.0
Loading...
Searching...
No Matches
FastMemArray< T, ALIGNMENT >

#include "memory.hh"

Public Member Functions

T &at (size_t n)
const T &at (size_t n) const
T *begin ()
T *end ()
FastMemArray (const std::vector< T > &elements)
FastMemArray (size_t n_elements)
T &operator[] (size_t n)
const T &operator[] (size_t n) const
size_tsize () const
~FastMemArray ()

Protected Member Functions

voidrange_check (size_t n) const

Detailed Description

template<typename T, size_t ALIGNMENT = FastMemory::cache_line_size>
class Ase::FastMemArray< T, ALIGNMENT >

Array with cache-line-alignment containing a fixed numer of PODs.

Constructor & Destructor Documentation

FastMemArray() [1/2]

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
FastMemArray ( size_t n_elements)

FastMemArray() [2/2]

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
FastMemArray ( const std::vector< T > & elements)

~FastMemArray()

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
~FastMemArray ( )

Member Function Documentation

range_check()

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
void range_check ( size_t n) const
protected

begin()

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
T * begin ( )

end()

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
T * end ( )

size()

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
size_t size ( ) const

operator[]() [1/2]

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
T & operator[] ( size_t n)

operator[]() [2/2]

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
const T & operator[] ( size_t n) const

at() [1/2]

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
T & at ( size_t n)

at() [2/2]

template<typename T , size_t ALIGNMENT = FastMemory::cache_line_size>
const T & at ( size_t n) const