CirculatorT< Mesh > Class Template Reference

Circulator. More...

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

## Public Types

typedef Mesh::HalfedgeHandle | HalfedgeHandle
typedef TargetType | value_type
typedef TargetHandle | value_handle
typedef Mesh & | mesh_ref
typedef Mesh * | mesh_ptr
typedef TargetType & | reference
typedef TargetType * | pointer

## Public Member Functions

| CirculatorT ()
| Default constructor.
| CirculatorT (mesh_ref _mesh, SourceHandle _start)
| Construct with mesh and a SourceHandle.
| CirculatorT (mesh_ref _mesh, HalfedgeHandle _heh)
| Construct with mesh and start halfedge.
| CirculatorT (const CirculatorT &_rhs)
| Copy constructor.
CirculatorT & | operator= (const CirculatorT< Mesh > &_rhs)
| Assignment operator.
bool | operator== (const CirculatorT &_rhs) const
| Equal ?
bool | operator!= (const CirculatorT &_rhs) const
| Not equal ?
CirculatorT & | operator++ ()
| Pre-Increment (next cw target)
CirculatorT & | operator-- ()
| Pre-Decrement (next ccw target)
HalfedgeHandle | current_halfedge_handle () const
| Get the current halfedge. More...
TargetHandle | handle () const
| Return the handle of the current target.
| operator TargetHandle () const
| Cast to the handle of the current target.
reference | operator* () const
| Return a reference to the current target.
pointer | operator-> () const
| Return a pointer to the current target.
| operator bool () const
| Returns whether the circulator is still valid. More...

## Friends

class | ConstCircT< Mesh >

## Detailed Description

### template<class Mesh>
class CirculatorT< Mesh >

Circulator.

## Member Function Documentation

## current_halfedge_handle()

template<class Mesh>

HalfedgeHandle CirculatorT< 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.

## operator bool()

template<class Mesh>

CirculatorT< 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.

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

- OpenMesh/Core/Mesh/gen/circulators_template.hh