AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator Class Reference

#include <AbstractTetrahedralMesh.hpp>

Collaboration diagram for AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator:
Collaboration graph
[legend]

List of all members.

Public Member Functions

Element< ELEMENT_DIM, SPACE_DIM > & operator* ()
Element< ELEMENT_DIM, SPACE_DIM > * operator-> ()
bool operator!= (const AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator &rOther)
ElementIteratoroperator++ ()
 ElementIterator (AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > &rMesh, typename std::vector< Element< ELEMENT_DIM, SPACE_DIM > * >::iterator elementIter, bool skipDeletedElements=true)

Private Member Functions

bool IsAtEnd ()
bool IsAllowedElement ()

Private Attributes

AbstractTetrahedralMeshmrMesh
std::vector< Element
< ELEMENT_DIM, SPACE_DIM >
* >::iterator 
mElementIter
bool mSkipDeletedElements

Detailed Description

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
class AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator

A smart iterator over the elements in the mesh.

Definition at line 386 of file AbstractTetrahedralMesh.hpp.


Constructor & Destructor Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::ElementIterator ( AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > &  rMesh,
typename std::vector< Element< ELEMENT_DIM, SPACE_DIM > * >::iterator  elementIter,
bool  skipDeletedElements = true 
) [inline]

Constructor for a new iterator.

This should not be called directly by user code; use the mesh methods AbstractTetrahedralMesh::GetElementIteratorBegin and AbstractTetrahedralMesh::GetElementIteratorEnd instead.

Parameters:
rMesh the mesh to iterator over
elementIter where to start iterating
skipDeletedElements whether to include deleted elements

Definition at line 502 of file AbstractTetrahedralMesh.hpp.

References AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::IsAllowedElement(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::mElementIter, AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mElements, and AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::mrMesh.


Member Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::IsAllowedElement (  )  [inline, private]
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::IsAtEnd (  )  [inline, private]
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::operator!= ( const AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator rOther  )  [inline]

Comparison not-equal-to.

Parameters:
rOther iterator with which comparison is made

Definition at line 484 of file AbstractTetrahedralMesh.hpp.

References AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::mElementIter.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
Element< ELEMENT_DIM, SPACE_DIM > & AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::operator* (  )  [inline]

Dereference the iterator giving you a *reference* to the current element.

Make sure to use a reference for the result to avoid copying elements unnecessarily.

Definition at line 470 of file AbstractTetrahedralMesh.hpp.

References AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::IsAtEnd(), and AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::mElementIter.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator & AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::operator++ (  )  [inline]
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
Element< ELEMENT_DIM, SPACE_DIM > * AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::operator-> (  )  [inline]

Member Data Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
std::vector<Element<ELEMENT_DIM, SPACE_DIM> *>::iterator AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::mElementIter [private]
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
AbstractTetrahedralMesh& AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::mrMesh [private]
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::mSkipDeletedElements [private]

Whether to skip deleted elements.

Definition at line 435 of file AbstractTetrahedralMesh.hpp.

Referenced by AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ElementIterator::IsAllowedElement().


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

Generated by  doxygen 1.6.2