#include <GraphNode.H>
Public Member Functions | |
GraphNode () | |
~GraphNode () | |
int | size () const |
void | clear () |
bool | isCovered () const |
bool | isRegular () const |
bool | isRegularWithSingleValuedParent () const |
bool | isRegularWithMultiValuedParent () const |
bool | isIrregular () const |
bool | hasValidCellList () const |
void | defineAsRegular () |
void | defineAsCovered () |
Vector< FaceIndex > | getFaces (const VolIndex &a_vof, const int &a_idir, const Side::LoHiSide &a_sd, const ProblemDomain &a_domain) const |
Vector< FaceIndex > | getFaces (const IntVect &a_iv, const int &a_idir, const Side::LoHiSide &a_sd, const ProblemDomain &a_domain) const |
Vector< VolIndex > | getVoFs (const IntVect &a_iv) const |
const GraphNode & | operator= (const GraphNode &ebiin) |
GraphNode (const GraphNode &ebiin) | |
Vector< VolIndex > | refine (const VolIndex &a_coarVoF) const |
VolIndex | coarsen (const VolIndex &a_fineVoF) const |
void | addIrregularNode (const GraphNodeImplem &a_nodein, int cellIndex) |
void | addIrregularNode (const GraphNodeImplem &a_nodein) |
Vector< Vector< VolIndex > > | getVoFSets (const Box &a_box) const |
int | linearSize () const |
void | linearOut (void *buffer) const |
void | linearIn (void *buffer) |
void | setDefaults () |
internal use only | |
void * | alloc () |
Public Attributes | |
Vector< GraphNodeImplem > * | m_cellList |
Static Public Attributes | |
static BArena | s_Arena |
Friends | |
class | EBISLevel |
GraphNode::GraphNode | ( | ) | [inline] |
Constructor sets node to regular as default.
References setDefaults().
GraphNode::~GraphNode | ( | ) | [inline] |
References clear().
GraphNode::GraphNode | ( | const GraphNode & | ebiin | ) |
int GraphNode::size | ( | ) | const |
void GraphNode::clear | ( | ) | [inline] |
Deletes memory if it has been allocated and sets members to 0
References CH_assert, BArena::free(), hasValidCellList(), m_cellList, s_Arena, setDefaults(), and Vector< T >::~Vector().
Referenced by defineAsCovered(), defineAsRegular(), and ~GraphNode().
bool GraphNode::isCovered | ( | ) | const [inline] |
Return true if the node is covered (m_cellList==0).
References m_cellList.
Referenced by hasValidCellList(), and isIrregular().
bool GraphNode::isRegular | ( | ) | const [inline] |
Return true if the node is regular.
References isRegularWithMultiValuedParent(), and isRegularWithSingleValuedParent().
Referenced by isIrregular().
bool GraphNode::isRegularWithSingleValuedParent | ( | ) | const [inline] |
Return true if the node is regular and has a single-valued parent (m_cellList==1).
References m_cellList.
Referenced by hasValidCellList(), and isRegular().
bool GraphNode::isRegularWithMultiValuedParent | ( | ) | const [inline] |
Return true if the node is regular and has a multi-valued parent (m_cellList is a valid pointer)
References m_cellList.
Referenced by isRegular().
bool GraphNode::isIrregular | ( | ) | const [inline] |
Return true if the node is neither regular or covered.
References isCovered(), and isRegular().
bool GraphNode::hasValidCellList | ( | ) | const [inline] |
Return true if the node has a valid m_cellList pointer
References isCovered(), and isRegularWithSingleValuedParent().
Referenced by clear().
void GraphNode::defineAsRegular | ( | ) | [inline] |
Set Node to regular. If previously set to irregular, deletes their memory.
References clear(), and m_cellList.
void GraphNode::defineAsCovered | ( | ) | [inline] |
Set Node to covered. If previously set to irregular, deletes their memory.
References clear(), and m_cellList.
Vector<FaceIndex> GraphNode::getFaces | ( | const VolIndex & | a_vof, | |
const int & | a_idir, | |||
const Side::LoHiSide & | a_sd, | |||
const ProblemDomain & | a_domain | |||
) | const |
Get the faces in the direction and side for the vof in the list. if the vof's cell index is not found in the list, abort. Use the input vof's grid index for a the grid index of the list.
Vector<FaceIndex> GraphNode::getFaces | ( | const IntVect & | a_iv, | |
const int & | a_idir, | |||
const Side::LoHiSide & | a_sd, | |||
const ProblemDomain & | a_domain | |||
) | const |
Return all the vofs in the list, using the input intvect for the gridIndex
Returns the corresponding VoF from the next coarser EBGraph (same solution location, different index space, factor of two refinement ratio).
void GraphNode::addIrregularNode | ( | const GraphNodeImplem & | a_nodein, | |
int | cellIndex | |||
) |
void GraphNode::addIrregularNode | ( | const GraphNodeImplem & | a_nodein | ) |
Get all sets of connected vofs within the box (used in coarsening)
int GraphNode::linearSize | ( | ) | const |
void GraphNode::linearOut | ( | void * | buffer | ) | const |
void GraphNode::linearIn | ( | void * | buffer | ) |
void GraphNode::setDefaults | ( | ) | [inline] |
void* GraphNode::alloc | ( | ) |
friend class EBISLevel [friend] |
The connectivity data at this point. If m_cellList == 0, node is covered. If m_cellList == 1, node is regular and parent is single-valued. otherwise, it is a real list (node may still be regular).
Referenced by clear(), defineAsCovered(), defineAsRegular(), isCovered(), isRegularWithMultiValuedParent(), isRegularWithSingleValuedParent(), and setDefaults().
BArena GraphNode::s_Arena [static] |
Referenced by clear().