Gecode::IntValBranch Class Reference
Functionality by programming task » Programming models » Using integer variables and constraints » Branching

Which values to select for branching first. More...

`#include <int.hh>`

## Public Types

enum | Select { SEL_MIN , SEL_MED , SEL_MAX , SEL_RND , SEL_SPLIT_MIN , SEL_SPLIT_MAX , SEL_RANGE_MIN , SEL_RANGE_MAX , SEL_VAL_COMMIT , SEL_VALUES_MIN , SEL_VALUES_MAX }
| Which value selection. More...
Public Types inherited from Gecode::ValBranch< IntVar >
typedef BranchTraits< IntVar >::Val | BranchVal
| The corresponding branching value function.
typedef BranchTraits< IntVar >::Commit | BranchCommit
| The corresponding branching commit function.

## Public Member Functions

| IntValBranch (Select s=SEL_MIN)
| Initialize with selection strategy s.
| IntValBranch (Rnd r)
| Initialize with random number generator r.
| IntValBranch (IntBranchVal v, IntBranchCommit c)
| Initialize with value function f and commit function c.
Select | select (void) const
| Return selection strategy.
Public Member Functions inherited from Gecode::ValBranch< IntVar >
| ValBranch (void)
| Initialize.
Rnd | rnd (void) const
| Return random number generator.
BranchVal | val (void) const
| Return value function.
BranchCommit | commit (void) const
| Return commit function.

## Protected Attributes

Select | s
| Which value to select.
Protected Attributes inherited from Gecode::ValBranch< IntVar >
Rnd | r
| Random number generator.
BranchVal | vf
| Value function.
BranchCommit | cf
| Commit function.

## Detailed Description

Which values to select for branching first.

Definition at line 4854 of file int.hh.

## Member Enumeration Documentation

## Select

enum Gecode::IntValBranch::Select

Which value selection.

Enumerator
SEL_MIN | Select smallest value.
SEL_MED | Select greatest value not greater than the median.
SEL_MAX | Select largest value.
SEL_RND | Select random value.
SEL_SPLIT_MIN | Select values not greater than mean of smallest and largest value.
SEL_SPLIT_MAX | Select values greater than mean of smallest and largest value.
SEL_RANGE_MIN | Select the smallest range of the variable domain if it has several ranges, otherwise select values not greater than mean of smallest and largest value.
SEL_RANGE_MAX | Select the largest range of the variable domain if it has several ranges, otherwise select values greater than mean of smallest and largest value.
SEL_VAL_COMMIT | Select value according to user-defined functions.
SEL_VALUES_MIN | Select all values starting from smallest.
SEL_VALUES_MAX | Select all values starting from largest.

Definition at line 4857 of file int.hh.

## Constructor & Destructor Documentation

## IntValBranch() [1/3]

Gecode::IntValBranch::IntValBranch | ( | Select | s = SEL_MIN | ) |

inline

Initialize with selection strategy s.

Definition at line 37 of file val.hpp.

## IntValBranch() [2/3]

Gecode::IntValBranch::IntValBranch | ( | Rnd | r | ) |

inline

Initialize with random number generator r.

Definition at line 41 of file val.hpp.

## IntValBranch() [3/3]

Gecode::IntValBranch::IntValBranch | ( | IntBranchVal | v,
|  | IntBranchCommit | c )

inline

Initialize with value function f and commit function c.

Definition at line 45 of file val.hpp.

## Member Function Documentation

## select()

IntValBranch::Select Gecode::IntValBranch::select | ( | void |  | ) | const

inline

Return selection strategy.

Definition at line 49 of file val.hpp.

## Member Data Documentation

## s

Select Gecode::IntValBranch::s

protected

Which value to select.

Definition at line 4872 of file int.hh.

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

- gecode/int.hh
- gecode/int/branch/val.hpp