Chombo + EB
3.0
|
Data that maintains a one-to-one mapping of T to the boxes in a BoxLayout. More...
#include <LayoutData.H>
Public Member Functions | |
LayoutData () | |
LayoutData (const BoxLayout &a_dp) | |
virtual | ~LayoutData () |
virtual void | define (const BoxLayout &a_dp) |
DataIterator | dataIterator () const |
TimedDataIterator | timedDataIterator () const |
const T & | operator[] (const DataIndex &a_index) const |
const accessor function More... | |
const T & | operator[] (const DataIterator &a_iterator) const |
const accessor function More... | |
T & | operator[] (const DataIndex &a_index) |
non-const accessor function More... | |
T & | operator[] (const DataIterator &a_iterator) |
non-const accessor function More... | |
Box | box (const DataIndex &a_index) const |
Box | box (const DataIterator &a_iterator) const |
const BoxLayout & | boxLayout () const |
Protected Attributes | |
BoxLayout | m_boxLayout |
Vector< T * > | m_vector |
bool | m_callDelete |
Private Member Functions | |
LayoutData< T > & | operator= (const LayoutData< T > &a_rhs) |
LayoutData (const LayoutData &a_rhs) | |
void | allocate () |
Data that maintains a one-to-one mapping of T to the boxes in a BoxLayout.
A collection of Box-oriented objects. The arrangement of the T objects is given by the underlying BoxLayout object. LayoutData does not attempt to prevent users from manipulating the template class T to become out of synch with the boxes in the BoxLayout. Caveat emptor.
Non-local (off-processor access) to a LayoutData index is an error. You can assure that access to the data stored in a LayoutData is local to your processor by using the DataIterator object for indexing.
Data in a LayoutData CANNOT be communicated to other processors using the API presented in LevelData.
class T must provide the following methods:
{ T() }
This class is useful for processor-local data that needs to be indexable along with a BoxLayoutData. Auxillary data objects, etc.
|
inline |
|
inline |
constructor. allocates a T object for every box in the BoxLayout a_dp using the T null constructor. a_dp must be closed.
|
inlinevirtual |
|
private |
|
inlinevirtual |
constructor. allocates a T object for every box in the BoxLayout a_dp using the T null constructor. a_dp must be closed. previously stored T objects are removed
Reimplemented in BoxLayoutData< T >, BoxLayoutData< EBGraph >, BoxLayoutData< CodimBox >, BoxLayoutData< NodeFArrayBox >, BoxLayoutData< BaseFab< IntVect > >, BoxLayoutData< FluxBox >, BoxLayoutData< BaseIVFAB< Real > >, BoxLayoutData< BaseIFFAB< Real > >, BoxLayoutData< EBCellFAB >, BoxLayoutData< EdgeDataBox >, BoxLayoutData< BaseFab< bool > >, BoxLayoutData< FArrayBox >, BoxLayoutData< BaseFab< int > >, BoxLayoutData< EBData >, BoxLayoutData< EBFluxFAB >, LevelData< T >, LevelData< EBGraph >, LevelData< CodimBox >, LevelData< NodeFArrayBox >, LevelData< BaseFab< IntVect > >, LevelData< FluxBox >, LevelData< BaseIVFAB< Real > >, LevelData< BaseIFFAB< Real > >, LevelData< EBCellFAB >, LevelData< EdgeDataBox >, LevelData< BaseFab< bool > >, LevelData< FArrayBox >, LevelData< BaseFab< int > >, LevelData< EBData >, and LevelData< EBFluxFAB >.
|
inline |
Referenced by LayoutData< Vector< IntVectSet > >::allocate(), BoxLayoutData< EBFluxFAB >::allocateGhostVector(), LevelData< EBFluxFAB >::apply(), BoxLayoutData< EBFluxFAB >::apply(), EBPoissonOp::applyOp(), blockWriteToBuffer(), LevelData< EBFluxFAB >::copyTo(), LevelData< EBFluxFAB >::define(), BCFunction::fillGhostCells(), getOffsets(), read(), regionGather(), BoxLayoutData< EBFluxFAB >::setVector(), write(), and LayoutData< Vector< IntVectSet > >::~LayoutData().
|
inline |
|
inline |
const accessor function
|
inline |
const accessor function
Returns member for which DataIterator is currently indexed to. Equivalent to layout[a_iterator()]
|
inline |
non-const accessor function
|
inline |
non-const accessor function
|
inline |
|
inline |
|
inline |
Referenced by BaseIFFactory< T >::BaseIFFactory(), BaseIVFactory< T >::BaseIVFactory(), blockLocalOffsets(), blockWrite(), blockWriteLevel(), LevelData< EBFluxFAB >::copyTo(), BoxLayoutData< EBFluxFAB >::define(), getOffsets(), IVSFABFactory< T >::IVSFABFactory(), read(), regionGather(), and write().
|
private |
|
inlineprivate |
|
protected |
Referenced by BoxLayoutData< EBFluxFAB >::addTo(), LayoutData< Vector< IntVectSet > >::boxLayout(), BoxLayoutData< EBFluxFAB >::BoxLayoutData(), LevelData< EBFluxFAB >::define(), LayoutData< Vector< IntVectSet > >::define(), BoxLayoutData< EBFluxFAB >::define(), BoxLayoutData< EBFluxFAB >::generalCopyTo(), and LevelData< EBFluxFAB >::LevelData().
|
protected |
Referenced by LayoutData< Vector< IntVectSet > >::allocate(), BoxLayoutData< EBFluxFAB >::allocateGhostVector(), LevelData< EBFluxFAB >::apply(), BoxLayoutData< EBFluxFAB >::apply(), BoxLayoutData< EBFluxFAB >::clear(), LevelData< EBFluxFAB >::define(), ArrayViewData::operator[](), ArrayViewData::set(), BoxLayoutData< EBFluxFAB >::setVector(), and LayoutData< Vector< IntVectSet > >::~LayoutData().
|
protected |