Gecode::Iter::Ranges::Map< I, M, strict > Class Template Reference
[Range iterators]
Range iterator for mapping ranges. More...
#include <ranges-map.hpp>
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 49 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:
- gecode/iter/ranges-map.hpp (Revision: 11294)