SAMRAI::xfer::FillBoxSet< DIM > Class Template Reference

#include <source/transfer/datamovers/standard/FillBoxSet.h>

Inheritance diagram for SAMRAI::xfer::FillBoxSet< DIM >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 FillBoxSet (const hier::Box< DIM > &box)
 FillBoxSet (const FillBoxSet< DIM > &fill_box_set)
 FillBoxSet ()
virtual ~FillBoxSet ()
virtual FillBoxSetoperator= (const FillBoxSet &fill_box_set)
virtual void resetFillBoxes (const hier::Box< DIM > &box)
virtual void resetFillBoxes (const hier::BoxList< DIM > &boxes)
void addFillBox (const hier::Box< DIM > &box)
const hier::Box< DIM > & getBoundingBox ()
const hier::BoxList< DIM > & getBoxList () const
hier::BoxList< DIM > & getBoxListToChange ()
int getNumberOfBoxes () const
void simplifyBoxes ()
void removeIntersections (const hier::Box< DIM > &takeaway)
void removeIntersections (const hier::BoxList< DIM > &takeaway)
void intersectBoxes (const hier::Box< DIM > &box)
void intersectBoxes (const hier::BoxList< DIM > &boxes)
virtual void print (std::ostream &os=tbox::plog) const

Detailed Description

template<int DIM>
class SAMRAI::xfer::FillBoxSet< DIM >

Class FillBoxSet is a utility class that provides a "smart" set of boxlist operations for communication schedules. Specifically, it provides some of the basic box calculus operations, such as set intersection and difference, found in the simple boxlist class. However, this class is used in very specific situations involving "fill boxes" in communication schedule creation, to avoid potentially expensive exhaustive searches. Essentially, it limits searches for box intersections to those that intersect the bounding box.

See also:
hier::Box

hier::BoxList


Constructor & Destructor Documentation

template<int DIM>
SAMRAI::xfer::FillBoxSet< DIM >::FillBoxSet ( const hier::Box< DIM > &  box  ) 

The constructor defines a bounding box for the fill box set to be the argument box and creates a box set with that one box in it.

template<int DIM>
SAMRAI::xfer::FillBoxSet< DIM >::FillBoxSet ( const FillBoxSet< DIM > &  fill_box_set  ) 

Create a new fill box set and copy the bounding box and boxes from the argument fill box set.

template<int DIM>
SAMRAI::xfer::FillBoxSet< DIM >::FillBoxSet (  )  [inline]

Default constructor creates a new fill box set with an empty bounding box and an empty box set. The box information must be set by calling one of the resetFillBoxes() functions to use the constructed object.

template<int DIM>
SAMRAI::xfer::FillBoxSet< DIM >::~FillBoxSet (  )  [virtual]

The destructor releases all fill box set storage.


Member Function Documentation

template<int DIM>
FillBoxSet< DIM > & SAMRAI::xfer::FillBoxSet< DIM >::operator= ( const FillBoxSet< DIM > &  fill_box_set  )  [virtual]

Copy bounding box and boxes from the argument fill box set.

template<int DIM>
void SAMRAI::xfer::FillBoxSet< DIM >::resetFillBoxes ( const hier::Box< DIM > &  box  )  [virtual]

Reset bounding box to be the argument box and replace fill box set with a set containing that one box.

template<int DIM>
void SAMRAI::xfer::FillBoxSet< DIM >::resetFillBoxes ( const hier::BoxList< DIM > &  boxes  )  [virtual]

Reset fill box set to be the argument box list and set bounding box to be the bounding box of the list.

template<int DIM>
void SAMRAI::xfer::FillBoxSet< DIM >::addFillBox ( const hier::Box< DIM > &  box  ) 

Add new fill box to head of box list representing the fill box set.

template<int DIM>
const hier::Box< DIM > & SAMRAI::xfer::FillBoxSet< DIM >::getBoundingBox (  )  [inline]

Return const reference to bounding box for all boxes in the fill box set.

template<int DIM>
const hier::BoxList< DIM > & SAMRAI::xfer::FillBoxSet< DIM >::getBoxList (  )  const [inline]

Return const reference to box list describing the fill box set.

template<int DIM>
hier::BoxList< DIM > & SAMRAI::xfer::FillBoxSet< DIM >::getBoxListToChange (  )  [inline]

Return (non-const) reference to box list describing the fill box set. This function should be used with care as the box list can be changed.

template<int DIM>
int SAMRAI::xfer::FillBoxSet< DIM >::getNumberOfBoxes (  )  const [inline]

Return number of boxes in fill box set.

Reimplemented in SAMRAI::xfer::LocallyActiveDataFillBoxSet< DIM >.

template<int DIM>
void SAMRAI::xfer::FillBoxSet< DIM >::simplifyBoxes (  )  [inline]

Invoke box list routine of same name on the fill box set owned by this object.

template<int DIM>
void SAMRAI::xfer::FillBoxSet< DIM >::removeIntersections ( const hier::Box< DIM > &  takeaway  )  [inline]

If argument box intersects the bounding box owned by this object, then invoke the box list routine of same name on the fill box set owned by this object. Otherwise do nothing.

template<int DIM>
void SAMRAI::xfer::FillBoxSet< DIM >::removeIntersections ( const hier::BoxList< DIM > &  takeaway  )  [inline]

Invoke box list routine of same name on the fill box set owned by this object.

template<int DIM>
void SAMRAI::xfer::FillBoxSet< DIM >::intersectBoxes ( const hier::Box< DIM > &  box  )  [inline]

If argument box intersects the bounding box, then invoke the box list routine of same name on the fill box set owned by this object. Otherwise do nothing.

Reimplemented in SAMRAI::xfer::LocallyActiveDataFillBoxSet< DIM >.

template<int DIM>
void SAMRAI::xfer::FillBoxSet< DIM >::intersectBoxes ( const hier::BoxList< DIM > &  boxes  )  [inline]

Invoke box list routine of same name on the fill box set owned by this object.

Reimplemented in SAMRAI::xfer::LocallyActiveDataFillBoxSet< DIM >.

template<int DIM>
void SAMRAI::xfer::FillBoxSet< DIM >::print ( std::ostream &  os = tbox::plog  )  const [virtual]

Print all class member data for this fill box set object to specified output stream.


The documentation for this class was generated from the following files:
Generated on Thu Jun 18 11:29:10 2009 for SAMRAI by  doxygen 1.5.1