#include <VolIndex.H>
VolIndex is a very lightweight object to be used to distinguish between volumes of fluid in a cell. We use VolIndex for array indexing. Non-trivial constructors are all private because only EBISBox is supposed to make valid volume indicies.
Public Member Functions | |
VolIndex () | |
virtual | ~VolIndex () |
bool | operator== (const VolIndex &a_vofin) const |
const IntVect & | gridIndex () const |
int | cellIndex () const |
bool | isDefined () const |
void | define (const VolIndex &a_vofin) |
VolIndex (const IntVect &a_ix, const int &a_vofID) | |
void | define (const IntVect &a_ix, const int &a_vofID) |
bool | operator< (const VolIndex &rhs) const |
bool | operator!= (const VolIndex &rhs) const |
void | shift (const IntVect &a_iv) |
for stencil gymnastics | |
int | linearSize () const |
void | linearOut (void *const a_outBuf) const |
void | linearIn (const void *const inBuf) |
Static Public Member Functions | |
static int | initializeOffsets () |
Static Public Attributes | |
static size_t | iv_offset |
static size_t | index_offset |
Private Attributes | |
IntVect | m_iv |
int | m_cellIndex |
bool | m_isDefined |
VolIndex::VolIndex | ( | ) | [inline] |
virtual VolIndex::~VolIndex | ( | ) | [virtual] |
VolIndex::VolIndex | ( | const IntVect & | a_ix, | |
const int & | a_vofID | |||
) | [inline] |
bool VolIndex::operator== | ( | const VolIndex & | a_vofin | ) | const [inline] |
References m_cellIndex, and m_iv.
const IntVect & VolIndex::gridIndex | ( | ) | const [inline] |
References m_iv.
Referenced by BaseEBCellFAB< T >::assign(), MiniIVFAB< T >::copy(), BaseEBCellFAB< double >::dataType(), BaseEBCellFAB< T >::fill(), MiniIVFAB< T >::forall(), BaseIVFAB< T >::getIndex(), MiniIVFAB< T >::linearOut(), BaseEBCellFAB< double >::offset(), EBAMRPoissonOp::StencilIndexComparator::operator()(), and BaseEBCellFAB< T >::operator()().
int VolIndex::cellIndex | ( | ) | const [inline] |
References m_cellIndex.
Referenced by BaseIVFAB< T >::getIndex(), and EBAMRPoissonOp::StencilIndexComparator::operator()().
bool VolIndex::isDefined | ( | ) | const [inline] |
References m_isDefined.
void VolIndex::define | ( | const VolIndex & | a_vofin | ) |
void VolIndex::define | ( | const IntVect & | a_ix, | |
const int & | a_vofID | |||
) | [inline] |
References m_cellIndex, m_isDefined, and m_iv.
bool VolIndex::operator< | ( | const VolIndex & | rhs | ) | const [inline] |
References IntVect::lexLT(), m_cellIndex, and m_iv.
bool VolIndex::operator!= | ( | const VolIndex & | rhs | ) | const [inline] |
int VolIndex::linearSize | ( | ) | const |
/name linearization routines
Referenced by IrregTag::Entry::linearIn(), IrregTag::Entry::linearOut(), and IrregTag::Entry::linearSize().
void VolIndex::linearOut | ( | void *const | a_outBuf | ) | const |
Referenced by IrregTag::Entry::linearOut().
void VolIndex::linearIn | ( | const void *const | inBuf | ) |
Referenced by IrregTag::Entry::linearIn().
static int VolIndex::initializeOffsets | ( | ) | [static] |
size_t VolIndex::iv_offset [static] |
size_t VolIndex::index_offset [static] |
IntVect VolIndex::m_iv [private] |
Referenced by define(), gridIndex(), operator<(), operator==(), and shift().
int VolIndex::m_cellIndex [private] |
Referenced by cellIndex(), define(), operator<(), and operator==().
bool VolIndex::m_isDefined [private] |
Referenced by define(), and isDefined().