Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

BaseIVFAB< T > Class Template Reference

#include <BaseIVFAB.H>

Inheritance diagram for BaseIVFAB< T >:

Inheritance graph
[legend]
Collaboration diagram for BaseIVFAB< T >:

Collaboration graph
[legend]
List of all members.

Public Methods

 BaseIVFAB ()
 BaseIVFAB (const IntVectSet &a_region, const EBGraph &a_ebgraph, const int &a_nvarin)
 ~BaseIVFAB ()
void define (const IntVectSet &a_region, const EBGraph &a_ebgraph, const int &a_nvarin)
void setVal (const T &value)
void copy (const Box &a_fromBox, const Interval &a_destInterval, const Box &a_toBox, const BaseIVFAB< T > &a_src, const Interval &a_srcInterval)
int size (const Box &R, const Interval &comps) const
void linearOut (void *buf, const Box &R, const Interval &comps) const
void linearIn (void *buf, const Box &R, const Interval &comps)
void clear ()
bool isDefined () const
int numVoFs () const
int nComp () const
const IntVectSetgetIVS () const
T & operator() (const VolIndex &a_vof, const int &varlocin)
const T & operator() (const VolIndex &a_vof, const int &varlocin) const
const T * dataPtr (const int &a_comp) const
T * dataPtr (const int &a_comp)
 BaseIVFAB (const Box &a_region, int a_nVar)
 invalid but necessary for leveldata to compile

const int * loVect () const
const int * hiVect () const
const EBGraphgetEBGraph () const

Static Public Methods

int preAllocatable ()

Protected Methods

int getIndex (const VolIndex &a_vof, const int &a_comp) const

Protected Attributes

T * m_dataPtr
int m_nComp
int m_nVoFs
IntVect m_loVect
IntVect m_hiVect
EBGraph m_ebgraph
BaseFab< Vector< int > > m_ivmap
IntVectSet m_ivs
bool m_isDefined

Private Methods

void setDefaultValues ()
BaseIVFAB< T > & operator= (const BaseIVFAB< T > &)
 BaseIVFAB (const BaseIVFAB< T > &)

Detailed Description

template<class T>
class BaseIVFAB< T >

BaseIVFAB is a templated data holder defined at the VoFs of an irregular domain.


Constructor & Destructor Documentation

template<class T>
BaseIVFAB< T >::BaseIVFAB   [inline]
 

Default constructor. Constructs an uninitialized IVFAB. You must subsequently call {\bf define} before using this IVFAB.

template<class T>
BaseIVFAB< T >::BaseIVFAB const IntVectSet   a_region,
const EBGraph   a_ebgraph,
const int &    a_nvarin
[inline]
 

Defining constructor. Specifies the irregular domain and the number of data components per VoF. The irregular domain must lie completely within the EBGraph. The contents are uninitialized. Calls full define function.

template<class T>
BaseIVFAB< T >::~BaseIVFAB   [inline]
 

template<class T>
BaseIVFAB< T >::BaseIVFAB const Box   a_region,
int    a_nVar
[inline]
 

invalid but necessary for leveldata to compile

template<class T>
BaseIVFAB< T >::BaseIVFAB const BaseIVFAB< T > &    [inline, private]
 


Member Function Documentation

template<class T>
void BaseIVFAB< T >::clear   [inline]
 

Remove all data from this BaseIVFAB. You must call {\bf define} again in order to use it.

template<class T>
void BaseIVFAB< T >::copy const Box   a_fromBox,
const Interval   a_destInterval,
const Box   a_toBox,
const BaseIVFAB< T > &    a_src,
const Interval   a_srcInterval
[inline]
 

template<class T>
T * BaseIVFAB< T >::dataPtr const int &    a_comp [inline]
 

Return a pointer to the internal data storage of this IVFAB.

template<class T>
const T * BaseIVFAB< T >::dataPtr const int &    a_comp const [inline]
 

Return a const pointer to the internal data storage of this IVFAB. \

template<class T>
void BaseIVFAB< T >::define const IntVectSet   a_region,
const EBGraph   a_ebgraph,
const int &    a_nvarin
[inline]
 

Full define function. Specifies the irregular domain and the number of data components per VoF. The irregular domain must lie completely within the EBGraph. The contents are uninitialized. If it has previously been defined, the old definition data is overwritten and lost.

template<class T>
const EBGraph & BaseIVFAB< T >::getEBGraph   const [inline]
 

template<class T>
int BaseIVFAB< T >::getIndex const VolIndex   a_vof,
const int &    a_comp
const [inline, protected]
 

template<class T>
const IntVectSet & BaseIVFAB< T >::getIVS   const [inline]
 

Return the irregular domain of the BaseIVFAB.

template<class T>
const int * BaseIVFAB< T >::hiVect   const [inline]
 

Return a fake "upper right corner of the domain" for use with Fortran.

template<class T>
bool BaseIVFAB< T >::isDefined   const [inline]
 

Tells whether this BaseIVFAB has been defined, either with a constructor or with {\bf define}. It must be initialized in order to access its data.

template<class T>
void BaseIVFAB< T >::linearIn void *    buf,
const Box   R,
const Interval   comps
[inline]
 

template<class T>
void BaseIVFAB< T >::linearOut void *    buf,
const Box   R,
const Interval   comps
const [inline]
 

template<class T>
const int * BaseIVFAB< T >::loVect   const [inline]
 

Return a fake "lower left corner of the domain" for use with Fortran.

template<class T>
int BaseIVFAB< T >::nComp   const [inline]
 

Return the number of data components of this BaseIVFAB.

template<class T>
int BaseIVFAB< T >::numVoFs   const [inline]
 

Return the number of VoFs in this BaseIVFAB.

template<class T>
const T & BaseIVFAB< T >::operator() const VolIndex   a_vof,
const int &    varlocin
const [inline]
 

template<class T>
T & BaseIVFAB< T >::operator() const VolIndex   a_vof,
const int &    varlocin
[inline]
 

Indexing operator. Return a reference to the contents of this IVFAB, at the specified VoF and data component. The first component is zero, the last is {nvar-1}. The returned object is a modifiable lvalue.

template<class T>
BaseIVFAB< T > & BaseIVFAB< T >::operator= const BaseIVFAB< T > &    [inline, private]
 

template<class T>
int BaseIVFAB< T >::preAllocatable   [inline, static]
 

This stuff required by LevelData in parallel:

template<class T>
void BaseIVFAB< T >::setDefaultValues   [inline, private]
 

template<class T>
void BaseIVFAB< T >::setVal const T &    value [inline]
 

Set a value at every data location.

template<class T>
int BaseIVFAB< T >::size const Box   R,
const Interval   comps
const [inline]
 


Member Data Documentation

template<class T>
T* BaseIVFAB< T >::m_dataPtr [protected]
 

template<class T>
EBGraph BaseIVFAB< T >::m_ebgraph [protected]
 

template<class T>
IntVect BaseIVFAB< T >::m_hiVect [protected]
 

template<class T>
bool BaseIVFAB< T >::m_isDefined [protected]
 

template<class T>
BaseFab<Vector<int> > BaseIVFAB< T >::m_ivmap [protected]
 

template<class T>
IntVectSet BaseIVFAB< T >::m_ivs [protected]
 

template<class T>
IntVect BaseIVFAB< T >::m_loVect [protected]
 

template<class T>
int BaseIVFAB< T >::m_nComp [protected]
 

template<class T>
int BaseIVFAB< T >::m_nVoFs [protected]
 


The documentation for this class was generated from the following files:
Generated on Wed Apr 16 14:35:00 2003 for EBChombo by doxygen1.2.16