Generated on Fri Oct 19 11:26:17 2018 for Gecode by doxygen 1.6.3

Gecode::Iter::Ranges::Map< I, M, strict > Class Template Reference
[Range iterators]

Range iterator for mapping ranges. More...

#include <ranges-map.hpp>

List of all members.

Constructors and initialization



 Map (void)
 Default constructor.
 Map (I &i)
 Initialize with ranges from i.
 Map (I &i, const M &m)
 Initialize with ranges from i and map m.
void init (I &i)
 Initialize with ranges from i.
void init (I &i, const M &m)
 Initialize with ranges from i and map m.

Iteration control



bool operator() (void) const
 Test whether iterator is still at a range or done.
void operator++ (void)
 Move iterator to next range (if possible).

Range access



int min (void) const
 Return smallest value of range.
int max (void) const
 Return largest value of range.
unsigned int width (void) const
 Return width of range (distance between minimum and maximum).

Detailed Description

template<class I, class M, bool strict = true>
class Gecode::Iter::Ranges::Map< I, M, strict >

Range iterator for mapping ranges.

If strict is true, then mapped ranges are not allowed to be adjacent or overlap.

Definition at line 45 of file ranges-map.hpp.


Constructor & Destructor Documentation

template<class I, class M, bool strict = true>
Gecode::Iter::Ranges::Map< I, M, strict >::Map ( void   ) 

Default constructor.

template<class I, class M, bool strict = true>
Gecode::Iter::Ranges::Map< I, M, strict >::Map ( I &  i  ) 

Initialize with ranges from i.

template<class I, class M, bool strict = true>
Gecode::Iter::Ranges::Map< I, M, strict >::Map ( I &  i,
const M &  m 
)

Initialize with ranges from i and map m.


Member Function Documentation

template<class I, class M, bool strict = true>
void Gecode::Iter::Ranges::Map< I, M, strict >::init ( I &  i  ) 

Initialize with ranges from i.

template<class I, class M, bool strict = true>
void Gecode::Iter::Ranges::Map< I, M, strict >::init ( I &  i,
const M &  m 
)

Initialize with ranges from i and map m.

template<class I, class M, bool strict = true>
bool Gecode::Iter::Ranges::Map< I, M, strict >::operator() ( void   )  const

Test whether iterator is still at a range or done.

template<class I, class M, bool strict = true>
void Gecode::Iter::Ranges::Map< I, M, strict >::operator++ ( void   ) 

Move iterator to next range (if possible).

template<class I, class M, bool strict = true>
int Gecode::Iter::Ranges::Map< I, M, strict >::min ( void   )  const

Return smallest value of range.

template<class I, class M, bool strict = true>
int Gecode::Iter::Ranges::Map< I, M, strict >::max ( void   )  const

Return largest value of range.

template<class I, class M, bool strict = true>
unsigned int Gecode::Iter::Ranges::Map< I, M, strict >::width ( void   )  const

Return width of range (distance between minimum and maximum).


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