18 typedef TargetType value_type;
19 typedef TargetHandle value_handle;
24 typedef const TargetType& reference;
25 typedef const TargetType* pointer;
29 typedef TargetType& reference;
30 typedef TargetType* pointer;
42 start_(_mesh.halfedge_handle(_start)),
72 active_ = _rhs.active_;
93 active_ = _rhs.active_;
97 friend class ConstCircT<Mesh>;
103 return ((mesh_ == _rhs.mesh_) &&
104 (start_ == _rhs.start_) &&
105 (heh_ == _rhs.heh_) &&
106 (active_ == _rhs.active_));
151 operator TargetHandle()
const {
160 return mesh_->deref(
handle());
167 return &mesh_->deref(
handle());
177 operator bool()
const {
178 return heh_.is_valid() && ((start_ != heh_) || (!active_));
185 HalfedgeHandle start_, heh_;
Circulator.
Definition: circulators_template.hh:10
CirculatorT & operator++()
Pre-Increment (next cw target)
Definition: circulators_template.hh:117
CirculatorT(mesh_ref _mesh, HalfedgeHandle _heh)
Construct with mesh and start halfedge.
Definition: circulators_template.hh:49
bool operator==(const CirculatorT &_rhs) const
Equal ?
Definition: circulators_template.hh:102
reference operator*() const
Return a reference to the current target.
Definition: circulators_template.hh:158
CirculatorT(const CirculatorT &_rhs)
Copy constructor.
Definition: circulators_template.hh:58
CirculatorT()
Default constructor.
Definition: circulators_template.hh:36
CirculatorT & operator--()
Pre-Decrement (next ccw target)
Definition: circulators_template.hh:126
HalfedgeHandle current_halfedge_handle() const
Get the current halfedge.
Definition: circulators_template.hh:138
TargetHandle handle() const
Return the handle of the current target.
Definition: circulators_template.hh:144
pointer operator->() const
Return a pointer to the current target.
Definition: circulators_template.hh:165
CirculatorT & operator=(const CirculatorT< Mesh > &_rhs)
Assignment operator.
Definition: circulators_template.hh:67
CirculatorT(mesh_ref _mesh, SourceHandle _start)
Construct with mesh and a SourceHandle.
Definition: circulators_template.hh:40
bool operator!=(const CirculatorT &_rhs) const
Not equal ?
Definition: circulators_template.hh:111
Polygonal mesh based on the ArrayKernel.
Definition: PolyMesh_ArrayKernelT.hh:96
Kernel::HalfedgeHandle HalfedgeHandle
Scalar type.
Definition: PolyMeshT.hh:137