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)