61 vars.
a.expand(home,
x);
65 vars.
b.expand(home,
x);
69 vars.
c.expand(home,
x);
73 vars.
d.expand(home,
x);
113 if (home.
failed())
return;
128 if (home.
failed())
return;
129 vars.
a.expand(home,
x);
133 vars.
b.expand(home,
x);
137 vars.
c.expand(home,
x);
141 vars.
d.expand(home,
x);
Home class for posting propagators
bool failed(void) const
Check whether corresponding space is failed.
Which value to select for assignment.
Which values to select for branching first.
Which variable to select for branching.
Expand and CHB void expand(Home home, const SetVarArgs &x)
@ SEL_NONE
First unassigned.
@ SEL_RND
Random (uniform, for tie breaking)
Combine variable selection criteria for tie-breaking.
VarBranch a
Branching criteria to try in order.
Base class for value selection and commit.
Select the first unassigned view.
Abstract class for view selection.
void assign(Home home, const FloatVarArgs &x, FloatVarBranch vars, FloatAssign vals, FloatBranchFilter bf=nullptr, FloatVarValPrint vvp=nullptr)
Assign all x with variable selection vars and value selection vals.
void branch(Home home, const FloatVarArgs &x, FloatVarBranch vars, FloatValBranch vals, FloatBranchFilter bf=nullptr, FloatVarValPrint vvp=nullptr)
Branch over x with variable selection vars and value selection vals.
std::function< bool(const Space &home, SetVar x, int i)> SetBranchFilter
Branch filter function type for set variables.
ViewSel< IntView > * viewsel(Space &home, const IntVarBranch &ivb)
Return view selectors for integer views.
ValSelCommitBase< IntView, int > * valselcommit(Space &home, const IntValBranch &ivb)
Return value and commit for integer views.
Gecode toplevel namespace
Select first unassigned variable SetVarBranch SET_VAR_NONE(void)
Function type for printing branching alternatives for set variables typedef std::function< void(const Space &home, const Brancher &b, unsigned int a, SetVar x, int i, const int &n, std::ostream &o)> SetVarValPrint
void postviewvalbrancher(Home home, ViewArray< View > &x, ViewSel< View > *vs[n], ValSelCommitBase< View, Val > *vsc, BranchFilter< typename View::VarType > bf, VarValPrint< typename View::VarType, Val > vvp)
Post view value brancher.
Post propagator for SetVar x