Generated on Sat Feb 7 2015 02:01:50 for Gecode by doxygen 1.8.9.1
Gecode::Iter::Ranges::Cache Class Reference

Range iterator cache More...

#include <ranges-cache.hpp>

Constructors and initialization

 Cache (void)
 Default constructor. More...
 
 Cache (const Cache &m)
 Copy constructor. More...
 
template<class I >
 Cache (Region &r, I &i)
 Initialize with ranges from i. More...
 
template<class I >
void init (Region &r, I &i)
 Initialize with ranges from i. More...
 
Cacheoperator= (const Cache &m)
 Assignment operator (both caches must be allocated from the same region) More...
 

Additional Inherited Members

- Public Member Functions inherited from Gecode::Iter::Ranges::RangeListIter
 ~RangeListIter (void)
 Destructor. More...
 
 RangeListIter (void)
 Default constructor. More...
 
 RangeListIter (const RangeListIter &i)
 Copy constructor. More...
 
 RangeListIter (Region &r)
 Initialize. More...
 
void init (Region &r)
 Initialize. More...
 
RangeListIteroperator= (const RangeListIter &i)
 Assignment operator. More...
 
bool operator() (void) const
 Test whether iterator is still at a range or done. More...
 
void operator++ (void)
 Move iterator to next range (if possible) More...
 
void reset (void)
 Reset iterator to start. More...
 
int min (void) const
 Return smallest value of range. More...
 
int max (void) const
 Return largest value of range. More...
 
unsigned int width (void) const
 Return width of range (distance between minimum and maximum) More...
 
- Protected Member Functions inherited from Gecode::Iter::Ranges::RangeListIter
void set (RangeList *l)
 Set range lists. More...
 
RangeListget (void) const
 Get head of current range list. More...
 
RangeListrange (int min, int max, RangeList *&f)
 Create new range possibly from freelist f and init. More...
 
RangeListrange (int min, int max)
 Create new range possibly and init. More...
 
template<class I >
RangeListrange (I &i, RangeList *&f)
 Create new range possibly from freelist f and init. More...
 
template<class I >
RangeListrange (I &i)
 Create new range possibly and init. More...
 
template<class I >
RangeListcopy (I &i)
 Copy the iterator i to a range list. More...
 
- Protected Attributes inherited from Gecode::Iter::Ranges::RangeListIter
RLIOrlio
 Reference to shared object. More...
 
RangeListh
 Head of range list. More...
 
RangeListc
 Current list element. More...
 

Detailed Description

Range iterator cache

Allows to iterate the ranges as defined by the input iterator several times provided the Cache is reset by the reset member function.

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

Constructor & Destructor Documentation

Gecode::Iter::Ranges::Cache::Cache ( void  )
inline

Default constructor.

Definition at line 70 of file ranges-cache.hpp.

Gecode::Iter::Ranges::Cache::Cache ( const Cache m)
inline

Copy constructor.

Definition at line 73 of file ranges-cache.hpp.

template<class I >
Gecode::Iter::Ranges::Cache::Cache ( Region r,
I &  i 
)
inline

Initialize with ranges from i.

Definition at line 94 of file ranges-cache.hpp.

Member Function Documentation

template<class I >
void Gecode::Iter::Ranges::Cache::init ( Region r,
I &  i 
)

Initialize with ranges from i.

Definition at line 78 of file ranges-cache.hpp.

Cache & Gecode::Iter::Ranges::Cache::operator= ( const Cache m)
inline

Assignment operator (both caches must be allocated from the same region)

Definition at line 99 of file ranges-cache.hpp.


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