SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM > Class Template Reference

#include <source/hierarchy/variables/LocallyActiveDataPatchLevelManager.h>

List of all members.

Public Member Functions

 LocallyActiveDataPatchLevelIterator ()
 LocallyActiveDataPatchLevelIterator (const tbox::Pointer< hier::Variable< DIM > > variable, const hier::PatchLevel< DIM > &pl)
 LocallyActiveDataPatchLevelIterator (const tbox::Pointer< hier::Variable< DIM > > variable, const hier::PatchLevel< DIM > *pl)
 LocallyActiveDataPatchLevelIterator (const PatchDataId &patch_data_id, const hier::PatchLevel< DIM > *pl, const tbox::Array< tbox::Pointer< hier::ComponentSelector > > *active_data_indices)
 LocallyActiveDataPatchLevelIterator (const LocallyActiveDataPatchLevelIterator< DIM > &iterator)
void initialize (const tbox::Pointer< hier::Variable< DIM > > variable, const hier::PatchLevel< DIM > &pl)
void initialize (const tbox::Pointer< hier::Variable< DIM > > variable, const hier::PatchLevel< DIM > *pl)
LocallyActiveDataPatchLevelIterator<
DIM > & 
operator= (const LocallyActiveDataPatchLevelIterator< DIM > &iterator)
 ~LocallyActiveDataPatchLevelIterator ()
int operator * () const
int operator() () const
 operator bool () const
 operator const void * () const
bool operator! () const
void operator++ (int)
bool operator== (const LocallyActiveDataPatchLevelIterator< DIM > &iterator) const
bool operator!= (const LocallyActiveDataPatchLevelIterator &iterator) const


Detailed Description

template<int DIM>
class SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >

Class hier::LocallyActiveDataPatchLevelIterator iterates over the locally-owned (i.e., on processor) patches of a patch level on which data for a given variable or patch data index is active (i.e., can exist). This is consistent with the standard owner-computes rule and mimicks the behavior of the SAMRAI hier::PatchLevelIterator class. The iterator should be declared in user code as LocallyActiveDataPatchLevelManager<DIM>::Iterator since the implementation may change to be a nested class in the future. Also, since this class is not set up for general usage, it is recommended that an iterator object be obtained using one of the getIterator() functions in the LocallyActiveDataPatchLevelManager class.

See also:
hier::PatchLevel

hier::LocallyActiveDataPatchLevelManager


Constructor & Destructor Documentation

template<int DIM>
SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::LocallyActiveDataPatchLevelIterator (  )  [inline]

Default constructor for the locally-active data patch iterator. This iterator must be initialized before it can be used to iterate over patches on a level.

See also:
initialize()

template<int DIM>
SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::LocallyActiveDataPatchLevelIterator ( const tbox::Pointer< hier::Variable< DIM > >  variable,
const hier::PatchLevel< DIM > &  pl 
)

Constructor for the locally-active data patch iterator. The iterator will enumerate the local patches in the patch level belonging to the local processor on which data for the given variable is active.

Parameters:
variable smart pointer to variable.
pl const reference to patch level.

template<int DIM>
SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::LocallyActiveDataPatchLevelIterator ( const tbox::Pointer< hier::Variable< DIM > >  variable,
const hier::PatchLevel< DIM > *  pl 
)

Constructor for the locally-active data patch iterator. The iterator will enumerate the local patches in the patch level belonging to the local processor on which data for the given variable is active.

Parameters:
variable smart pointer to variable.
pl const pointer to patch level.

template<int DIM>
SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::LocallyActiveDataPatchLevelIterator ( const PatchDataId patch_data_id,
const hier::PatchLevel< DIM > *  pl,
const tbox::Array< tbox::Pointer< hier::ComponentSelector > > *  active_data_indices 
)

Constructor for the locally-active data patch iterator. The iterator will enumerate the local patches in the patch level belonging to the local processor on which the give patch data index is active.

Note that this is a very special constructor used by the LocallyActiveDataPatchLevelManager class.

Parameters:
patch_data_id const reference to PatchDataId type indicating the patch data index of interest.
pl const pointer to patch level.
active_data_indices const array of pointers to component selectors describing active data on patch level.

template<int DIM>
SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::LocallyActiveDataPatchLevelIterator ( const LocallyActiveDataPatchLevelIterator< DIM > &  iterator  )  [inline]

Const copy constructor for the locally-active data patch iterator.

template<int DIM>
SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::~LocallyActiveDataPatchLevelIterator (  ) 

Destructor for the iterator releases all internal storage.


Member Function Documentation

template<int DIM>
void SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::initialize ( const tbox::Pointer< hier::Variable< DIM > >  variable,
const hier::PatchLevel< DIM > &  pl 
)

Initializer for the locally-active data patch iterator. The iterator will enumerate the local patches in the patch level belonging to the local processor on which data for the given variable is active.

Parameters:
variable const smart pointer to variable.
pl const reference to patch level.

template<int DIM>
void SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::initialize ( const tbox::Pointer< hier::Variable< DIM > >  variable,
const hier::PatchLevel< DIM > *  pl 
)

Initializer for the locally-active data patch iterator. The iterator will enumerate the local patches in the patch level belonging to the local processor on which data for the given variable is active.

Parameters:
variable const smart pointer to variable.
pl const pointer to patch level.

template<int DIM>
LocallyActiveDataPatchLevelIterator< DIM > & SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::operator= ( const LocallyActiveDataPatchLevelIterator< DIM > &  iterator  )  [inline]

Assignment operator for the iterator sets calling object to state of the argument iterator.

template<int DIM>
int SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::operator * (  )  const [inline]

Extract the integer patch index corresponding to the current patch in the patch level.

template<int DIM>
int SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::operator() (  )  const [inline]

Extract the integer patch index corresponding to the current patch in the patch level.

template<int DIM>
SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::operator bool (  )  const [inline]

Return true if the iterator points to a valid patch on the level; i.e., patch exists on the level and variable with which iterator is initialized is active on that patch.

template<int DIM>
SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::operator const void * (  )  const [inline]

Return non-NULL if the iterator points to a valid patch on the level; i.e., patch exists on the level and variable with which iterator is initialized is active on that patch.

template<int DIM>
bool SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::operator! (  )  const [inline]

Return true if the iterator points to a valid patch in the level (patch exists on the level and variable with which iterator is initialized is active on that patch); false otherwise. This operator mimics the !p operation applied to a pointer p.

template<int DIM>
void SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::operator++ ( int   ) 

Increment the iterator to point to the next local patch on which the variable with which iterator is initialized is active on the level.

template<int DIM>
bool SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::operator== ( const LocallyActiveDataPatchLevelIterator< DIM > &  iterator  )  const [inline]

Test whether two iterators point to the same patch index.

template<int DIM>
bool SAMRAI::hier::LocallyActiveDataPatchLevelIterator< DIM >::operator!= ( const LocallyActiveDataPatchLevelIterator< DIM > &  iterator  )  const [inline]

Test whether two iterators point to different patch indices.


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