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]

List of all members.


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: