dune-grid  2.3.0
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
Dune::HierarchicIterator< GridImp, HierarchicIteratorImp > Class Template Reference

Enables iteration over all codim zero entities in a subtree See also the documentation of Dune::EntityPointer. More...

#include <dune/grid/common/hierarchiciterator.hh>

Inheritance diagram for Dune::HierarchicIterator< GridImp, HierarchicIteratorImp >:
Dune::EntityIterator< 0, GridImp, HierarchicIteratorImp< GridImp > > Dune::EntityPointer< GridImp, IteratorImp >

Public Types

typedef GridImp::template
Codim< codim >::Entity 
Entity
 
enum  { codimension = IteratorImp::codimension }
 codimension of entity pointer More...
 
enum  { codim = IteratorImp::codimension }
 

Public Member Functions

HierarchicIteratoroperator++ ()
 Preincrement operator. More...
 
Dereferencing
Entityoperator* () const
 Dereferencing operator. More...
 
Entityoperator-> () const
 Pointer operator. More...
 
Compare methods
template<class ItImp >
bool operator== (const EntityPointer< GridImp, ItImp > &rhs) const
 Checks for equality. Only works for EntityPointers and iterators on the same grid. Due to the conversion operators one can compare all kinds of iterators and EntityPointer. More...
 
template<class ItImp >
bool operator!= (const EntityPointer< GridImp, ItImp > &rhs) const
 Checks for inequality. Only works for EntityPointers and iterators on the same grid. Due to the conversion operators one can compare all kinds of iterators and EntityPointer. More...
 
Query methods
int level () const
 Ask for level of entity. This method is redundant and is only there for efficiency reasons. It allows an implementation to return the level without actually constructing the entity. More...
 
Implementor interface
template<class ItImp >
bool equals (const EntityPointer< GridImp, ItImp > &rhs) const
 Forward equality check to realIterator. More...
 

Protected Types

typedef IteratorImp Implementation
 

Protected Member Functions

Implementationimpl ()
 return reference to the real implementation More...
 
const Implementationimpl () const
 return reference to the real implementation More...
 

Protected Attributes

Implementation realIterator
 

Detailed Description

template<class GridImp, template< class > class HierarchicIteratorImp>
class Dune::HierarchicIterator< GridImp, HierarchicIteratorImp >

Enables iteration over all codim zero entities in a subtree See also the documentation of Dune::EntityPointer.

Mesh entities of codimension 0 ("elements") allow to visit all entities of codimension 0 obtained through nested, hierarchic refinement of the entity. Iteration over this set of entities is provided by the HierarchicIterator, starting from a given entity. This is redundant but important for memory efficient implementations of unstructured hierarchically refined meshes.

Note
The HierarchicIterator interface is deprecated. Use the EntityIterator interface instead.

Member Typedef Documentation

typedef GridImp ::template Codim< codim >::Entity Dune::EntityIterator< codim, GridImp , HierarchicIteratorImp< GridImp > >::Entity
inherited
template<class GridImp, class IteratorImp>
typedef IteratorImp Dune::EntityPointer< GridImp, IteratorImp >::Implementation
protectedinherited

Member Enumeration Documentation

template<class GridImp, class IteratorImp>
anonymous enum
inherited

codimension of entity pointer

Enumerator
codimension 
template<class GridImp, class IteratorImp>
anonymous enum
inherited
Enumerator
codim 

The codimension of this EntityPointer.

Member Function Documentation

template<class GridImp, class IteratorImp>
template<class ItImp >
bool Dune::EntityPointer< GridImp, IteratorImp >::equals ( const EntityPointer< GridImp, ItImp > &  rhs) const
inlineinherited
template<class GridImp, class IteratorImp>
Implementation& Dune::EntityPointer< GridImp, IteratorImp >::impl ( )
inlineprotectedinherited

return reference to the real implementation

template<class GridImp, class IteratorImp>
const Implementation& Dune::EntityPointer< GridImp, IteratorImp >::impl ( ) const
inlineprotectedinherited

return reference to the real implementation

template<class GridImp, class IteratorImp>
int Dune::EntityPointer< GridImp, IteratorImp >::level ( ) const
inlineinherited

Ask for level of entity. This method is redundant and is only there for efficiency reasons. It allows an implementation to return the level without actually constructing the entity.

template<class GridImp, class IteratorImp>
template<class ItImp >
bool Dune::EntityPointer< GridImp, IteratorImp >::operator!= ( const EntityPointer< GridImp, ItImp > &  rhs) const
inlineinherited

Checks for inequality. Only works for EntityPointers and iterators on the same grid. Due to the conversion operators one can compare all kinds of iterators and EntityPointer.

template<class GridImp, class IteratorImp>
Entity& Dune::EntityPointer< GridImp, IteratorImp >::operator* ( ) const
inlineinherited

Dereferencing operator.

template<class GridImp , template< class > class HierarchicIteratorImp>
HierarchicIterator& Dune::HierarchicIterator< GridImp, HierarchicIteratorImp >::operator++ ( )
inline

Preincrement operator.

Note
Forwarded to LevelIteratorImp.increment()
template<class GridImp, class IteratorImp>
Entity* Dune::EntityPointer< GridImp, IteratorImp >::operator-> ( ) const
inlineinherited

Pointer operator.

template<class GridImp, class IteratorImp>
template<class ItImp >
bool Dune::EntityPointer< GridImp, IteratorImp >::operator== ( const EntityPointer< GridImp, ItImp > &  rhs) const
inlineinherited

Checks for equality. Only works for EntityPointers and iterators on the same grid. Due to the conversion operators one can compare all kinds of iterators and EntityPointer.

Member Data Documentation

template<class GridImp, class IteratorImp>
Implementation Dune::EntityPointer< GridImp, IteratorImp >::realIterator
protectedinherited

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