12#ifndef EBGeometry_DCEL_Iterator
13#define EBGeometry_DCEL_Iterator
26 template <
class T,
class Meta>
140#include "EBGeometry_NamespaceFooter.hpp"
142#include "EBGeometry_DCEL_IteratorImplem.hpp"
Edge iterator class.
Definition EBGeometry_DCEL_Iterator.hpp:28
std::shared_ptr< Edge > m_curEdge
Current half-edge.
Definition EBGeometry_DCEL_Iterator.hpp:136
void reset() noexcept
Reset function for the iterator. This resets the iterator so that it begins from the starting half-ed...
EdgeIteratorT(const Face &a_face)
Constructor, taking a face as argument. The iterator begins at the half-edge pointer contained in the...
bool m_fullLoop
If true, a full loop has been made around the polygon face.
Definition EBGeometry_DCEL_Iterator.hpp:126
std::shared_ptr< Edge > m_startEdge
Starting half-edge.
Definition EBGeometry_DCEL_Iterator.hpp:131
EdgeIteratorT(Face &a_face)
Constructor, taking a face as argument. The iterator begins at the half-edge pointer contained in the...
virtual ~EdgeIteratorT()=default
Destructor.
std::shared_ptr< Edge > EdgePtr
Alias for edge pointer.
Definition EBGeometry_DCEL_Iterator.hpp:53
bool ok() const noexcept
Function which checks if the iteration can be continued.
std::shared_ptr< Face > FacePtr
Alias for face pointer.
Definition EBGeometry_DCEL_Iterator.hpp:58
std::shared_ptr< Vertex > VertexPtr
Alias for vertex pointer.
Definition EBGeometry_DCEL_Iterator.hpp:48
EdgePtr & operator()() noexcept
Operator returning a pointer to the current half-edge.
EdgeIteratorT()=delete
Default construction is not allowed. Use one of the full constructors.
Three-dimensional vector class with arithmetic operators.
Definition EBGeometry_Vec.hpp:218
Namespace containing various double-connected edge list (DCEL) functionality.