Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

DenseIntVectSet Class Reference

#include <DenseIntVectSet.H>

Collaboration diagram for DenseIntVectSet:

Collaboration graph
[legend]
List of all members.

Public Methods

 DenseIntVectSet ()
 DenseIntVectSet (const Box &a_domain, bool init=true)
DenseIntVectSet & operator-= (const Box &box)
DenseIntVectSet & operator-= (const IntVect &intvect)
DenseIntVectSet & operator-= (const DenseIntVectSet &ivs)
DenseIntVectSet & operator &= (const Box &box)
DenseIntVectSet & operator &= (const ProblemDomain &domain)
DenseIntVectSet & operator|= (const IntVect &intvect)
DenseIntVectSet & operator|= (const Box &b)
DenseIntVectSet & operator|= (const DenseIntVectSet &b)
DenseIntVectSet & operator &= (const DenseIntVectSet &ivs)
void shift (const IntVect &iv)
bool operator[] (const IntVect &index) const
bool contains (const Box &box) const
void coarsen (int iref)
void refine (int iref)
void grow (int igrow)
void grow (int idir, int igrow)
DenseIntVectSet chop (int dir, int chop_pnt)
const Box & box () const
void nestingRegion (int a_radius, const Box &a_domain)
void nestingRegion (int a_radius, const ProblemDomain &a_domain)
bool isEmpty () const
bool isFull () const
int numPts () const
Vector< Box > createBoxes () const
void compact () const

Private Methods

void grow (const IntVect &iv)
DenseIntVectSet & intersect (const DenseIntVectSet &rhs)

Private Attributes

Box m_domain
BitSet m_bits

Friends

class DenseIntVectSetIterator

Detailed Description

Performance-oriented class that reproduces most of the functionality of IntVectSet. The one function that is not supported is union (|= ). This object stores a dense representation of an IntVectSet over the box of definition


Constructor & Destructor Documentation

DenseIntVectSet::DenseIntVectSet (    )  [inline]
 

DenseIntVectSet::DenseIntVectSet (  const Box &    a_domain,
bool    init = true
) 
 

you can either have the domain begin all true, or all false


Member Function Documentation

const Box & DenseIntVectSet::box (    )  const [inline]
 

DenseIntVectSet DenseIntVectSet::chop (  int    dir,
int    chop_pnt
) 
 

Chop the DenseIntVectSet at the chop_pnt in the dir direction \ Returns one DenseIntVectSet and modifies the object DenseIntVectSet. \ The union of the two is the original IntVectSet. \ The modified DenseIntVectSet is the low end, the returned DenseIntvectSet \ is the high end.

void DenseIntVectSet::coarsen (  int    iref ) 
 

coarsen the set by the input

void DenseIntVectSet::compact (    )  const
 

set object to its minimum representation. changes data, but is a logically const operation

bool DenseIntVectSet::contains (  const Box &    box )  const
 

returns 'true' if the entire set of points specified by the box 'b' is a member of the IntvectSet

Vector<Box> DenseIntVectSet::createBoxes (    )  const
 

turn DenseIntVectSet into a Vector of Boxes

void DenseIntVectSet::grow (  const IntVect &    iv )  [private]
 

void DenseIntVectSet::grow (  int    idir,
int    igrow
) 
 

grow the set by the input

void DenseIntVectSet::grow (  int    igrow ) 
 

grow the set by the input

DenseIntVectSet& DenseIntVectSet::intersect (  const DenseIntVectSet &    rhs )  [private]
 

bool DenseIntVectSet::isEmpty (    )  const
 

return true if the set has no points

bool DenseIntVectSet::isFull (    )  const
 

return true if the set consists of a set of a full box

void DenseIntVectSet::nestingRegion (  int    a_radius,
const ProblemDomain &    a_domain
) 
 

see IntVectSet

void DenseIntVectSet::nestingRegion (  int    a_radius,
const Box &    a_domain
) 
 

see IntVectSet

int DenseIntVectSet::numPts (    )  const
 

return the number of points in the set

DenseIntVectSet& DenseIntVectSet::operator &= (  const DenseIntVectSet &    ivs ) 
 

make this set the intersection of itself and the input

DenseIntVectSet& DenseIntVectSet::operator &= (  const ProblemDomain &    domain ) 
 

make this set the intersection of itself and the input

DenseIntVectSet& DenseIntVectSet::operator &= (  const Box &    box ) 
 

make this set the intersection of itself and the input

DenseIntVectSet& DenseIntVectSet::operator-= (  const DenseIntVectSet &    ivs ) 
 

make this set the complement of itself and the input

DenseIntVectSet & DenseIntVectSet::operator-= (  const IntVect &    intvect )  [inline]
 

make this set the complement of itself and the input

DenseIntVectSet& DenseIntVectSet::operator-= (  const Box &    box ) 
 

make this set the complement of itself and the input

bool DenseIntVectSet::operator[] (  const IntVect &    index )  const
 

DenseIntVectSet& DenseIntVectSet::operator|= (  const DenseIntVectSet &    b ) 
 

make this set the union of itself and the input. resulting DenseIntVectSet has domain of the minBox holding both oeprator and operand

DenseIntVectSet& DenseIntVectSet::operator|= (  const Box &    b ) 
 

make this set the union of itself and the input. b MUST be within the domain of of the DenseIntVectSet or this will throw an error

DenseIntVectSet& DenseIntVectSet::operator|= (  const IntVect &    intvect ) 
 

make this set the union of itself and the input. intvect MUST be within the domain of of the DenseIntVectSet or this will throw an error

void DenseIntVectSet::refine (  int    iref ) 
 

refine the set by the input

void DenseIntVectSet::shift (  const IntVect &    iv )  [inline]
 

Shift every cell in the set by the input.


Friends And Related Function Documentation

friend class DenseIntVectSetIterator [friend]
 


Member Data Documentation

BitSet DenseIntVectSet::m_bits [private]
 

Box DenseIntVectSet::m_domain [private]
 


The documentation for this class was generated from the following file:
Generated on Tue Jul 2 10:44:05 2002 for Chombo by doxygen1.2.16