Gecode::Search::Cutoff Class Referenceabstract
Functionality by programming task » Programming models » Search engines

Base class for cutoff generators for restart-based meta engine. More...

`#include <search.hh>`

## Constructors and member functions

| Cutoff (void)
| Default constructor.
virtual unsigned long int | operator() (void) const =0
| Return the current cutoff value.
virtual unsigned long int | operator++ (void)=0
| Increment and return the next cutoff value.
virtual | ~Cutoff (void)
| Destructor.

## Predefined cutoff generators

static Cutoff * | constant (unsigned long int scale=Config::slice)
| Create generator for constant sequence with constant s.
static Cutoff * | linear (unsigned long int scale=Config::slice)
| Create generator for linear sequence scaled by scale.
static Cutoff * | geometric (unsigned long int scale=Config::slice, double base=Config::base)
static Cutoff * | luby (unsigned long int scale=Config::slice)
| Create generator for luby sequence with scale-factor scale.
static Cutoff * | rnd (unsigned int seed, unsigned long int min, unsigned long int max, unsigned long int n)
static Cutoff * | append (Cutoff *c1, unsigned long int n, Cutoff *c2)
| Append cutoff values from c2 after n values from c1.
static Cutoff * | merge (Cutoff *c1, Cutoff *c2)
| Merge cutoff values from c1 with values from c2.
static Cutoff * | repeat (Cutoff *c, unsigned long int n)
| Create generator that repeats n times each cutoff value from c.

## Additional Inherited Members

Static Public Member Functions inherited from Gecode::HeapAllocated
static void * | operator new (size_t s)
| Memory management.
static void | operator delete (void *p)
| Free memory allocated from heap.

## Detailed Description

Base class for cutoff generators for restart-based meta engine.

Definition at line 472 of file search.hh.

## Constructor & Destructor Documentation

## Cutoff()

Gecode::Search::Cutoff::Cutoff | ( | void |  | ) |

inline

Default constructor.

Definition at line 41 of file cutoff.hpp.

## ~Cutoff()

Gecode::Search::Cutoff::~Cutoff | ( | void |  | ) |

inline virtual

Destructor.

Definition at line 43 of file cutoff.hpp.

## Member Function Documentation

## operator()()

virtual unsigned long int Gecode::Search::Cutoff::operator() | ( | void |  | ) | const

pure virtual

Return the current cutoff value.

Implemented in Gecode::Search::CutoffAppend, Gecode::Search::CutoffConstant, Gecode::Search::CutoffGeometric, Gecode::Search::CutoffLinear, Gecode::Search::CutoffLuby, Gecode::Search::CutoffMerge, Gecode::Search::CutoffRandom, and Gecode::Search::CutoffRepeat.

## operator++()

virtual unsigned long int Gecode::Search::Cutoff::operator++ | ( | void |  | ) |

pure virtual

Increment and return the next cutoff value.

Implemented in Gecode::Search::CutoffAppend, Gecode::Search::CutoffConstant, Gecode::Search::CutoffGeometric, Gecode::Search::CutoffLinear, Gecode::Search::CutoffLuby, Gecode::Search::CutoffMerge, Gecode::Search::CutoffRandom, and Gecode::Search::CutoffRepeat.

## constant()

Cutoff * Gecode::Search::Cutoff::constant | ( | unsigned long int | scale = Config::slice | ) |

static

Create generator for constant sequence with constant s.

Definition at line 148 of file cutoff.cpp.

## linear()

Cutoff * Gecode::Search::Cutoff::linear | ( | unsigned long int | scale = Config::slice | ) |

static

Create generator for linear sequence scaled by scale.

Definition at line 152 of file cutoff.cpp.

## geometric()

Cutoff * Gecode::Search::Cutoff::geometric | ( | unsigned long int | scale = Config::slice,
|  | double | base = Config::base )

static

Create generator for geometric sequence scaled by scale using base base

Definition at line 160 of file cutoff.cpp.

## luby()

Cutoff * Gecode::Search::Cutoff::luby | ( | unsigned long int | scale = Config::slice | ) |

static

Create generator for luby sequence with scale-factor scale.

Definition at line 156 of file cutoff.cpp.

## rnd()

Cutoff * Gecode::Search::Cutoff::rnd | ( | unsigned int | seed,
|  | unsigned long int | min,
|  | unsigned long int | max,
|  | unsigned long int | n )

static

Create generator for random sequence with seed seed that generates values between min and max with n steps between the extreme values (use 0 for n to get step size 1).

Definition at line 164 of file cutoff.cpp.

## append()

Cutoff * Gecode::Search::Cutoff::append | ( | Cutoff * | c1,
|  | unsigned long int | n,
|  | Cutoff * | c2 )

static

Append cutoff values from c2 after n values from c1.

Definition at line 171 of file cutoff.cpp.

## merge()

Cutoff * Gecode::Search::Cutoff::merge | ( | Cutoff * | c1,
|  | Cutoff * | c2 )

static

Merge cutoff values from c1 with values from c2.

Definition at line 175 of file cutoff.cpp.

## repeat()

Cutoff * Gecode::Search::Cutoff::repeat | ( | Cutoff * | c,
|  | unsigned long int | n )

static

Create generator that repeats n times each cutoff value from c.

Definition at line 179 of file cutoff.cpp.

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

- gecode/search.hh
- gecode/search/cutoff.cpp
- gecode/search/cutoff.hpp