#include <Box.H>
The class IndexType defines an index as being cell based or node (face) based in each of the CH directions. This class defines an enumerated type CellIndex to be either CELL or NODE; i.e. each of the CH dimensions must be either CELL or NODE.
Public Types | |
enum | CellIndex { CELL = 0, NODE = 1 } |
Public Member Functions | |
IndexType () | |
IndexType (const IndexType &rhs) | |
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 Public Member Functions | |
IndexType | TheCellType () |
IndexType | TheNodeType () |
Static Private Member Functions | |
int | mask (int k) |
Private Attributes | |
unsigned int | itype |
Friends | |
std::ostream & | operator<< (std::ostream &os, const IndexType &itype) |
std::istream & | operator>> (std::istream &is, IndexType &itype) |
|
The cell index type: one of CELL or NODE. |
|
The default constructor. |
|
The copy constructor. |
|
Constructs an IndexType identical to an IntVect. |
|
Constructs an IndexType given an explicit CellIndex for each direction. D is a macro that sets the constructor to take BL arguments. |
|
The assignment operator. |
|
Sets this IndexType to be NODE based in direction dir. |
|
Sets this IndexType to be CELL based in direction dir. |
|
True if this IndexType is NODE based in direction dir. |
|
Set this IndexType to be NODE based in all directions. |
|
Set this IndexType to be CELL based in all directions. |
|
True if this IndexType is NODE based in any direction. |
|
True if this IndexType is valid. |
|
Change this IndexType from CELL to NODE or NODE to CELL in direction dir. |
|
True if IndexTypes are identical. |
|
True if IndexTypes are not identical. |
|
True if this IndexType is CELL based in all directions. |
|
True if this IndexType is NODE based in all directions. |
|
Set this IndexType to CellIndex type t in direction dir. |
|
Returns the CellIndex of this IndexType in direction dir. |
|
Return an integer representing this IndexType in direction dir. |
|
Convert this IndexType to an IntVect via component-wise conversion of enum CellIndex to int. |
|
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. |
|
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. |
|
|
|
Write an IndexType to an ostream in ASCII. |
|
Read an IndexType from an istream. |
|
|