InitializeUninitializedVector< T, I > Struct Template Reference

InitializeUninitializedVector is a simple functor with an N-D and 1-D version used for template meta-programs to initialize the first 'Dim' elems of the data in the given UninitializedVector. More...

#include <UninitializedVector.h>

List of all members.

Static Public Member Functions

template<class Elem >
static void initialize (Elem *buffer)
template<class Elem , class T1 >
static void initialize (Elem *buffer, T1 &a)
template<class Elem , class T1 , class T2 >
static void initialize (Elem *buffer, T1 &a, T2 &b)
template<class Elem , class T1 , class T2 , class T3 >
static void initialize (Elem *buffer, T1 &a, T2 &b, T3 &c)


Detailed Description

template<class T, int I>
struct InitializeUninitializedVector< T, I >

InitializeUninitializedVector is a simple functor with an N-D and 1-D version used for template meta-programs to initialize the first 'Dim' elems of the data in the given UninitializedVector.

It defines 'initialize which takes from 0 ... 3 arguments (along with the object storage) which are passed on to the objects when placement new is used. A general N-dimensional version calls the N-1-dimensional version; a specialization for the 0th index terminates the template recursion.

The first template parameter is the type of data to initialize; the second is index (0 ... Dim-1) which we are currently initializing.


Member Function Documentation

template<class T , int I>
template<class Elem >
static void InitializeUninitializedVector< T, I >::initialize ( Elem *  buffer  )  [inline, static]

template<class T , int I>
template<class Elem , class T1 >
static void InitializeUninitializedVector< T, I >::initialize ( Elem *  buffer,
T1 &  a 
) [inline, static]

template<class T , int I>
template<class Elem , class T1 , class T2 >
static void InitializeUninitializedVector< T, I >::initialize ( Elem *  buffer,
T1 &  a,
T2 &  b 
) [inline, static]

template<class T , int I>
template<class Elem , class T1 , class T2 , class T3 >
static void InitializeUninitializedVector< T, I >::initialize ( Elem *  buffer,
T1 &  a,
T2 &  b,
T3 &  c 
) [inline, static]


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

Generated on Wed Mar 16 06:20:15 2011 for FreePOOMA by  doxygen 1.5.9