multi_arr< T, d, ALLOC, lgBC > Class Template Reference

#include <container_classes.h>

Collaboration diagram for multi_arr< T, d, ALLOC, lgBC >:

Collaboration graph
[legend]

Public Types

typedef random_access_iterator_tag iterator_category
typedef T value_type
typedef T & reference
typedef const T & const_reference
typedef T * pointer
typedef const T * const_pointer
typedef size_t size_type
typedef ptrdiff_t difference_type
typedef pntr< T, d, ALLOC,
lgBC > 
iterator
typedef const_pntr< T, d,
ALLOC, lgBC > 
const_iterator

Public Member Functions

 multi_arr ()
 multi_arr (const multi_geom< d, ALLOC, lgBC > &g)
 multi_arr (size_type d1, size_type d2, size_type d3=0, size_type d4=0, size_type d5=0, size_type d6=0)
 ~multi_arr ()
void clear ()
const multi_arroperator= (const multi_arr &m)
void zero ()
void invalidate ()
void state_do (FILE *io, bool lgGet)
void dump_state (FILE *out) const
void restore_state (FILE *in)
void reserve (size_type i1, size_type i2=0, size_type i3=0, size_type i4=0, size_type i5=0, size_type i6=0)
void alloc ()
void alloc (const multi_geom< d, ALLOC, lgBC > &g)
void alloc (size_type d1, size_type d2, size_type d3=0, size_type d4=0, size_type d5=0, size_type d6=0)
void alloc (size_type index[])
const n_pointer< T, d, ALLOC,
lgBC > 
n_ptr ()
const const_n_pointer< T,
d, ALLOC, lgBC > 
n_ptr () const
const n_pointer< T, d-1, ALLOC,
lgBC > 
operator[] (size_type i)
const const_n_pointer< T,
d-1, ALLOC, lgBC > 
operator[] (size_type i) const
reference at (size_type i1, size_type i2)
const_reference at (size_type i1, size_type i2) const
reference at (size_type i1, size_type i2, size_type i3)
const_reference at (size_type i1, size_type i2, size_type i3) const
reference at (size_type i1, size_type i2, size_type i3, size_type i4)
const_reference at (size_type i1, size_type i2, size_type i3, size_type i4) const
reference at (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5)
const_reference at (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5) const
reference at (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5, size_type i6)
const_reference at (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5, size_type i6) const
iterator ptr (size_type i1, size_type i2)
const_iterator ptr (size_type i1, size_type i2) const
iterator ptr (size_type i1, size_type i2, size_type i3)
const_iterator ptr (size_type i1, size_type i2, size_type i3) const
iterator ptr (size_type i1, size_type i2, size_type i3, size_type i4)
const_iterator ptr (size_type i1, size_type i2, size_type i3, size_type i4) const
iterator ptr (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5)
const_iterator ptr (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5) const
iterator ptr (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5, size_type i6)
const_iterator ptr (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5, size_type i6) const
iterator begin (size_type i1)
const_iterator begin (size_type i1) const
iterator begin (size_type i1, size_type i2)
const_iterator begin (size_type i1, size_type i2) const
iterator begin (size_type i1, size_type i2, size_type i3)
const_iterator begin (size_type i1, size_type i2, size_type i3) const
iterator begin (size_type i1, size_type i2, size_type i3, size_type i4)
const_iterator begin (size_type i1, size_type i2, size_type i3, size_type i4) const
iterator begin (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5)
const_iterator begin (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5) const
iterator end (size_type i1)
const_iterator end (size_type i1) const
iterator end (size_type i1, size_type i2)
const_iterator end (size_type i1, size_type i2) const
iterator end (size_type i1, size_type i2, size_type i3)
const_iterator end (size_type i1, size_type i2, size_type i3) const
iterator end (size_type i1, size_type i2, size_type i3, size_type i4)
const_iterator end (size_type i1, size_type i2, size_type i3, size_type i4) const
iterator end (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5)
const_iterator end (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5) const
reference front (size_type i1)
const_reference front (size_type i1) const
reference front (size_type i1, size_type i2)
const_reference front (size_type i1, size_type i2) const
reference front (size_type i1, size_type i2, size_type i3)
const_reference front (size_type i1, size_type i2, size_type i3) const
reference front (size_type i1, size_type i2, size_type i3, size_type i4)
const_reference front (size_type i1, size_type i2, size_type i3, size_type i4) const
reference front (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5)
const_reference front (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5) const
reference back (size_type i1)
const_reference back (size_type i1) const
reference back (size_type i1, size_type i2)
const_reference back (size_type i1, size_type i2) const
reference back (size_type i1, size_type i2, size_type i3)
const_reference back (size_type i1, size_type i2, size_type i3) const
reference back (size_type i1, size_type i2, size_type i3, size_type i4)
const_reference back (size_type i1, size_type i2, size_type i3, size_type i4) const
reference back (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5)
const_reference back (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5) const
size_type size () const
size_type capacity () const
bool empty () const
pointer data ()
const_pointer data () const
const multi_geom< d, ALLOC,
lgBC > & 
clone () const
valarray< T > & vals ()
const valarray< T > & vals () const

Private Member Functions

void p_clear0 ()
void p_clear1 ()
void p_setupArray (size_type n1[], size_type n2[], const tree_vec *g, int l)
iterator p_iterator (size_type i1, size_type i2) const
iterator p_iterator_bc (size_type i1, size_type i2) const
iterator p_iterator (size_type i1, size_type i2, size_type i3) const
iterator p_iterator_bc (size_type i1, size_type i2, size_type i3) const
iterator p_iterator (size_type i1, size_type i2, size_type i3, size_type i4) const
iterator p_iterator_bc (size_type i1, size_type i2, size_type i3, size_type i4) const
iterator p_iterator (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5) const
iterator p_iterator_bc (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5) const
iterator p_iterator (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5, size_type i6) const
iterator p_iterator_bc (size_type i1, size_type i2, size_type i3, size_type i4, size_type i5, size_type i6) const

Private Attributes

multi_geom< d, ALLOC, lgBC > p_g
T ** p_psl [d-1]
valarray< T > p_dsl
T * p_ptr
T ** p_ptr2
T *** p_ptr3
T **** p_ptr4
T ***** p_ptr5
T ****** p_ptr6

Static Private Attributes

static const size_type npos = static_cast<size_type>(-1)

Detailed Description

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
class multi_arr< T, d, ALLOC, lgBC >

multi_arr: generic class for allocating multidimensional arrays. A typical example of its use could be:

multi_arr<double,3> arr; // define a placeholder for the array the first argument is the type of data it holds the second argument is the number of dimensions (between 2 and 6)

arr.alloc(3,4,2); // this will allocate a 3x4x2 block of doubles memory will be allocated by new[] so will be initialized by the constructor, if present

multi_arr<double,3> arr(3,4,2); // shorthand for the above

The following is an alternative way of allocating the array. It is very similar to the pre-multi_arr way of allocating arrays. In ARPA_TYPE arrays this will help you save memory since only the data elements that are really needed will be allocated. In C_TYPE allocation, the smallest rectangular block will be allocated that can hold all the data. This will use more memory in return for somewhat improved CPU speed. Tests carried out in 2007 showed that the speed advantage of C_TYPE arrays was only 1 to 2 percent. Hence the memory savings were deemed more important and ARPA_TYPE arrays were made the default. However, C_TYPE arrays are guaranteed to be compatible with C code, so these should be used if they are meant to be passed on to C library routines. The example below allocates a triangular matrix.

arr.reserve(3); for( int i=0, i < 3; ++i ) { arr.reserve( i, i+1 ); // note that size does not need to be constant! for( int j=0, j < i+1; ++j ) arr.reserve( i, j, j+1 ); } arr.alloc();

these are plausible ways to use the multi_arr class:

arr.invalidate(); // this will set float or double arrays to all SNaN it will set any other type array to all 0xff bytes. arr.zero(); // this will set the array to all zero

arr[0][0][0] = 1.; arr[0][0][1] = 2.; double x = arr[0][0][0]*arr[0][0][1];

arr.state_do(io,lgRead); // this will write/read the array to/from a state file depending on the boolean flag lgRead; io should point to a file that is already opened for binary writing/reading the file will remain open after access. this allows you to use state_do() for several arrays in a row

multi_arr<double,2,C_TYPE> a(10,10); // allocate C_TYPE array C_library_routine( a.data(), ... ); // and call C library routine with it

arr.clear(); // this will deallocate the array the destructor will also automatically deallocate

the multi_arr class comes with iterators that allow you to speed up memory access even further. using iterators as shown below will generally speed up the code significantly since it avoids calculating the array index over and over inside the body of the loop. especially in tight loops over arrays with high dimension this can become a significant overhead! a const_iterator is also supplied for read-only access, but no reverse_iterators. you can define and initialize an iterator as follows

multi_arr<double,3>::iterator p = arr.begin(n,k);

the notation multi_arr<double,3>::iterator is rather cumbersome, so it may be convenient to define something like:

typedef multi_arr<double,3>::iterator md3i; typedef multi_arr<double,3>::const_iterator md3ci;

all the possible combinations for bool, long, realnum and double multi_arr's are predefined below.

this is a plausible way to use an iterator:

for( int k=0; i < 4; k++ ) { for( md3i p = arr.begin(n,k); p != arr.end(n,k); ++p ) p = 3.; }

however, since many compilers have a hard time figuring out that arr.end() has no side effects, it is better to do the following:

for( int k=0; i < 4; k++ ) { md3i end = arr.end(n,k); for( md3i p = arr.begin(n,k); p != end; ++p ) p = 3.; }

NB NB -- the memory layout may change in future editions, so user code should not make any assumptions about the layout. the only exception is that the user may safely assume that for the default memory layout the last index runs over contiguous memory. this allows for efficient iterator access. the example above was OK since arr[n][k][0] and arr[n][k][1] are guaranteed to be adjacent. however the next example is not OK:

!! WRONG !!, arr[n][k-1][1] and arr[n][k][0] may NOT be adjacent

md3i p = arr.begin(n,0); for( int k=0; i < 4; k++ ) for( int i=0; i < 2; i++ ) p++ = 3.; // ERROR, this may segfault. bounds checking will catch this (see below for enabling this)

you can also use iterators for array-like access via []:

double sum = 0.; for( int k=0; i < 4; k++ ) { md3ci p = arr.begin(n,k); for( int i=0; i < 2; i++ ) sum += p[i]; }

last, but not least, the multi_arr class supports array bounds checking, both for direct access through the indexing method, as well as iterator access. To enable bounds checking, simply define the preprocessor macro BOUNDS_CHECK during compilation. the resulting code will be MUCH slower, so this should only be used as a debugging tool.

Definition at line 901 of file container_classes.h.


Member Typedef Documentation

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
typedef const_pntr<T,d,ALLOC,lgBC> multi_arr< T, d, ALLOC, lgBC >::const_iterator

Definition at line 924 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
typedef const T* multi_arr< T, d, ALLOC, lgBC >::const_pointer

Definition at line 920 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
typedef const T& multi_arr< T, d, ALLOC, lgBC >::const_reference

Definition at line 918 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
typedef ptrdiff_t multi_arr< T, d, ALLOC, lgBC >::difference_type

Definition at line 922 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
typedef pntr<T,d,ALLOC,lgBC> multi_arr< T, d, ALLOC, lgBC >::iterator

Definition at line 923 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
typedef random_access_iterator_tag multi_arr< T, d, ALLOC, lgBC >::iterator_category

Definition at line 915 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
typedef T* multi_arr< T, d, ALLOC, lgBC >::pointer

Definition at line 919 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
typedef T& multi_arr< T, d, ALLOC, lgBC >::reference

Definition at line 917 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
typedef size_t multi_arr< T, d, ALLOC, lgBC >::size_type

Definition at line 921 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
typedef T multi_arr< T, d, ALLOC, lgBC >::value_type

Definition at line 916 of file container_classes.h.


Constructor & Destructor Documentation

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
multi_arr< T, d, ALLOC, lgBC >::multi_arr (  )  [inline]

Definition at line 949 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
multi_arr< T, d, ALLOC, lgBC >::multi_arr ( const multi_geom< d, ALLOC, lgBC > &  g  )  [inline]

Definition at line 953 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
multi_arr< T, d, ALLOC, lgBC >::multi_arr ( size_type  d1,
size_type  d2,
size_type  d3 = 0,
size_type  d4 = 0,
size_type  d5 = 0,
size_type  d6 = 0 
) [inline]

Definition at line 958 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
multi_arr< T, d, ALLOC, lgBC >::~multi_arr (  )  [inline]

Definition at line 964 of file container_classes.h.


Member Function Documentation

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::alloc ( size_type  index[]  )  [inline]

Definition at line 1081 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::alloc ( size_type  d1,
size_type  d2,
size_type  d3 = 0,
size_type  d4 = 0,
size_type  d5 = 0,
size_type  d6 = 0 
) [inline]

Definition at line 1076 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::alloc ( const multi_geom< d, ALLOC, lgBC > &  g  )  [inline]

Definition at line 1066 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::alloc (  )  [inline]

Definition at line 1020 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), H2_Create(), iso_level(), multi_arr< float, 3 >::multi_arr(), multi_arr< float, 3 >::operator=(), and ParseCrashDo().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::at ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5,
size_type  i6 
) const [inline]

Definition at line 1343 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::at ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5,
size_type  i6 
) [inline]

Definition at line 1336 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::at ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) const [inline]

Definition at line 1329 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::at ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) [inline]

Definition at line 1322 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::at ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) const [inline]

Definition at line 1315 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::at ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) [inline]

Definition at line 1308 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::at ( size_type  i1,
size_type  i2,
size_type  i3 
) const [inline]

Definition at line 1301 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::at ( size_type  i1,
size_type  i2,
size_type  i3 
) [inline]

Definition at line 1294 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::at ( size_type  i1,
size_type  i2 
) const [inline]

Definition at line 1287 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::at ( size_type  i1,
size_type  i2 
) [inline]

Definition at line 1280 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::back ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) const [inline]

Definition at line 1621 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::back ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) [inline]

Definition at line 1617 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::back ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) const [inline]

Definition at line 1613 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::back ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) [inline]

Definition at line 1609 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::back ( size_type  i1,
size_type  i2,
size_type  i3 
) const [inline]

Definition at line 1605 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::back ( size_type  i1,
size_type  i2,
size_type  i3 
) [inline]

Definition at line 1601 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::back ( size_type  i1,
size_type  i2 
) const [inline]

Definition at line 1597 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::back ( size_type  i1,
size_type  i2 
) [inline]

Definition at line 1593 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::back ( size_type  i1  )  const [inline]

Definition at line 1589 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::back ( size_type  i1  )  [inline]

Definition at line 1585 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::begin ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) const [inline]

Definition at line 1428 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::begin ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) [inline]

Definition at line 1424 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::begin ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) const [inline]

Definition at line 1420 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::begin ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) [inline]

Definition at line 1416 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::begin ( size_type  i1,
size_type  i2,
size_type  i3 
) const [inline]

Definition at line 1412 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::begin ( size_type  i1,
size_type  i2,
size_type  i3 
) [inline]

Definition at line 1408 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::begin ( size_type  i1,
size_type  i2 
) const [inline]

Definition at line 1404 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::begin ( size_type  i1,
size_type  i2 
) [inline]

Definition at line 1400 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::begin ( size_type  i1  )  const [inline]

Definition at line 1396 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::begin ( size_type  i1  )  [inline]

Definition at line 1392 of file container_classes.h.

Referenced by multi_arr< float, 3 >::front().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
size_type multi_arr< T, d, ALLOC, lgBC >::capacity (  )  const [inline]

Definition at line 1630 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::clear (  )  [inline]

Definition at line 968 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), multi_arr< float, 3 >::operator=(), and ParseCrashDo().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const multi_geom<d,ALLOC,lgBC>& multi_arr< T, d, ALLOC, lgBC >::clone (  )  const [inline]

Definition at line 1649 of file container_classes.h.

Referenced by H2_Create().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_pointer multi_arr< T, d, ALLOC, lgBC >::data (  )  const [inline]

Definition at line 1643 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
pointer multi_arr< T, d, ALLOC, lgBC >::data (  )  [inline]

Definition at line 1639 of file container_classes.h.

Referenced by multi_arr< float, 3 >::dump_state(), multi_arr< float, 3 >::invalidate(), multi_arr< float, 3 >::restore_state(), and multi_arr< float, 3 >::zero().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::dump_state ( FILE *  out  )  const [inline]

Definition at line 1002 of file container_classes.h.

Referenced by multi_arr< float, 3 >::state_do().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
bool multi_arr< T, d, ALLOC, lgBC >::empty (  )  const [inline]

Definition at line 1634 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::end ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) const [inline]

Definition at line 1532 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::end ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) [inline]

Definition at line 1521 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::end ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) const [inline]

Definition at line 1510 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::end ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) [inline]

Definition at line 1499 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::end ( size_type  i1,
size_type  i2,
size_type  i3 
) const [inline]

Definition at line 1488 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::end ( size_type  i1,
size_type  i2,
size_type  i3 
) [inline]

Definition at line 1477 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::end ( size_type  i1,
size_type  i2 
) const [inline]

Definition at line 1466 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::end ( size_type  i1,
size_type  i2 
) [inline]

Definition at line 1455 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::end ( size_type  i1  )  const [inline]

Definition at line 1444 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::end ( size_type  i1  )  [inline]

Definition at line 1433 of file container_classes.h.

Referenced by multi_arr< float, 3 >::back().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::front ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) const [inline]

Definition at line 1580 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::front ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) [inline]

Definition at line 1576 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::front ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) const [inline]

Definition at line 1572 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::front ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) [inline]

Definition at line 1568 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::front ( size_type  i1,
size_type  i2,
size_type  i3 
) const [inline]

Definition at line 1564 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::front ( size_type  i1,
size_type  i2,
size_type  i3 
) [inline]

Definition at line 1560 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::front ( size_type  i1,
size_type  i2 
) const [inline]

Definition at line 1556 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::front ( size_type  i1,
size_type  i2 
) [inline]

Definition at line 1552 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_reference multi_arr< T, d, ALLOC, lgBC >::front ( size_type  i1  )  const [inline]

Definition at line 1548 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
reference multi_arr< T, d, ALLOC, lgBC >::front ( size_type  i1  )  [inline]

Definition at line 1544 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::invalidate (  )  [inline]

Definition at line 989 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const const_n_pointer<T,d,ALLOC,lgBC> multi_arr< T, d, ALLOC, lgBC >::n_ptr (  )  const [inline]

Definition at line 1267 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const n_pointer<T,d,ALLOC,lgBC> multi_arr< T, d, ALLOC, lgBC >::n_ptr (  )  [inline]

Definition at line 1263 of file container_classes.h.

Referenced by multi_arr< float, 3 >::operator[]().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const multi_arr& multi_arr< T, d, ALLOC, lgBC >::operator= ( const multi_arr< T, d, ALLOC, lgBC > &  m  )  [inline]

Definition at line 973 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const const_n_pointer<T,d-1,ALLOC,lgBC> multi_arr< T, d, ALLOC, lgBC >::operator[] ( size_type  i  )  const [inline]

Definition at line 1275 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const n_pointer<T,d-1,ALLOC,lgBC> multi_arr< T, d, ALLOC, lgBC >::operator[] ( size_type  i  )  [inline]

Definition at line 1271 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::p_clear0 (  )  [inline, private]

Definition at line 929 of file container_classes.h.

Referenced by multi_arr< float, 3 >::clear(), and multi_arr< float, 3 >::~multi_arr().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::p_clear1 (  )  [inline, private]

Definition at line 936 of file container_classes.h.

Referenced by multi_arr< float, 3 >::clear(), and multi_arr< float, 3 >::multi_arr().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::p_iterator ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5,
size_type  i6 
) const [inline, private]

Definition at line 1231 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::p_iterator ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) const [inline, private]

Definition at line 1201 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::p_iterator ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) const [inline, private]

Definition at line 1171 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::p_iterator ( size_type  i1,
size_type  i2,
size_type  i3 
) const [inline, private]

Definition at line 1141 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::p_iterator ( size_type  i1,
size_type  i2 
) const [inline, private]

Definition at line 1111 of file container_classes.h.

Referenced by multi_arr< float, 3 >::begin(), multi_arr< float, 3 >::end(), and multi_arr< float, 3 >::ptr().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::p_iterator_bc ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5,
size_type  i6 
) const [inline, private]

Definition at line 1245 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::p_iterator_bc ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) const [inline, private]

Definition at line 1215 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::p_iterator_bc ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) const [inline, private]

Definition at line 1185 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::p_iterator_bc ( size_type  i1,
size_type  i2,
size_type  i3 
) const [inline, private]

Definition at line 1155 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::p_iterator_bc ( size_type  i1,
size_type  i2 
) const [inline, private]

Definition at line 1125 of file container_classes.h.

Referenced by multi_arr< float, 3 >::p_iterator().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::p_setupArray ( size_type  n1[],
size_type  n2[],
const tree_vec g,
int  l 
) [inline, private]

Definition at line 1092 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), and multi_arr< float, 3 >::p_setupArray().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::ptr ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5,
size_type  i6 
) const [inline]

Definition at line 1387 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::ptr ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5,
size_type  i6 
) [inline]

Definition at line 1383 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::ptr ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) const [inline]

Definition at line 1379 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::ptr ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4,
size_type  i5 
) [inline]

Definition at line 1375 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::ptr ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) const [inline]

Definition at line 1371 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::ptr ( size_type  i1,
size_type  i2,
size_type  i3,
size_type  i4 
) [inline]

Definition at line 1367 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::ptr ( size_type  i1,
size_type  i2,
size_type  i3 
) const [inline]

Definition at line 1363 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::ptr ( size_type  i1,
size_type  i2,
size_type  i3 
) [inline]

Definition at line 1359 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const_iterator multi_arr< T, d, ALLOC, lgBC >::ptr ( size_type  i1,
size_type  i2 
) const [inline]

Definition at line 1355 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
iterator multi_arr< T, d, ALLOC, lgBC >::ptr ( size_type  i1,
size_type  i2 
) [inline]

Definition at line 1351 of file container_classes.h.

Referenced by ParseCrashDo().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::reserve ( size_type  i1,
size_type  i2 = 0,
size_type  i3 = 0,
size_type  i4 = 0,
size_type  i5 = 0,
size_type  i6 = 0 
) [inline]

Definition at line 1012 of file container_classes.h.

Referenced by H2_Create(), iso_allocate(), and ParseCrashDo().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::restore_state ( FILE *  in  )  [inline]

Definition at line 1007 of file container_classes.h.

Referenced by multi_arr< float, 3 >::state_do().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
size_type multi_arr< T, d, ALLOC, lgBC >::size (  )  const [inline]

Definition at line 1626 of file container_classes.h.

Referenced by multi_arr< float, 3 >::invalidate(), and multi_arr< float, 3 >::zero().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::state_do ( FILE *  io,
bool  lgGet 
) [inline]

Definition at line 994 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const valarray<T>& multi_arr< T, d, ALLOC, lgBC >::vals (  )  const [inline]

Definition at line 1658 of file container_classes.h.

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
valarray<T>& multi_arr< T, d, ALLOC, lgBC >::vals (  )  [inline]

Definition at line 1654 of file container_classes.h.

Referenced by multi_arr< float, 3 >::invalidate(), multi_arr< float, 3 >::operator=(), and multi_arr< float, 3 >::zero().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
void multi_arr< T, d, ALLOC, lgBC >::zero (  )  [inline]

Definition at line 984 of file container_classes.h.

Referenced by H2_Create().


Field Documentation

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
const size_type multi_arr< T, d, ALLOC, lgBC >::npos = static_cast<size_type>(-1) [static, private]

Definition at line 927 of file container_classes.h.

Referenced by multi_arr< float, 3 >::end(), and multi_arr< float, 3 >::p_iterator_bc().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
valarray<T> multi_arr< T, d, ALLOC, lgBC >::p_dsl [private]

Definition at line 906 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), multi_arr< float, 3 >::data(), multi_arr< float, 3 >::p_clear0(), multi_arr< float, 3 >::p_setupArray(), and multi_arr< float, 3 >::vals().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
multi_geom<d,ALLOC,lgBC> multi_arr< T, d, ALLOC, lgBC >::p_g [private]

Definition at line 904 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), multi_arr< float, 3 >::at(), multi_arr< float, 3 >::capacity(), multi_arr< float, 3 >::clone(), multi_arr< float, 3 >::dump_state(), multi_arr< float, 3 >::empty(), multi_arr< float, 3 >::end(), multi_arr< float, 3 >::invalidate(), multi_arr< float, 3 >::n_ptr(), multi_arr< float, 3 >::operator=(), multi_arr< float, 3 >::p_clear0(), multi_arr< float, 3 >::p_iterator_bc(), multi_arr< float, 3 >::reserve(), multi_arr< float, 3 >::restore_state(), multi_arr< float, 3 >::size(), and multi_arr< float, 3 >::zero().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
T** multi_arr< T, d, ALLOC, lgBC >::p_psl[d-1] [private]

Definition at line 905 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), multi_arr< float, 3 >::p_clear0(), multi_arr< float, 3 >::p_clear1(), and multi_arr< float, 3 >::p_setupArray().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
T* multi_arr< T, d, ALLOC, lgBC >::p_ptr [private]

Definition at line 907 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), multi_arr< float, 3 >::n_ptr(), and multi_arr< float, 3 >::p_clear1().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
T** multi_arr< T, d, ALLOC, lgBC >::p_ptr2 [private]

Definition at line 908 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), and multi_arr< float, 3 >::p_clear1().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
T*** multi_arr< T, d, ALLOC, lgBC >::p_ptr3 [private]

Definition at line 909 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), and multi_arr< float, 3 >::p_clear1().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
T**** multi_arr< T, d, ALLOC, lgBC >::p_ptr4 [private]

Definition at line 910 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), and multi_arr< float, 3 >::p_clear1().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
T***** multi_arr< T, d, ALLOC, lgBC >::p_ptr5 [private]

Definition at line 911 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), and multi_arr< float, 3 >::p_clear1().

template<class T, int d, mem_layout ALLOC = MEM_LAYOUT_VAL, bool lgBC = lgBOUNDSCHECKVAL>
T****** multi_arr< T, d, ALLOC, lgBC >::p_ptr6 [private]

Definition at line 912 of file container_classes.h.

Referenced by multi_arr< float, 3 >::alloc(), and multi_arr< float, 3 >::p_clear1().


The documentation for this class was generated from the following file:
Generated on Mon Feb 16 12:14:23 2009 for cloudy by  doxygen 1.4.7