Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX > Class Template Reference
[Range iterators with virtual member functions]
Inherits Gecode::Iter::Ranges::MinMax, and Gecode::Iter::Ranges::Virt::Iterator.
Detailed Description
template<int UMIN, int UMAX>
class Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >
Range iterator for computing the complement (described by template arguments).
The complement is computed with respect to a given universe set provided as template arguments (UMIN ... UMAX). The universe must always be a superset!
Definition at line 53 of file virtual-ranges-compl.icc.
Constructors and initialization | |
| Compl (void) | |
| Default constructor. | |
| Compl (Iterator *i) | |
| Initialize with iterator i. | |
| ~Compl (void) | |
| Destructor. | |
Range access | |
| virtual int | min (void) const |
| Return smallest value of range. | |
| virtual int | max (void) const |
| Return largest value of range. | |
| virtual unsigned int | width (void) const |
| Return width of range (distance between minimum and maximum). | |
Iteration control | |
| void | operator++ (void) |
| Move iterator to next range (if possible). | |
| virtual bool | operator() (void) |
| Test whether iterator is still at a range or done. | |
Protected Member Functions | |
| void | start (void) |
| Initialize. | |
Protected Attributes | |
| Iterator * | i |
| Iterator to compute complement for. | |
Constructor & Destructor Documentation
| Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >::Compl | ( | void | ) | [inline] |
| Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >::Compl | ( | Iterator * | i | ) | [inline] |
| Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >::~Compl | ( | void | ) | [inline] |
Member Function Documentation
| void Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >::start | ( | void | ) | [inline, protected] |
| int Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >::min | ( | void | ) | const [inline, virtual] |
Return smallest value of range.
Reimplemented from Gecode::Iter::Ranges::MinMax.
Definition at line 192 of file virtual-ranges-compl.icc.
| int Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >::max | ( | void | ) | const [inline, virtual] |
Return largest value of range.
Reimplemented from Gecode::Iter::Ranges::MinMax.
Definition at line 196 of file virtual-ranges-compl.icc.
| unsigned int Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >::width | ( | void | ) | const [inline, virtual] |
Return width of range (distance between minimum and maximum).
Reimplemented from Gecode::Iter::Ranges::MinMax.
Definition at line 200 of file virtual-ranges-compl.icc.
| void Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >::operator++ | ( | void | ) | [inline, virtual] |
Move iterator to next range (if possible).
Implements Gecode::Iter::Ranges::Virt::Iterator.
Definition at line 175 of file virtual-ranges-compl.icc.
| bool Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >::operator() | ( | void | ) | [inline, virtual] |
Test whether iterator is still at a range or done.
Implements Gecode::Iter::Ranges::Virt::Iterator.
Definition at line 188 of file virtual-ranges-compl.icc.
Member Data Documentation
Iterator* Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX >::i [protected] |
The documentation for this class was generated from the following file:
- gecode/iter/virtual-ranges-compl.icc (Revision: 4973)
