Cloudy
Spectral Synthesis Code for Astrophysics
Loading...
Searching...
No Matches
container_classes.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

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, 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

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

◆ INSTANTIATE_MULTI_ARR

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

◆ MEM_LAYOUT_VAL

#define MEM_LAYOUT_VAL   ARPA_TYPE

Typedef Documentation

◆ fabci

◆ fabi

typedef flex_arr<bool>::iterator fabi

◆ fadci

◆ fadi

typedef flex_arr<double>::iterator fadi

◆ falci

◆ fali

typedef flex_arr<long>::iterator fali

◆ farci

◆ fari

◆ mb2ci

◆ mb2i

typedef multi_arr<bool,2>::iterator mb2i

◆ mb3ci

◆ mb3i

typedef multi_arr<bool,3>::iterator mb3i

◆ mb4ci

◆ mb4i

typedef multi_arr<bool,4>::iterator mb4i

◆ mb5ci

◆ mb5i

typedef multi_arr<bool,5>::iterator mb5i

◆ mb6ci

◆ mb6i

typedef multi_arr<bool,6>::iterator mb6i

◆ md2ci

typedef multi_arr<double,2>::const_iterator md2ci

◆ md2i

typedef multi_arr<double,2>::iterator md2i

◆ md3ci

typedef multi_arr<double,3>::const_iterator md3ci

◆ md3i

typedef multi_arr<double,3>::iterator md3i

◆ md4ci

typedef multi_arr<double,4>::const_iterator md4ci

◆ md4i

typedef multi_arr<double,4>::iterator md4i

◆ md5ci

typedef multi_arr<double,5>::const_iterator md5ci

◆ md5i

typedef multi_arr<double,5>::iterator md5i

◆ md6ci

typedef multi_arr<double,6>::const_iterator md6ci

◆ md6i

typedef multi_arr<double,6>::iterator md6i

◆ ml2ci

◆ ml2i

typedef multi_arr<long,2>::iterator ml2i

◆ ml3ci

◆ ml3i

typedef multi_arr<long,3>::iterator ml3i

◆ ml4ci

◆ ml4i

typedef multi_arr<long,4>::iterator ml4i

◆ ml5ci

◆ ml5i

typedef multi_arr<long,5>::iterator ml5i

◆ ml6ci

◆ ml6i

typedef multi_arr<long,6>::iterator ml6i

◆ mr2ci

◆ mr2i

◆ mr3ci

◆ mr3i

◆ mr4ci

◆ mr4i

◆ mr5ci

◆ mr5i

◆ mr6ci

◆ mr6i

Enumeration Type Documentation

◆ mem_layout

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 

Function Documentation

◆ operator+() [1/2]

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

◆ operator+() [2/2]

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

Variable Documentation

◆ MA_VERS

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