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

ShiftIterator Class Reference

clase to manage box-shifting used to enforce periodic BC's More...

#include <ProblemDomain.H>

Collaboration diagram for ShiftIterator:

Collaboration graph
[legend]
List of all members.

Public Methods

 ShiftIterator ()
 basic constructor

 ShiftIterator (const bool *a_isPeriodic)
 ShiftIterator (const ShiftIterator &a_shiftIt)
 copy constructor

 ~ShiftIterator ()
ShiftIterator & operator= (const ShiftIterator &a_src)
void computeShifts (const bool *a_isPeriodic)
 recompute shift vectors based on periodic directions

IntVect operator() () const
 returns the current shift unit vector

IntVect i () const
void operator++ ()
 increment to the next shift unit vector

void incr ()
bool ok () const
void reset ()
 reset to first shift unit vector

void begin ()
void end ()

Private Attributes

unsigned int m_index
Vector< IntVectm_shift_vectors

Detailed Description

clase to manage box-shifting used to enforce periodic BC's

The ShiftIterator class contains a list of shift vectors necessary to enforce periodic boundary conditions (enforced by shifting the Box of each Fab, then copying any overlapping valid cells with ghost cells of the shifted Fab. Depending on the number of periodic directions, the list of shift vectors over which to iterate differs.


Constructor & Destructor Documentation

ShiftIterator::ShiftIterator   [inline]
 

basic constructor

ShiftIterator::ShiftIterator const bool *    a_isPeriodic
 

ShiftIterator::ShiftIterator const ShiftIterator &    a_shiftIt [inline]
 

copy constructor

ShiftIterator::~ShiftIterator  
 


Member Function Documentation

void ShiftIterator::begin   [inline]
 

void ShiftIterator::computeShifts const bool *    a_isPeriodic
 

recompute shift vectors based on periodic directions

void ShiftIterator::end   [inline]
 

skip the iterator to the end. ok() will return false after this method is called.

IntVect ShiftIterator::i   const [inline]
 

void ShiftIterator::incr   [inline]
 

bool ShiftIterator::ok   const [inline]
 

IntVect ShiftIterator::operator()   const [inline]
 

returns the current shift unit vector

void ShiftIterator::operator++   [inline]
 

increment to the next shift unit vector

ShiftIterator & ShiftIterator::operator= const ShiftIterator &    a_src [inline]
 

void ShiftIterator::reset   [inline]
 

reset to first shift unit vector


Member Data Documentation

unsigned int ShiftIterator::m_index [private]
 

Vector<IntVect> ShiftIterator::m_shift_vectors [private]
 


The documentation for this class was generated from the following file:
Generated on Wed Apr 16 14:35:30 2003 for EBChombo by doxygen1.2.16