CGAL 4.7 - Handles and Circulators: Concepts

\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)

CGAL 4.7 - Handles and Circulators

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Classes
Concepts
Handles and Circulators Reference

##

## Concepts

concept | Circulator
| A Circulator is similar to an Iterator, with the difference that it is designed for circular data structures. More...
concept | ForwardCirculator
| See Subsection Forward Circulators in the page on Circulators. More...
concept | BidirectionalCirculator
| See Subsection Bidirectional Circulators in the page on Circulators. More...
concept | RandomAccessCirculator
| See Subsection Random Access Circulators in the page on Circulators. More...
concept | ConstHandle
| A constant handle. Refer to the `Handle` concept for more details. More...
concept | ConstRange
| A constant iterator range. Refer to the `Range` concept for more details. More...
concept | Handle

Most data structures in CGAL use the concept of `Handle` in their user interface to refer to the elements they store. This concept describes what is sometimes called a trivial iterator. A `Handle` is akin to a pointer to an object providing the dereference operator `operator*()` and member access `operator->()` but no increment or decrement operators like iterators. A `Handle` is intended to be used whenever the referenced object is not part of a logical sequence. More...

concept | Range
| CGAL and the STL heavily use the concepts of iterators and iterator ranges to describe linear sequences of elements, and algorithms operating on these. More...