CGAL 6.2 - STL Extensions for CGAL: CGAL::Join_input_iterator_3< I1, I2, I2, Op > Class Template Reference

CGAL 6.2 - STL Extensions for CGAL

Loading...
Searching...
No Matches
List of all members | Public Types | Public Member Functions
CGAL::Join_input_iterator_3< I1, I2, I2, Op > Class Template Reference
Reference Manual » Iterators and Iterator/Circulator Adaptors

`#include <CGAL/iterator.h>`

## Definition

template<typename I1, typename I2, typename I2, typename Op>
class CGAL::Join_input_iterator_3< I1, I2, I2, Op >

The class `Join_input_iterator_3` joins three iterators.

The result is again an iterator (of the same iterator category type as the original iterator) that reads an object from the stream and applies a function object to that object.

Is model of
  `InputIterator`

## Public Types
typedef Op::result_type | value_type
typedef std::iterator_traits< I1 >::difference_type | difference_type
typedef value_type * | pointer
typedef value_type & | reference

## Public Member Functions
I1 | current_iterator1 () const
| returns current position of the first iterator.
I2 | current_iterator2 () const
| returns current position of the second iterator.
I3 | current_iterator3 () const
| returns current position of the second iterator.
const value_type & | operator* () const
| returns `op(current_iterator1(), current_iterator2(), current_iterator3())`.

## Creation
| Join_input_iterator_3 ()
| Default constructor.
| Join_input_iterator_3 (I1 i1, I2 i2, I3 i3, const Op &op=Op())
| creates a join iterator from the given iterators `i1`, `i2`, `i3`, and the functor `op`.