Chaste  Release::2017.1
VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator Class Reference

#include <VertexMesh.hpp>

+ Collaboration diagram for VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator:

Public Member Functions

VertexElement< ELEMENT_DIM, SPACE_DIM > & operator* ()
 
VertexElement< ELEMENT_DIM, SPACE_DIM > * operator-> ()
 
bool operator!= (const typename VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator &rOther)
 
VertexElementIteratoroperator++ ()
 
 VertexElementIterator (VertexMesh< ELEMENT_DIM, SPACE_DIM > &rMesh, typename std::vector< VertexElement< ELEMENT_DIM, SPACE_DIM > * >::iterator elementIter, bool skipDeletedElements=true)
 

Private Member Functions

bool IsAtEnd ()
 
bool IsAllowedElement ()
 

Private Attributes

VertexMeshmrMesh
 
std::vector< VertexElement< ELEMENT_DIM, SPACE_DIM > * >::iterator mElementIter
 
bool mSkipDeletedElements
 

Detailed Description

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
class VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator

A smart iterator over the elements in the mesh.

Todo:
This is the same as in AbstractTetrahedralMesh and PottsMesh - merge? (#1379)

Definition at line 592 of file VertexMesh.hpp.

Constructor & Destructor Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::VertexElementIterator ( VertexMesh< ELEMENT_DIM, SPACE_DIM > &  rMesh,
typename std::vector< VertexElement< ELEMENT_DIM, SPACE_DIM > * >::iterator  elementIter,
bool  skipDeletedElements = true 
)

Constructor for a new iterator.

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

Parameters
rMeshthe mesh to iterator over
elementIterwhere to start iterating
skipDeletedElementswhether to include deleted elements

Definition at line 713 of file VertexMesh.hpp.

References VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::IsAllowedElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::mElementIter, VertexMesh< ELEMENT_DIM, SPACE_DIM >::mElements, and VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::mrMesh.

Referenced by VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetElementIteratorBegin(), and VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetElementIteratorEnd().

Member Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::IsAllowedElement ( )
inlineprivate
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::operator!= ( const typename VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator rOther)
inline

Comparison not-equal-to.

Returns
true if not equal
Parameters
rOtheriterator with which comparison is made

Definition at line 695 of file VertexMesh.hpp.

References VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::mElementIter.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
VertexElement< ELEMENT_DIM, SPACE_DIM > & VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::operator* ( )
inline

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

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

Definition at line 681 of file VertexMesh.hpp.

References VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::IsAtEnd(), and VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::mElementIter.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator & VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::operator++ ( )
inline
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
VertexElement< ELEMENT_DIM, SPACE_DIM > * VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::operator-> ( )
inline

Member Data Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
VertexMesh& VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::mrMesh
private
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::mSkipDeletedElements
private

Whether to skip deleted elements.

Definition at line 643 of file VertexMesh.hpp.

Referenced by VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator::IsAllowedElement().


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