Generated on Thu Jan 16 2025 00:00:00 for Gecode by doxygen 1.14.0
Gecode::Iter::Ranges::Compl< UMIN, UMAX, I > Class Template Reference

Range iterator for computing the complement (described by template arguments) More...

#include <ranges-compl.hpp>

Protected Member Functions

void start (void)
 Initialize.
Protected Member Functions inherited from Gecode::Iter::Ranges::MinMax
void finish (void)
 Set range such that iteration stops

Protected Attributes

i
 Iterator to compute complement for.
Protected Attributes inherited from Gecode::Iter::Ranges::MinMax
int mi
 Minimum of current range.
int ma
 Maximum of current range.

Constructors and initialization

 Compl (void)
 Default constructor.
 Compl (I &i)
 Initialize with iterator i.
void init (I &i)
 Initialize with iterator i.

Iteration control

void operator++ (void)
 Move iterator to next range (if possible)

Additional Inherited Members

 MinMax (void)
 Default constructor.
 MinMax (int min, int max)
 Initialize with range min to max.
bool operator() (void) const
 Test whether iterator is still at a range or done.
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<int UMIN, int UMAX, class I>
class Gecode::Iter::Ranges::Compl< UMIN, UMAX, I >

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 49 of file ranges-compl.hpp.

Constructor & Destructor Documentation

◆ Compl() [1/2]

template<int UMIN, int UMAX, class I>
Gecode::Iter::Ranges::Compl< UMIN, UMAX, I >::Compl ( void )
inline

Default constructor.

Definition at line 135 of file ranges-compl.hpp.

◆ Compl() [2/2]

template<int UMIN, int UMAX, class I>
Gecode::Iter::Ranges::Compl< UMIN, UMAX, I >::Compl ( I & i)
inline

Initialize with iterator i.

Definition at line 139 of file ranges-compl.hpp.

Member Function Documentation

◆ start()

template<int UMIN, int UMAX, class I>
void Gecode::Iter::Ranges::Compl< UMIN, UMAX, I >::start ( void )
inlineprotected

Initialize.

Definition at line 114 of file ranges-compl.hpp.

◆ init()

template<int UMIN, int UMAX, class I>
void Gecode::Iter::Ranges::Compl< UMIN, UMAX, I >::init ( I & i)
inline

Initialize with iterator i.

Definition at line 145 of file ranges-compl.hpp.

◆ operator++()

template<int UMIN, int UMAX, class I>
void Gecode::Iter::Ranges::Compl< UMIN, UMAX, I >::operator++ ( void )
inline

Move iterator to next range (if possible)

Definition at line 151 of file ranges-compl.hpp.

Member Data Documentation

◆ i

template<int UMIN, int UMAX, class I>
I Gecode::Iter::Ranges::Compl< UMIN, UMAX, I >::i
protected

Iterator to compute complement for.

Definition at line 52 of file ranges-compl.hpp.


The documentation for this class was generated from the following file: