class IndexType
Cell-Based or Node-Based Indices
Inheritance:
IndexType
public members:
-
-
enumCellIndex
-
-
IndexType ()
-
-
IndexType (const IndexType& rhs)
-
-
explicit IndexType (const IntVect& iv)
-
-
IndexType& operator= (const IndexType& rhs)
-
-
IndexType (D_DECL( CellIndex i, CellIndex j, CellIndex k))
-
-
void set (int dir)
-
-
void unset (int dir)
-
-
bool test (int dir) const
-
-
void setall ()
-
-
void clear ()
-
-
bool any () const
-
-
bool ok () const
-
-
void flip (int i)
-
-
bool operator== (const IndexType& t) const
-
-
bool operator!= (const IndexType& t) const
-
-
bool cellCentered () const
-
-
bool nodeCentered () const
-
-
void setType (int dir, CellIndex t)
-
-
CellIndex ixType (int dir) const
-
-
int operator[] (int dir) const
-
-
IntVect ixType () const
-
-
static IndexType TheCellType ()
-
-
static IndexType TheNodeType ()
-
-
friend std::ostream& operator<< (std::ostream& os, const IndexType& itype)
-
-
friend std::istream& operator>> (std::istream& is, IndexType& itype)
-
Documentation
The class IndexType defines an index as being cell based or node (face)
based in each of the CH_SPACEDIM directions. This class defines an
enumerated type CellIndex to be either CELL or NODE; i.e. each of the
CH_SPACEDIM dimensions must be either CELL or NODE.
- enum CellIndex
-
The cell index type: one of CELL or NODE.
- IndexType ()
-
The default constructor.
- IndexType (const IndexType& rhs)
-
The copy constructor.
- explicit IndexType (const IntVect& iv)
-
Constructs an IndexType identical to an IntVect.
- IndexType& operator= (const IndexType& rhs)
-
The assignment operator.
- IndexType (D_DECL( CellIndex i, CellIndex j, CellIndex k))
-
Constructs an IndexType given an explicit CellIndex for each
direction. D_DECL is a macro that sets the constructor to take
BL_SPACEDIM arguments.
- void set (int dir)
-
Sets this IndexType to be NODE based in direction dir.
- void unset (int dir)
-
Sets this IndexType to be CELL based in direction dir.
- bool test (int dir) const
-
True if this IndexType is NODE based in direction dir.
- void setall ()
-
Set this IndexType to be NODE based in all directions.
- void clear ()
-
Set this IndexType to be CELL based in all directions.
- bool any () const
-
True if this IndexType is NODE based in any direction.
- bool ok () const
-
True if this IndexType is valid.
- void flip (int i)
-
Change this IndexType from CELL to NODE or NODE to CELL
in direction dir.
- bool operator== (const IndexType& t) const
-
True if IndexTypes are identical.
- bool operator!= (const IndexType& t) const
-
True if IndexTypes are not identical.
- bool cellCentered () const
-
True if this IndexType is CELL based in all directions.
- bool nodeCentered () const
-
True if this IndexType is NODE based in all directions.
- void setType (int dir, CellIndex t)
-
Set this IndexType to CellIndex type t in direction dir.
- CellIndex ixType (int dir) const
-
Returns the CellIndex of this IndexType in direction dir.
- int operator[] (int dir) const
-
Return an integer representing this IndexType in direction dir.
- IntVect ixType () const
-
Convert this IndexType to an IntVect via component-wise
conversion of enum CellIndex to int.
- static IndexType TheCellType ()
-
This static member function returns an IndexType object all of
whose components are of value IndexType::CELL. It is provided as
a convenience to our users when defining a Box all of whose faces
should be of type IndexType::CELL.
- static IndexType TheNodeType ()
-
This static member function returns an IndexType object all of
whose components are of value IndexType::NODE. It is provided as
a convenience to our users when defining a Box all of whose faces
should be of type IndexType::NODE.
- friend std::ostream& operator<< (std::ostream& os, const IndexType& itype)
-
Write an IndexType to an ostream in ASCII.
- friend std::istream& operator>> (std::istream& is, IndexType& itype)
-
Read an IndexType from an istream.
this class has no child classes.
alphabetic index hierarchy of classes
Chombo
Copyright Notice
This software is copyright (C) by the Lawrence Berkeley
National Laboratory. Permission is granted to reproduce
this software for non-commercial purposes provided that
this notice is left intact.
It is acknowledged that the U.S. Government has rights to
this software under Contract DE-AC03-765F00098 between
the U.S. Department of Energy and the University of
California.
This software is provided as a professional and academic
contribution for joint exchange. Thus it is experimental,
is provided ``as is'', with no warranties of any kind
whatsoever, no support, no promise of updates, or printed
documentation. By using this software, you acknowledge
that the Lawrence Berkeley National Laboratory and
Regents of the University of California shall have no
liability with respect to the infringement of other
copyrights by any part of this software.