Generated on Sat Feb 7 2015 02:01:50 for Gecode by doxygen 1.8.9.1
Gecode::Iter::Ranges::NaryAppend< I > Class Template Reference

Range iterator for appending arbitrarily many iterators. More...

#include <ranges-append.hpp>

Protected Attributes

I * r
 The array of iterators to be appended. More...
 
int n
 Number of iterators. More...
 
int active
 Number of current iterator being processed. More...
 
- Protected Attributes inherited from Gecode::Iter::Ranges::MinMax
int mi
 Minimum of current range. More...
 
int ma
 Maximum of current range. More...
 

Constructors and initialization

 NaryAppend (void)
 Default constructor. More...
 
 NaryAppend (I *i, int n)
 Initialize with n iterators in i. More...
 
void init (I *i, int n)
 Initialize with n iterators in i. More...
 

Iteration control

void operator++ (void)
 Move iterator to next range (if possible) More...
 

Additional Inherited Members

- Public Member Functions inherited from Gecode::Iter::Ranges::MinMax
 MinMax (void)
 Default constructor. More...
 
 MinMax (int min, int max)
 Initialize with range min to max. More...
 
bool operator() (void) const
 Test whether iterator is still at a range or done. More...
 
int min (void) const
 Return smallest value of range. More...
 
int max (void) const
 Return largest value of range. More...
 
unsigned int width (void) const
 Return width of range (distance between minimum and maximum) More...
 
- Protected Member Functions inherited from Gecode::Iter::Ranges::MinMax
void finish (void)
 Set range such that iteration stops More...
 

Detailed Description

template<class I>
class Gecode::Iter::Ranges::NaryAppend< I >

Range iterator for appending arbitrarily many iterators.

The iterators are allowed to be adjacent but not to overlap (in this case, use Gecode::Iter::NaryUnion)

Definition at line 85 of file ranges-append.hpp.

Constructor & Destructor Documentation

template<class I >
Gecode::Iter::Ranges::NaryAppend< I >::NaryAppend ( void  )
inline

Default constructor.

Definition at line 191 of file ranges-append.hpp.

template<class I >
Gecode::Iter::Ranges::NaryAppend< I >::NaryAppend ( I *  i,
int  n 
)
inline

Initialize with n iterators in i.

Definition at line 195 of file ranges-append.hpp.

Member Function Documentation

template<class I >
void Gecode::Iter::Ranges::NaryAppend< I >::init ( I *  i,
int  n 
)
inline

Initialize with n iterators in i.

Definition at line 208 of file ranges-append.hpp.

template<class I >
void Gecode::Iter::Ranges::NaryAppend< I >::operator++ ( void  )
inline

Move iterator to next range (if possible)

Definition at line 168 of file ranges-append.hpp.

Member Data Documentation

template<class I>
I* Gecode::Iter::Ranges::NaryAppend< I >::r
protected

The array of iterators to be appended.

Definition at line 88 of file ranges-append.hpp.

template<class I>
int Gecode::Iter::Ranges::NaryAppend< I >::n
protected

Number of iterators.

Definition at line 90 of file ranges-append.hpp.

template<class I>
int Gecode::Iter::Ranges::NaryAppend< I >::active
protected

Number of current iterator being processed.

Definition at line 92 of file ranges-append.hpp.


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