Generic brancher by view and value selection. More...
#include <brancher.hpp>
Public Member Functions | |
virtual const Choice * | choice (Space &home) |
Return choice. More... | |
virtual const Choice * | choice (const Space &home, Archive &e) |
Return choice. More... | |
virtual ExecStatus | commit (Space &home, const Choice &c, unsigned int a) |
Perform commit for choice c and alternative a. More... | |
virtual Actor * | copy (Space &home, bool share) |
Perform cloning. More... | |
virtual size_t | dispose (Space &home) |
Delete brancher and return its size. More... | |
![]() | |
virtual bool | status (const Space &home) const |
Check status of brancher, return true if alternatives left. More... | |
![]() | |
unsigned int | id (void) const |
Return unsigned brancher id. More... | |
Static Public Member Functions | |
static void | post (Home home, ViewArray< typename ViewSel::View > &x, ViewSel &vi_s, ValSel &va_s, BranchFilter bf=NULL) |
Brancher post function. More... | |
Protected Member Functions | |
ViewValBrancher (Space &home, bool share, ViewValBrancher &b) | |
Constructor for cloning b. More... | |
ViewValBrancher (Home home, ViewArray< typename ViewSel::View > &x, ViewSel &vi_s, ValSel &va_s, BranchFilter bf0) | |
Constructor for creation. More... | |
![]() | |
Pos | pos (Space &home) |
Return position information. More... | |
ViewSel::View | view (const Pos &p) const |
Return view according to position information p. More... | |
ViewBrancher (Space &home, bool share, ViewBrancher &b) | |
Constructor for cloning b. More... | |
ViewBrancher (Home home, ViewArray< typename ViewSel::View > &x, ViewSel &vi_s, BranchFilter bf0=NULL) | |
Constructor for creation. More... | |
![]() | |
Brancher (Home home) | |
Constructor for creation. More... | |
Brancher (Space &home, bool share, Brancher &b) | |
Constructor for cloning b. More... | |
Protected Attributes | |
ValSel | valsel |
Value selection object. More... | |
![]() | |
ViewArray< typename ViewSel::View > | x |
Views to branch on. More... | |
int | start |
Unassigned views start at x[start]. More... | |
ViewSel | viewsel |
View selection object. More... | |
BranchFilter | bf |
Branch filter function. More... | |
Generic brancher by view and value selection.
Implements view-based branching for an array of views (of type ViewSel::View) and value (of type ValSel::Val). The behaviour is defined by the class ViewSel (which view is selected for branching) and the class ValSel (which value is selected for branching).
Definition at line 113 of file brancher.hpp.
|
inlineprotected |
Constructor for cloning b.
Definition at line 375 of file brancher.hpp.
|
inlineprotected |
Constructor for creation.
Definition at line 360 of file brancher.hpp.
|
virtual |
|
virtual |
|
virtual |
Perform commit for choice c and alternative a.
Implements Gecode::Brancher.
Definition at line 411 of file brancher.hpp.
|
virtual |
|
inlinevirtual |
Delete brancher and return its size.
Reimplemented from Gecode::ViewBrancher< ViewSel >.
Definition at line 423 of file brancher.hpp.
|
static |
Brancher post function.
Definition at line 367 of file brancher.hpp.
|
protected |
Value selection object.
Definition at line 118 of file brancher.hpp.