Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I > Class Template Reference
[Range iterators]
Inherited by Gecode::Int::ViewRanges< DoubleScaleView >, and Gecode::Int::ViewRanges< IntScaleView >.
Detailed Description
template<class Val, class UnsVal, class I>
class Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >
Range iterator for pointwise product with a positive integer.
Note that this iterator has a different interface as it can be used for both integer precision as well as double precision (depending on the type Val (int or double) and on the type UnsVal (unsigned int or double).
Definition at line 53 of file ranges-scale.icc.
Constructors and initialization | |
| ScaleUp (void) | |
| Default constructor. | |
| ScaleUp (I &i, int a) | |
| Initialize with ranges from i and scale factor a. | |
| void | init (I &i, int a) |
| Initialize with ranges from i and scale factor a. | |
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 | |
| Val | min (void) const |
| Return smallest value of range. | |
| Val | max (void) const |
| Return largest value of range. | |
| UnsVal | width (void) const |
| Return width of range (distance between minimum and maximum). | |
Protected Attributes | |
| I | i |
| Iterator to be scaled. | |
| int | a |
| Scale-factor. | |
| Val | cur |
| Current value of range. | |
| Val | end |
| Last value of scaled range of i. | |
Constructor & Destructor Documentation
template<class Val, class UnsVal, class I>
| Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::ScaleUp | ( | void | ) | [inline] |
template<class Val, class UnsVal, class I>
| Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::ScaleUp | ( | I & | i, | |
| int | a | |||
| ) | [inline] |
Member Function Documentation
template<class Val, class UnsVal, class I>
| void Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::init | ( | I & | i, | |
| int | a | |||
| ) | [inline] |
template<class Val, class UnsVal, class I>
| bool Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::operator() | ( | void | ) | const [inline] |
template<class Val, class UnsVal, class I>
| void Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::operator++ | ( | void | ) | [inline] |
template<class Val, class UnsVal, class I>
| Val Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::min | ( | void | ) | const [inline] |
template<class Val, class UnsVal, class I>
| Val Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::max | ( | void | ) | const [inline] |
template<class Val, class UnsVal, class I>
| UnsVal Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::width | ( | void | ) | const [inline] |
Return width of range (distance between minimum and maximum).
Definition at line 188 of file ranges-scale.icc.
Member Data Documentation
template<class Val, class UnsVal, class I>
I Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::i [protected] |
template<class Val, class UnsVal, class I>
int Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::a [protected] |
template<class Val, class UnsVal, class I>
Val Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::cur [protected] |
template<class Val, class UnsVal, class I>
Val Gecode::Iter::Ranges::ScaleUp< Val, UnsVal, I >::end [protected] |
The documentation for this class was generated from the following file:
- gecode/iter/ranges-scale.icc (Revision: 4973)
