Generated on Mon Aug 25 11:35:52 2008 for Gecode by doxygen 1.5.6

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

## 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 49 of file ranges-map.icc.

## 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).

## 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: