cloudy  trunk
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
container_classes.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  basic_pntr< T, lgBC >
 
class  pntr< T, lgBC >
 pntr - interface class to replace normal pointers More...
 
class  const_pntr< T, lgBC >
 const_pntr - same as pntr, except that it replaces const pointers rather than normal pointers More...
 
struct  tree_vec
 tree_vec - a simple class to store the bounds checking information for multi_arr More...
 
class  multi_geom< d, ALLOC >
 
class  n_pointer< T, N, ALLOC, lgBC >
 
class  const_n_pointer< T, N, ALLOC, lgBC >
 
class  n_pointer< T, N, ARPA_TYPE, false >
 
class  n_pointer< T, N, C_TYPE, false >
 
class  n_pointer< T, 1, ARPA_TYPE, false >
 
class  n_pointer< T, 1, C_TYPE, false >
 
class  n_pointer< T, N, ARPA_TYPE, true >
 
class  n_pointer< T, N, C_TYPE, true >
 
class  n_pointer< T, 1, ARPA_TYPE, true >
 
class  n_pointer< T, 1, C_TYPE, true >
 
class  const_n_pointer< T, N, ARPA_TYPE, false >
 
class  const_n_pointer< T, N, C_TYPE, false >
 
class  const_n_pointer< T, 1, ARPA_TYPE, false >
 
class  const_n_pointer< T, 1, C_TYPE, false >
 
class  const_n_pointer< T, N, ARPA_TYPE, true >
 
class  const_n_pointer< T, N, C_TYPE, true >
 
class  const_n_pointer< T, 1, ARPA_TYPE, true >
 
class  const_n_pointer< T, 1, C_TYPE, true >
 
class  multi_arr< T, d, ALLOC, lgBC >
 
class  flex_arr< T, lgBC >
 

Macros

#define MEM_LAYOUT_VAL   ARPA_TYPE
 
#define INSTANTIATE_MULTI_ARR(TYPE, BC)
 

Typedefs

typedef multi_arr< bool, 2 >
::iterator 
mb2i
 
typedef multi_arr< bool, 2 >
::const_iterator 
mb2ci
 
typedef multi_arr< bool, 3 >
::iterator 
mb3i
 
typedef multi_arr< bool, 3 >
::const_iterator 
mb3ci
 
typedef multi_arr< bool, 4 >
::iterator 
mb4i
 
typedef multi_arr< bool, 4 >
::const_iterator 
mb4ci
 
typedef multi_arr< bool, 5 >
::iterator 
mb5i
 
typedef multi_arr< bool, 5 >
::const_iterator 
mb5ci
 
typedef multi_arr< bool, 6 >
::iterator 
mb6i
 
typedef multi_arr< bool, 6 >
::const_iterator 
mb6ci
 
typedef multi_arr< long, 2 >
::iterator 
ml2i
 
typedef multi_arr< long, 2 >
::const_iterator 
ml2ci
 
typedef multi_arr< long, 3 >
::iterator 
ml3i
 
typedef multi_arr< long, 3 >
::const_iterator 
ml3ci
 
typedef multi_arr< long, 4 >
::iterator 
ml4i
 
typedef multi_arr< long, 4 >
::const_iterator 
ml4ci
 
typedef multi_arr< long, 5 >
::iterator 
ml5i
 
typedef multi_arr< long, 5 >
::const_iterator 
ml5ci
 
typedef multi_arr< long, 6 >
::iterator 
ml6i
 
typedef multi_arr< long, 6 >
::const_iterator 
ml6ci
 
typedef multi_arr< realnum, 2 >
::iterator 
mr2i
 
typedef multi_arr< realnum, 2 >
::const_iterator 
mr2ci
 
typedef multi_arr< realnum, 3 >
::iterator 
mr3i
 
typedef multi_arr< realnum, 3 >
::const_iterator 
mr3ci
 
typedef multi_arr< realnum, 4 >
::iterator 
mr4i
 
typedef multi_arr< realnum, 4 >
::const_iterator 
mr4ci
 
typedef multi_arr< realnum, 5 >
::iterator 
mr5i
 
typedef multi_arr< realnum, 5 >
::const_iterator 
mr5ci
 
typedef multi_arr< realnum, 6 >
::iterator 
mr6i
 
typedef multi_arr< realnum, 6 >
::const_iterator 
mr6ci
 
typedef multi_arr< double, 2 >
::iterator 
md2i
 
typedef multi_arr< double, 2 >
::const_iterator 
md2ci
 
typedef multi_arr< double, 3 >
::iterator 
md3i
 
typedef multi_arr< double, 3 >
::const_iterator 
md3ci
 
typedef multi_arr< double, 4 >
::iterator 
md4i
 
typedef multi_arr< double, 4 >
::const_iterator 
md4ci
 
typedef multi_arr< double, 5 >
::iterator 
md5i
 
typedef multi_arr< double, 5 >
::const_iterator 
md5ci
 
typedef multi_arr< double, 6 >
::iterator 
md6i
 
typedef multi_arr< double, 6 >
::const_iterator 
md6ci
 
typedef flex_arr< bool >::iterator fabi
 
typedef flex_arr< bool >
::const_iterator 
fabci
 
typedef flex_arr< long >::iterator fali
 
typedef flex_arr< long >
::const_iterator 
falci
 
typedef flex_arr< realnum >
::iterator 
fari
 
typedef flex_arr< realnum >
::const_iterator 
farci
 
typedef flex_arr< double >
::iterator 
fadi
 
typedef flex_arr< double >
::const_iterator 
fadci
 

Enumerations

enum  mem_layout { ARPA_TYPE, C_TYPE, FLX_TYPE, ML_TOP }
 

Functions

void do_dump_state (const void *buf, size_t nelem, size_t size, FILE *out, int32 magic)
 
void do_restore_state (void *buf, size_t nelem, size_t size, FILE *in, int32 magic)
 
template<class T , bool lgBC>
const pntr< T, lgBC > operator+ (const ptrdiff_t n, const pntr< T, lgBC > &t)
 
template<class T , bool lgBC>
const const_pntr< T, lgBC > operator+ (const ptrdiff_t n, const const_pntr< T, lgBC > &t)
 

Variables

static const int32 MA_VERS [ML_TOP] = { 120070905, 220070803, 320071126 }
 

Macro Definition Documentation

#define INSTANTIATE_MULTI_ARR (   TYPE,
  BC 
)
Value:
template class pntr<TYPE,BC>; \
template class const_pntr<TYPE,BC>;
pntr - interface class to replace normal pointers
const_pntr - same as pntr, except that it replaces const pointers rather than normal pointers ...

Definition at line 1840 of file container_classes.h.

#define MEM_LAYOUT_VAL   ARPA_TYPE

Definition at line 23 of file container_classes.h.

Typedef Documentation

typedef flex_arr<bool>::const_iterator fabci

Definition at line 2169 of file container_classes.h.

typedef flex_arr<bool>::iterator fabi

Definition at line 2168 of file container_classes.h.

typedef flex_arr<double>::const_iterator fadci

Definition at line 2175 of file container_classes.h.

typedef flex_arr<double>::iterator fadi

Definition at line 2174 of file container_classes.h.

typedef flex_arr<long>::const_iterator falci

Definition at line 2171 of file container_classes.h.

typedef flex_arr<long>::iterator fali

Definition at line 2170 of file container_classes.h.

typedef flex_arr<realnum>::const_iterator farci

Definition at line 2173 of file container_classes.h.

typedef flex_arr<realnum>::iterator fari

Definition at line 2172 of file container_classes.h.

typedef multi_arr<bool,2>::const_iterator mb2ci

Definition at line 1796 of file container_classes.h.

typedef multi_arr<bool,2>::iterator mb2i

Definition at line 1795 of file container_classes.h.

typedef multi_arr<bool,3>::const_iterator mb3ci

Definition at line 1798 of file container_classes.h.

typedef multi_arr<bool,3>::iterator mb3i

Definition at line 1797 of file container_classes.h.

typedef multi_arr<bool,4>::const_iterator mb4ci

Definition at line 1800 of file container_classes.h.

typedef multi_arr<bool,4>::iterator mb4i

Definition at line 1799 of file container_classes.h.

typedef multi_arr<bool,5>::const_iterator mb5ci

Definition at line 1802 of file container_classes.h.

typedef multi_arr<bool,5>::iterator mb5i

Definition at line 1801 of file container_classes.h.

typedef multi_arr<bool,6>::const_iterator mb6ci

Definition at line 1804 of file container_classes.h.

typedef multi_arr<bool,6>::iterator mb6i

Definition at line 1803 of file container_classes.h.

typedef multi_arr<double,2>::const_iterator md2ci

Definition at line 1829 of file container_classes.h.

typedef multi_arr<double,2>::iterator md2i

Definition at line 1828 of file container_classes.h.

typedef multi_arr<double,3>::const_iterator md3ci

Definition at line 1831 of file container_classes.h.

typedef multi_arr<double,3>::iterator md3i

Definition at line 1830 of file container_classes.h.

typedef multi_arr<double,4>::const_iterator md4ci

Definition at line 1833 of file container_classes.h.

typedef multi_arr<double,4>::iterator md4i

Definition at line 1832 of file container_classes.h.

typedef multi_arr<double,5>::const_iterator md5ci

Definition at line 1835 of file container_classes.h.

typedef multi_arr<double,5>::iterator md5i

Definition at line 1834 of file container_classes.h.

typedef multi_arr<double,6>::const_iterator md6ci

Definition at line 1837 of file container_classes.h.

typedef multi_arr<double,6>::iterator md6i

Definition at line 1836 of file container_classes.h.

typedef multi_arr<long,2>::const_iterator ml2ci

Definition at line 1807 of file container_classes.h.

typedef multi_arr<long,2>::iterator ml2i

Definition at line 1806 of file container_classes.h.

typedef multi_arr<long,3>::const_iterator ml3ci

Definition at line 1809 of file container_classes.h.

typedef multi_arr<long,3>::iterator ml3i

Definition at line 1808 of file container_classes.h.

typedef multi_arr<long,4>::const_iterator ml4ci

Definition at line 1811 of file container_classes.h.

typedef multi_arr<long,4>::iterator ml4i

Definition at line 1810 of file container_classes.h.

typedef multi_arr<long,5>::const_iterator ml5ci

Definition at line 1813 of file container_classes.h.

typedef multi_arr<long,5>::iterator ml5i

Definition at line 1812 of file container_classes.h.

typedef multi_arr<long,6>::const_iterator ml6ci

Definition at line 1815 of file container_classes.h.

typedef multi_arr<long,6>::iterator ml6i

Definition at line 1814 of file container_classes.h.

typedef multi_arr<realnum,2>::const_iterator mr2ci

Definition at line 1818 of file container_classes.h.

typedef multi_arr<realnum,2>::iterator mr2i

Definition at line 1817 of file container_classes.h.

typedef multi_arr<realnum,3>::const_iterator mr3ci

Definition at line 1820 of file container_classes.h.

typedef multi_arr<realnum,3>::iterator mr3i

Definition at line 1819 of file container_classes.h.

typedef multi_arr<realnum,4>::const_iterator mr4ci

Definition at line 1822 of file container_classes.h.

typedef multi_arr<realnum,4>::iterator mr4i

Definition at line 1821 of file container_classes.h.

typedef multi_arr<realnum,5>::const_iterator mr5ci

Definition at line 1824 of file container_classes.h.

typedef multi_arr<realnum,5>::iterator mr5i

Definition at line 1823 of file container_classes.h.

typedef multi_arr<realnum,6>::const_iterator mr6ci

Definition at line 1826 of file container_classes.h.

typedef multi_arr<realnum,6>::iterator mr6i

Definition at line 1825 of file container_classes.h.

Enumeration Type Documentation

enum mem_layout

define the supported memory layouts of multi_arr / flex_arr

ARPA_TYPE: arrays of pointers to arrays to ... C_TYPE: row-major order, exactly as used in C (last index runs fastest) FLX_TYPE: the one and only layout used by flex_arr

Enumerator
ARPA_TYPE 
C_TYPE 
FLX_TYPE 
ML_TOP 

Definition at line 15 of file container_classes.h.

Function Documentation

void do_dump_state ( const void *  buf,
size_t  nelem,
size_t  size,
FILE *  out,
int32  magic 
)

dump the array to a file in binary format; the file must already have been opened prior to calling this method

Definition at line 24 of file container_classes.cpp.

References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), and ioQQQ.

Referenced by multi_arr< StoutColls, 2 >::dump_state(), and flex_arr< double >::dump_state().

Here is the call graph for this function:

void do_restore_state ( void *  buf,
size_t  nelem,
size_t  size,
FILE *  in,
int32  magic 
)

restore the array from a file in binary format; the file must already have been opened prior to calling this method and the array must already have been allocated in exactly the same way as when it was dumped; some checks are performed, but not every error is excluded

Definition at line 44 of file container_classes.cpp.

References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), and ioQQQ.

Referenced by multi_arr< StoutColls, 2 >::restore_state(), and flex_arr< double >::restore_state().

Here is the call graph for this function:

template<class T , bool lgBC>
const pntr<T,lgBC> operator+ ( const ptrdiff_t  n,
const pntr< T, lgBC > &  t 
)
inline

Definition at line 155 of file container_classes.h.

template<class T , bool lgBC>
const const_pntr<T,lgBC> operator+ ( const ptrdiff_t  n,
const const_pntr< T, lgBC > &  t 
)
inline

Definition at line 202 of file container_classes.h.

Variable Documentation

const int32 MA_VERS[ML_TOP] = { 120070905, 220070803, 320071126 }
static