Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
multi_geom< d, ALLOC > Class Template Reference

#include <container_classes.h>

Collaboration diagram for multi_geom< d, ALLOC >:

Public Types

typedef size_t size_type
 

Public Member Functions

 multi_geom ()
 
 multi_geom (const multi_geom &m)
 
 ~multi_geom ()
 
void clear ()
 
const multi_geomoperator= (const multi_geom &m)
 
bool lgInbounds (const size_type n, const size_type index[]) const
 
void reserve (const size_type n, const size_type index[])
 
void reserve_recursive (const size_type n, size_type index[])
 
void finalize (void)
 

Public Attributes

tree_vec v
 
size_type size
 
size_type s [d]
 allocated size (number of data elements, pointers are not counted) More...
 
size_type st [d]
 size of each dimension (only used in C_TYPE layout) More...
 
size_type nsl [d]
 stride for each dimension (only used in C_TYPE layout) More...
 

Private Member Functions

void p_clear0 ()
 sizes of each of the pointer arrays More...
 
void p_clear1 ()
 
void p_setupArray (size_type n1[], size_type n2[], const tree_vec *w, size_type l)
 

Detailed Description

template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
class multi_geom< d, ALLOC >

multi_geom - this class maintains all the geometry information for multi_arr keeping it separate makes it easy to clone the information from one multi_arr to another

Member Typedef Documentation

template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
typedef size_t multi_geom< d, ALLOC >::size_type

Constructor & Destructor Documentation

template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
multi_geom< d, ALLOC >::multi_geom ( )
inline
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
multi_geom< d, ALLOC >::multi_geom ( const multi_geom< d, ALLOC > &  m)
inline
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
multi_geom< d, ALLOC >::~multi_geom ( )
inline

Member Function Documentation

template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
void multi_geom< d, ALLOC >::clear ( )
inline
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
void multi_geom< d, ALLOC >::finalize ( void  )
inline
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
bool multi_geom< d, ALLOC >::lgInbounds ( const size_type  n,
const size_type  index[] 
) const
inline
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
const multi_geom& multi_geom< d, ALLOC >::operator= ( const multi_geom< d, ALLOC > &  m)
inline
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
void multi_geom< d, ALLOC >::p_clear0 ( )
inlineprivate

sizes of each of the pointer arrays

Referenced by multi_geom< d, MEM_LAYOUT_VAL >::clear(), and multi_geom< d, MEM_LAYOUT_VAL >::~multi_geom().

template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
void multi_geom< d, ALLOC >::p_clear1 ( )
inlineprivate
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
void multi_geom< d, ALLOC >::p_setupArray ( size_type  n1[],
size_type  n2[],
const tree_vec w,
size_type  l 
)
inlineprivate
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
void multi_geom< d, ALLOC >::reserve ( const size_type  n,
const size_type  index[] 
)
inline
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
void multi_geom< d, ALLOC >::reserve_recursive ( const size_type  n,
size_type  index[] 
)
inline

Member Data Documentation

template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
size_type multi_geom< d, ALLOC >::nsl[d]
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
size_type multi_geom< d, ALLOC >::s[d]
template<int d, mem_layout ALLOC = MEM_LAYOUT_VAL>
size_type multi_geom< d, ALLOC >::st[d]

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