Generic brancher by view and value selection. More...
#include <view-val.hpp>
Public Member Functions | |
virtual const Choice * | choice (Space &home) |
Return choice. | |
virtual const Choice * | choice (const Space &home, Archive &e) |
Return choice. | |
virtual ExecStatus | commit (Space &home, const Choice &c, unsigned int b) |
Perform commit for choice c and alternative b. | |
virtual NGL * | ngl (Space &home, const Choice &c, unsigned int b) const |
Create no-good literal for choice c and alternative b. | |
virtual void | print (const Space &home, const Choice &c, unsigned int b, std::ostream &o) const |
Print branch for choice c and alternative b. | |
virtual Actor * | copy (Space &home) |
Perform cloning. | |
virtual size_t | dispose (Space &home) |
Delete brancher and return its size. | |
![]() | |
virtual bool | status (const Space &home) const |
Check status of brancher, return true if alternatives left. | |
![]() | |
unsigned int | id (void) const |
Return brancher id. | |
BrancherGroup | group (void) const |
Return group brancher belongs to. | |
void | group (BrancherGroup g) |
Add brancher to group g. | |
![]() | |
virtual | ~Actor (void) |
To avoid warnings. | |
Static Public Member Functions | |
static void | post (Home home, ViewArray< View > &x, ViewSel< View > *vs[n], ValSelCommitBase< View, Val > *vsc, BranchFilter< Var > bf, VarValPrint< Var, Val > vvp) |
Brancher post function. | |
![]() | |
static void * | operator new (size_t s, Space &home) |
Allocate memory from space. | |
static void | operator delete (void *p, Space &home) |
No-op for exceptions. | |
static void * | operator new (size_t s) |
Not used. | |
static void | operator delete (void *p) |
Not used. | |
Protected Types | |
typedef View::VarType | Var |
The corresponding variable. | |
![]() | |
typedef View::VarType | Var |
The corresponding variable. | |
Protected Member Functions | |
ViewValBrancher (Space &home, ViewValBrancher &b) | |
Constructor for cloning b. | |
ViewValBrancher (Home home, ViewArray< View > &x, ViewSel< View > *vs[n], ValSelCommitBase< View, Val > *vsc, BranchFilter< Var > bf, VarValPrint< Var, Val > vvp) | |
Constructor for creation. | |
![]() | |
Pos | pos (Space &home) |
Return position information. | |
View | view (const Pos &p) const |
Return view according to position information p. | |
ViewBrancher (Space &home, ViewBrancher< View, Filter, n > &b) | |
Constructor for cloning b. | |
ViewBrancher (Home home, ViewArray< View > &x, ViewSel< View > *vs[n], BranchFilter< Var > bf) | |
Constructor for creation. | |
![]() | |
Brancher (Home home) | |
Constructor for creation. | |
Brancher (Space &home, Brancher &b) | |
Constructor for cloning b. | |
Protected Attributes | |
ValSelCommitBase< View, Val > * | vsc |
Value selection and commit object. | |
p | |
Print function. | |
![]() | |
ViewArray< View > | x |
Views to branch on. | |
int | start |
Unassigned views start at x[start]. | |
ViewSel< View > * | vs [n] |
View selection objects. | |
Filter | f |
Filter function. | |
Generic brancher by view and value selection.
Implements view-based branching for an array of views (of type View) and value (of type Val).
Definition at line 91 of file view-val.hpp.
|
protected |
The corresponding variable.
Definition at line 97 of file view-val.hpp.
|
inlineprotected |
Constructor for cloning b.
Definition at line 254 of file view-val.hpp.
|
inlineprotected |
Constructor for creation.
Definition at line 227 of file view-val.hpp.
|
virtual |
Return choice.
Implements Gecode::Brancher.
Reimplemented in Gecode::Int::LDSB::LDSBBrancher< View, n, Val, a, Filter, Print >, and Gecode::Set::LDSB::LDSBSetBrancher< View, n, Val, a, Filter, Print >.
Definition at line 271 of file view-val.hpp.
|
virtual |
Return choice.
Implements Gecode::Brancher.
Reimplemented in Gecode::Int::LDSB::LDSBBrancher< View, n, Val, a, Filter, Print >.
Definition at line 280 of file view-val.hpp.
|
virtual |
Perform commit for choice c and alternative b.
Implements Gecode::Brancher.
Reimplemented in Gecode::Int::LDSB::LDSBBrancher< View, n, Val, a, Filter, Print >, and Gecode::Set::LDSB::LDSBSetBrancher< View, n, Val, a, Filter, Print >.
Definition at line 292 of file view-val.hpp.
|
virtual |
Create no-good literal for choice c and alternative b.
Reimplemented from Gecode::Brancher.
Definition at line 306 of file view-val.hpp.
|
virtual |
Print branch for choice c and alternative b.
Prints an explanation of the alternative b of choice c on the stream o.
Reimplemented from Gecode::Brancher.
Definition at line 317 of file view-val.hpp.
|
virtual |
Perform cloning.
Implements Gecode::Actor.
Reimplemented in Gecode::Int::LDSB::LDSBBrancher< View, n, Val, a, Filter, Print >, and Gecode::Set::LDSB::LDSBSetBrancher< View, n, Val, a, Filter, Print >.
Definition at line 263 of file view-val.hpp.
|
inlinevirtual |
Delete brancher and return its size.
Reimplemented from Gecode::ViewBrancher< View, Filter, n >.
Reimplemented in Gecode::Int::LDSB::LDSBBrancher< View, n, Val, a, Filter, Print >.
Definition at line 331 of file view-val.hpp.
|
inlinestatic |
Brancher post function.
Definition at line 242 of file view-val.hpp.
|
protected |
Value selection and commit object.
Definition at line 99 of file view-val.hpp.
|
protected |
Print function.
Definition at line 101 of file view-val.hpp.