Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 > Class Template Reference

Iterator over the levels in the hierarchy. More...

#include <dune/istl/paamg/hierarchy.hh>

List of all members.

Public Member Functions

 LevelIterator ()
 Constructor.
 LevelIterator (Element *element)
 LevelIterator (const LevelIterator< typename remove_const< C >::type, typename remove_const< T1 >::type > &other)
 Copy constructor.
 LevelIterator (const LevelIterator< const typename remove_const< C >::type, const typename remove_const< T1 >::type > &other)
 Copy constructor.
bool equals (const LevelIterator< typename remove_const< C >::type, typename remove_const< T1 >::type > &other) const
 Equality check.
bool equals (const LevelIterator< const typename remove_const< C >::type, const typename remove_const< T1 >::type > &other) const
 Equality check.
T1 & dereference () const
 Dereference the iterator.
void increment ()
 Move to the next coarser level.
void decrement ()
 Move to the next fine level.
bool isRedistributed () const
 Check whether there was a redistribution at the current level.
T1 & getRedistributed () const
 Get the redistributed container.
void addRedistributed (T1 *t)
void deleteRedistributed ()

Friends

class LevelIterator< typename remove_const< C >::type, typename remove_const< T1 >::type >
class LevelIterator< const typename remove_const< C >::type, const typename remove_const< T1 >::type >

Detailed Description

template<typename T, typename A = std::allocator<T>>
template<class C, class T1>
class Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >

Iterator over the levels in the hierarchy.

operator++() moves to the next coarser level in the hierarchy. while operator--() moves to the next finer level in the hierarchy.


Constructor & Destructor Documentation

template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::LevelIterator (  )  [inline]

Constructor.

template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::LevelIterator ( Element *  element  )  [inline]
template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::LevelIterator ( const LevelIterator< typename remove_const< C >::type, typename remove_const< T1 >::type > &  other  )  [inline]

Copy constructor.

template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::LevelIterator ( const LevelIterator< const typename remove_const< C >::type, const typename remove_const< T1 >::type > &  other  )  [inline]

Copy constructor.


Member Function Documentation

template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
void Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::addRedistributed ( T1 *  t  )  [inline]
template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
void Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::decrement (  )  [inline]

Move to the next fine level.

template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
void Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::deleteRedistributed (  )  [inline]
template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
T1& Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::dereference (  )  const [inline]

Dereference the iterator.

template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
bool Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::equals ( const LevelIterator< const typename remove_const< C >::type, const typename remove_const< T1 >::type > &  other  )  const [inline]

Equality check.

template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
bool Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::equals ( const LevelIterator< typename remove_const< C >::type, typename remove_const< T1 >::type > &  other  )  const [inline]

Equality check.

template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
T1& Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::getRedistributed (  )  const [inline]

Get the redistributed container.

Returns:
The redistributed container.
template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
void Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::increment (  )  [inline]

Move to the next coarser level.

template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
bool Dune::Amg::Hierarchy< T, A >::LevelIterator< C, T1 >::isRedistributed (  )  const [inline]

Check whether there was a redistribution at the current level.

Returns:
True if there is a redistributed version of the conatainer at the current level.

Friends And Related Function Documentation

template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
friend class LevelIterator< const typename remove_const< C >::type,const typename remove_const< T1 >::type > [friend]
template<typename T, typename A = std::allocator<T>>
template<class C , class T1 >
friend class LevelIterator< typename remove_const< C >::type,typename remove_const< T1 >::type > [friend]

The documentation for this class was generated from the following file:

Generated on Fri Apr 29 2011 with Doxygen (ver 1.7.1) [doxygen-log,error-log].