Public Member Functions | Private Attributes

MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge > Class Template Reference

FaceHalfedgeIterator, transverse all the halfedges of a face CCWly. More...

#include <iterators.h>

Collaboration diagram for MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 FaceHalfedgeIterator (CFace *f)
 ~FaceHalfedgeIterator ()
void operator++ ()
void operator++ (int)
CHalfEdgevalue ()
CHalfEdgeoperator* ()
bool end ()

Private Attributes

CFacem_face
CHalfEdgem_halfedge

Detailed Description

template<typename CVertex, typename CEdge, typename CFace, typename CHalfEdge>
class MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >

FaceHalfedgeIterator, transverse all the halfedges of a face CCWly.

Definition at line 547 of file iterators.h.


Constructor & Destructor Documentation

template<typename CVertex , typename CEdge , typename CFace , typename CHalfEdge >
MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::FaceHalfedgeIterator ( CFace f  )  [inline]

FaceHalfedgeIterator constructor

Parameters:
f the current face

Definition at line 554 of file iterators.h.

        { 
                m_face = f; 
                m_halfedge = (CHalfEdge*)f->halfedge(); 
        };

Here is the call graph for this function:

template<typename CVertex , typename CEdge , typename CFace , typename CHalfEdge >
MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::~FaceHalfedgeIterator (  )  [inline]

FaceHalfedgeIterator destructor

Definition at line 562 of file iterators.h.

{};


Member Function Documentation

template<typename CVertex , typename CEdge , typename CFace , typename CHalfEdge >
bool MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::end (  )  [inline]

Indicate whether all the halfedges have been accessed.

Definition at line 605 of file iterators.h.

{ return m_halfedge == NULL; };

template<typename CVertex , typename CEdge , typename CFace , typename CHalfEdge >
CHalfEdge* MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::operator* (  )  [inline]

The halfedge, pointed by the current iterator

Definition at line 600 of file iterators.h.

{ return value(); };

Here is the call graph for this function:

template<typename CVertex , typename CEdge , typename CFace , typename CHalfEdge >
void MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::operator++ ( int   )  [inline]

VertexVertexIterator prefix operator ++, goes to the next halfedge CCWly

Definition at line 581 of file iterators.h.

        {
                assert( m_halfedge != NULL );
                m_halfedge = (CHalfEdge*)m_halfedge->he_next();

                if( m_halfedge == m_face->halfedge() )
                {
                         m_halfedge = NULL;
                        return;
                };
        }

Here is the call graph for this function:

template<typename CVertex , typename CEdge , typename CFace , typename CHalfEdge >
void MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::operator++ (  )  [inline]

VertexVertexIterator prefix operator ++, goes to the next halfedge CCWly

Definition at line 566 of file iterators.h.

        {
                assert( m_halfedge != NULL );
                m_halfedge = (CHalfEdge*)m_halfedge->he_next();

                if( m_halfedge == m_face->halfedge() )
                {
                         m_halfedge = NULL;
                        return;
                };
        }

Here is the call graph for this function:

template<typename CVertex , typename CEdge , typename CFace , typename CHalfEdge >
CHalfEdge* MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::value (  )  [inline]

The halfedge, pointed by the current iterator

Definition at line 596 of file iterators.h.

{ return m_halfedge; };

Here is the caller graph for this function:


Member Data Documentation

template<typename CVertex , typename CEdge , typename CFace , typename CHalfEdge >
CFace* MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::m_face [private]

current face

Definition at line 605 of file iterators.h.

template<typename CVertex , typename CEdge , typename CFace , typename CHalfEdge >
CHalfEdge* MeshLib::FaceHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::m_halfedge [private]

current halfedge

Definition at line 615 of file iterators.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerator Defines