Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

IndexType Class Reference

Cell-Based or Node-Based Indices. More...

#include <Box.H>

List of all members.

Public Types

enum  CellIndex { CELL = 0, NODE = 1 }

Public Member Functions

 IndexType ()
 IndexType (const IndexType &rhs)
 IndexType (const IntVect &iv)
IndexTypeoperator= (const IndexType &rhs)
IndexTypeoperator= (const IntVect &iv)
 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 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

static IndexType TheCellType ()
static IndexType TheNodeType ()

Friends

std::ostream & operator<< (std::ostream &os, const IndexType &itype)
std::istream & operator>> (std::istream &is, IndexType &itype)


Detailed Description

Cell-Based or Node-Based Indices.

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.


Member Enumeration Documentation

enum IndexType::CellIndex
 

The cell index type: one of CELL or NODE.

Enumeration values:
CELL 
NODE 


Constructor & Destructor Documentation

IndexType::IndexType  )  [inline]
 

The default constructor.

IndexType::IndexType const IndexType rhs  )  [inline]
 

The copy constructor.

IndexType::IndexType const IntVect iv  )  [inline, explicit]
 

Constructs an IndexType identical to an IntVect.

IndexType::IndexType D_DECL(CellIndex i, CellIndex j, CellIndex k)   )  [inline]
 

Constructs an IndexType given an explicit CellIndex for each direction. D is a macro that sets the constructor to take BL arguments.


Member Function Documentation

bool IndexType::any  )  const [inline]
 

True if this IndexType is NODE based in any direction.

bool IndexType::cellCentered  )  const [inline]
 

True if this IndexType is CELL based in all directions.

void IndexType::clear  )  [inline]
 

Set this IndexType to be CELL based in all directions.

void IndexType::flip int  i  )  [inline]
 

Change this IndexType from CELL to NODE or NODE to CELL in direction dir.

IntVect IndexType::ixType  )  const [inline]
 

Convert this IndexType to an IntVect via component-wise conversion of enum CellIndex to int.

IndexType::CellIndex IndexType::ixType int  dir  )  const [inline]
 

Returns the CellIndex of this IndexType in direction dir.

bool IndexType::nodeCentered  )  const [inline]
 

True if this IndexType is NODE based in all directions.

bool IndexType::ok  )  const [inline]
 

True if this IndexType is valid.

bool IndexType::operator!= const IndexType t  )  const [inline]
 

True if IndexTypes are not identical.

bool IndexType::operator< const IndexType t  )  const [inline]
 

IndexTypes comparison.

IndexType & IndexType::operator= const IntVect iv  )  [inline]
 

Another assignment operator.

IndexType & IndexType::operator= const IndexType rhs  )  [inline]
 

The assignment operator.

bool IndexType::operator== const IndexType t  )  const [inline]
 

True if IndexTypes are identical.

int IndexType::operator[] int  dir  )  const [inline]
 

Return an integer representing this IndexType in direction dir.

void IndexType::set int  dir  )  [inline]
 

Sets this IndexType to be NODE based in direction dir.

void IndexType::setall  )  [inline]
 

Set this IndexType to be NODE based in all directions.

void IndexType::setType int  dir,
CellIndex  t
[inline]
 

Set this IndexType to CellIndex type t in direction dir.

bool IndexType::test int  dir  )  const [inline]
 

True if this IndexType is NODE based in direction dir.

static IndexType IndexType::TheCellType  )  [static]
 

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 IndexType::TheNodeType  )  [static]
 

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.

void IndexType::unset int  dir  )  [inline]
 

Sets this IndexType to be CELL based in direction dir.


Friends And Related Function Documentation

std::ostream& operator<< std::ostream &  os,
const IndexType itype
[friend]
 

Write an IndexType to an ostream in ASCII.

std::istream& operator>> std::istream &  is,
IndexType itype
[friend]
 

Read an IndexType from an istream.


The documentation for this class was generated from the following file:
Generated on Wed Oct 5 12:48:00 2005 for Chombo&AMRIdealMHD by  doxygen 1.4.1