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

Range iterator with size counting More...

#include <ranges-size.hpp>

Protected Attributes

i
 Iterator to compute size of.
unsigned int _size
 Accumulated size.

Constructors and initialization

 Size (void)
 Default constructor.
 Size (I &i)
 Initialize with ranges from i.
void init (I &i)
 Initialize with ranges from i.

Iteration control

bool operator() (void)
 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)

Size access

unsigned int size (void) const
 Return accumulated size.

Detailed Description

template<class I>
class Gecode::Iter::Ranges::Size< I >

Range iterator with size counting

Allows to iterate the ranges as defined by the input iterator and access the size of the set already iterated. After complete iteration, the reported size is thus the size of the set.

Definition at line 46 of file ranges-size.hpp.

Constructor & Destructor Documentation

◆ Size() [1/2]

template<class I>
Gecode::Iter::Ranges::Size< I >::Size ( void )
inline

Default constructor.

Definition at line 91 of file ranges-size.hpp.

◆ Size() [2/2]

template<class I>
Gecode::Iter::Ranges::Size< I >::Size ( I & i)
inline

Initialize with ranges from i.

Definition at line 103 of file ranges-size.hpp.

Member Function Documentation

◆ init()

template<class I>
void Gecode::Iter::Ranges::Size< I >::init ( I & i)
inline

Initialize with ranges from i.

Definition at line 96 of file ranges-size.hpp.

◆ operator()()

template<class I>
bool Gecode::Iter::Ranges::Size< I >::operator() ( void )
inline

Test whether iterator is still at a range or done.

Definition at line 113 of file ranges-size.hpp.

◆ operator++()

template<class I>
void Gecode::Iter::Ranges::Size< I >::operator++ ( void )
inline

Move iterator to next range (if possible)

Definition at line 107 of file ranges-size.hpp.

◆ min()

template<class I>
int Gecode::Iter::Ranges::Size< I >::min ( void ) const
inline

Return smallest value of range.

Definition at line 119 of file ranges-size.hpp.

◆ max()

template<class I>
int Gecode::Iter::Ranges::Size< I >::max ( void ) const
inline

Return largest value of range.

Definition at line 124 of file ranges-size.hpp.

◆ width()

template<class I>
unsigned int Gecode::Iter::Ranges::Size< I >::width ( void ) const
inline

Return width of range (distance between minimum and maximum)

Definition at line 129 of file ranges-size.hpp.

◆ size()

template<class I>
unsigned int Gecode::Iter::Ranges::Size< I >::size ( void ) const
inline

Return accumulated size.

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

Member Data Documentation

◆ i

template<class I>
I Gecode::Iter::Ranges::Size< I >::i
protected

Iterator to compute size of.

Definition at line 49 of file ranges-size.hpp.

◆ _size

template<class I>
unsigned int Gecode::Iter::Ranges::Size< I >::_size
protected

Accumulated size.

Definition at line 51 of file ranges-size.hpp.


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