OpenMesh::Iterators::FaceHalfedgeIterT< Mesh > Class Template Reference

#include <OpenMesh/Mesh/Iterators/CirculatorsT.hh>

List of all members.

Public Types

typedef std::ptrdiff_t difference_type
typedef Mesh::HalfedgeHandle HalfedgeHandle
typedef
std::bidirectional_iterator_tag 
iterator_category
typedef Mesh * mesh_ptr
typedef Mesh & mesh_ref
typedef Mesh::Halfedge * pointer
typedef Mesh::Halfedge & reference
typedef Mesh::HalfedgeHandle value_handle
typedef Mesh::Halfedge value_type

Public Member Functions

HalfedgeHandle current_halfedge_handle () const
 FaceHalfedgeIterT (const FaceHalfedgeIterT &_rhs)
 Copy constructor.
 FaceHalfedgeIterT (mesh_ref _mesh, HalfedgeHandle _heh, bool _end=false)
 Construct with mesh and start halfedge.
 FaceHalfedgeIterT (mesh_ref _mesh, typename Mesh::FaceHandle _start, bool _end=false)
 Construct with mesh and a typename Mesh::FaceHandle.
 FaceHalfedgeIterT ()
 Default constructor.
Mesh::HalfedgeHandle handle () const
 Return the handle of the current target.
 operator bool () const
 operator typename Mesh::HalfedgeHandle () const
 Cast to the handle of the current target.
bool operator!= (const FaceHalfedgeIterT &_rhs) const
 Not equal ?
reference operator* () const
 Return a reference to the current target.
FaceHalfedgeIterToperator++ ()
 Pre-Increment (next cw target).
FaceHalfedgeIterToperator-- ()
 Pre-Decrement (next ccw target).
pointer operator-> () const
 Return a pointer to the current target.
FaceHalfedgeIterToperator= (const FaceHalfedgeIterT< Mesh > &_rhs)
 Assignment operator.
bool operator== (const FaceHalfedgeIterT &_rhs) const
 Equal ?

Protected Attributes

HalfedgeHandle heh_
int lap_counter_
mesh_ptr mesh_
HalfedgeHandle start_

Friends

class ConstFaceHalfedgeIterT< Mesh >

Detailed Description

template<class Mesh>
class OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >

Circulator.

Definition at line 2424 of file CirculatorsT.hh.


Member Typedef Documentation

template<class Mesh>
typedef std::ptrdiff_t OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::difference_type

Definition at line 2445 of file CirculatorsT.hh.

template<class Mesh>
typedef Mesh::HalfedgeHandle OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::HalfedgeHandle

Definition at line 2431 of file CirculatorsT.hh.

template<class Mesh>
typedef std::bidirectional_iterator_tag OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::iterator_category

Definition at line 2444 of file CirculatorsT.hh.

template<class Mesh>
typedef Mesh* OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::mesh_ptr

Definition at line 2447 of file CirculatorsT.hh.

template<class Mesh>
typedef Mesh& OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::mesh_ref

Definition at line 2446 of file CirculatorsT.hh.

template<class Mesh>
typedef Mesh::Halfedge* OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::pointer

Definition at line 2449 of file CirculatorsT.hh.

template<class Mesh>
typedef Mesh::Halfedge& OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::reference

Definition at line 2448 of file CirculatorsT.hh.

template<class Mesh>
typedef Mesh::HalfedgeHandle OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::value_handle

Definition at line 2434 of file CirculatorsT.hh.

template<class Mesh>
typedef Mesh::Halfedge OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::value_type

Definition at line 2433 of file CirculatorsT.hh.


Constructor & Destructor Documentation

template<class Mesh>
OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::FaceHalfedgeIterT (  )  [inline]

Default constructor.

Definition at line 2455 of file CirculatorsT.hh.

template<class Mesh>
OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::FaceHalfedgeIterT ( mesh_ref  _mesh,
typename Mesh::FaceHandle  _start,
bool  _end = false 
) [inline]

Construct with mesh and a typename Mesh::FaceHandle.

Definition at line 2459 of file CirculatorsT.hh.

template<class Mesh>
OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::FaceHalfedgeIterT ( mesh_ref  _mesh,
HalfedgeHandle  _heh,
bool  _end = false 
) [inline]

Construct with mesh and start halfedge.

Definition at line 2468 of file CirculatorsT.hh.

template<class Mesh>
OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::FaceHalfedgeIterT ( const FaceHalfedgeIterT< Mesh > &  _rhs  )  [inline]

Copy constructor.

Definition at line 2477 of file CirculatorsT.hh.


Member Function Documentation

template<class Mesh>
HalfedgeHandle OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::current_halfedge_handle (  )  const [inline]

Get the current halfedge. There are Vertex*Iters and Face*Iters. For both the current state is defined by the current halfedge. This is what this method returns.

Definition at line 2557 of file CirculatorsT.hh.

template<class Mesh>
Mesh::HalfedgeHandle OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::handle (  )  const [inline]

Return the handle of the current target.

Definition at line 2563 of file CirculatorsT.hh.

template<class Mesh>
OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::operator bool (  )  const [inline]

Returns whether the circulator is still valid. After one complete round around a vertex/face the circulator becomes invalid, i.e. this function will return false. Nevertheless you can continue circulating. This method just tells you whether you have completed the first round.

Definition at line 2596 of file CirculatorsT.hh.

template<class Mesh>
OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::operator typename Mesh::HalfedgeHandle (  )  const [inline]

Cast to the handle of the current target.

Definition at line 2570 of file CirculatorsT.hh.

template<class Mesh>
bool OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::operator!= ( const FaceHalfedgeIterT< Mesh > &  _rhs  )  const [inline]

Not equal ?

Definition at line 2530 of file CirculatorsT.hh.

template<class Mesh>
reference OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::operator* (  )  const [inline]

Return a reference to the current target.

Definition at line 2577 of file CirculatorsT.hh.

template<class Mesh>
FaceHalfedgeIterT& OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::operator++ (  )  [inline]

Pre-Increment (next cw target).

Definition at line 2536 of file CirculatorsT.hh.

template<class Mesh>
FaceHalfedgeIterT& OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::operator-- (  )  [inline]

Pre-Decrement (next ccw target).

Definition at line 2545 of file CirculatorsT.hh.

template<class Mesh>
pointer OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::operator-> (  )  const [inline]

Return a pointer to the current target.

Definition at line 2584 of file CirculatorsT.hh.

template<class Mesh>
FaceHalfedgeIterT& OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::operator= ( const FaceHalfedgeIterT< Mesh > &  _rhs  )  [inline]

Assignment operator.

Definition at line 2486 of file CirculatorsT.hh.

template<class Mesh>
bool OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::operator== ( const FaceHalfedgeIterT< Mesh > &  _rhs  )  const [inline]

Equal ?

Definition at line 2521 of file CirculatorsT.hh.


Friends And Related Function Documentation

template<class Mesh>
friend class ConstFaceHalfedgeIterT< Mesh > [friend]

Definition at line 2516 of file CirculatorsT.hh.


Member Data Documentation

template<class Mesh>
HalfedgeHandle OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::heh_ [protected]

Definition at line 2604 of file CirculatorsT.hh.

template<class Mesh>
int OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::lap_counter_ [protected]

Definition at line 2605 of file CirculatorsT.hh.

template<class Mesh>
mesh_ptr OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::mesh_ [protected]

Definition at line 2603 of file CirculatorsT.hh.

template<class Mesh>
HalfedgeHandle OpenMesh::Iterators::FaceHalfedgeIterT< Mesh >::start_ [protected]

Definition at line 2604 of file CirculatorsT.hh.


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


openmesh
Author(s): Benjamin Pitzer
autogenerated on Fri Jan 11 12:11:18 2013