Abstract class for view selection. More...
#include <brancher-view-sel.hpp>
Public Types | |
typedef _View | View |
Define the view type. More... | |
typedef BranchTraits< typename View::VarType >::Filter | BranchFilter |
The branch filter that corresponds to the view type. More... | |
Initialization | |
ViewSel (Space &home, const VarBranch &vb) | |
Constructor for creation. More... | |
ViewSel (Space &home, bool shared, ViewSel< View > &vs) | |
Constructor for copying during cloning. More... | |
View selection and tie breaking | |
virtual int | select (Space &home, ViewArray< View > &x, int s)=0 |
Select a view from x starting from s and return its position. More... | |
virtual int | select (Space &home, ViewArray< View > &x, int s, BranchFilter bf)=0 |
Select a view from x starting from s and return its position. More... | |
virtual void | ties (Space &home, ViewArray< View > &x, int s, int *ties, int &n)=0 |
Select ties from x starting from s. More... | |
virtual void | ties (Space &home, ViewArray< View > &x, int s, int *ties, int &n, BranchFilter bf)=0 |
Select ties from x starting from s. More... | |
virtual void | brk (Space &home, ViewArray< View > &x, int *ties, int &n)=0 |
Break ties in x and update to new ties. More... | |
virtual int | select (Space &home, ViewArray< View > &x, int *ties, int n)=0 |
Select a view from x considering views with positions in ties. More... | |
Resource management and cloning | |
virtual ViewSel< View > * | copy (Space &home, bool shared)=0 |
Create copy during cloning. More... | |
virtual bool | notice (void) const |
Whether dispose must always be called (that is, notice is needed) More... | |
virtual void | dispose (Space &home) |
Dispose view selection. More... | |
Memory management | |
static void * | operator new (size_t s, Space &home) |
Allocate memory from space. More... | |
static void | operator delete (void *p, Space &home) |
Return memory to space. More... | |
static void | operator delete (void *p) |
Needed for exceptions. More... | |
Abstract class for view selection.
Definition at line 48 of file brancher-view-sel.hpp.
typedef _View Gecode::ViewSel< _View >::View |
Define the view type.
Definition at line 51 of file brancher-view-sel.hpp.
typedef BranchTraits<typename View::VarType>::Filter Gecode::ViewSel< _View >::BranchFilter |
The branch filter that corresponds to the view type.
Definition at line 53 of file brancher-view-sel.hpp.
|
inline |
Constructor for creation.
Definition at line 361 of file brancher-view-sel.hpp.
|
inline |
Constructor for copying during cloning.
Definition at line 364 of file brancher-view-sel.hpp.
|
pure virtual |
Select a view from x starting from s and return its position.
Implemented in Gecode::ViewSelChoose< ChooseMax, Merit >, Gecode::ViewSelChoose< ChooseMin, Merit >, Gecode::ViewSelRnd< View >, and Gecode::ViewSelNone< View >.
|
pure virtual |
Select a view from x starting from s and return its position.
Implemented in Gecode::ViewSelChoose< ChooseMax, Merit >, and Gecode::ViewSelChoose< ChooseMin, Merit >.
|
pure virtual |
Select ties from x starting from s.
Implemented in Gecode::ViewSelChooseTbl< ChooseMin, Merit >, Gecode::ViewSelChooseTbl< ChooseMax, Merit >, Gecode::ViewSelChoose< ChooseMax, Merit >, Gecode::ViewSelChoose< ChooseMin, Merit >, Gecode::ViewSelRnd< View >, and Gecode::ViewSelNone< View >.
|
pure virtual |
Select ties from x starting from s.
Implemented in Gecode::ViewSelChooseTbl< ChooseMin, Merit >, Gecode::ViewSelChooseTbl< ChooseMax, Merit >, Gecode::ViewSelChoose< ChooseMax, Merit >, and Gecode::ViewSelChoose< ChooseMin, Merit >.
|
pure virtual |
Break ties in x and update to new ties.
Implemented in Gecode::ViewSelChooseTbl< ChooseMin, Merit >, Gecode::ViewSelChooseTbl< ChooseMax, Merit >, Gecode::ViewSelChoose< ChooseMax, Merit >, Gecode::ViewSelChoose< ChooseMin, Merit >, Gecode::ViewSelRnd< View >, and Gecode::ViewSelNone< View >.
|
pure virtual |
Select a view from x considering views with positions in ties.
Implemented in Gecode::ViewSelChoose< ChooseMax, Merit >, Gecode::ViewSelChoose< ChooseMin, Merit >, Gecode::ViewSelRnd< View >, and Gecode::ViewSelNone< View >.
|
pure virtual |
Create copy during cloning.
Implemented in Gecode::ViewSelMaxTbl< Merit >, Gecode::ViewSelMax< Merit >, Gecode::ViewSelMinTbl< Merit >, Gecode::ViewSelMin< Merit >, Gecode::ViewSelRnd< View >, and Gecode::ViewSelNone< View >.
|
virtual |
Whether dispose must always be called (that is, notice is needed)
Reimplemented in Gecode::ViewSelChoose< Choose, Merit >, Gecode::ViewSelChoose< ChooseMax, Merit >, and Gecode::ViewSelChoose< ChooseMin, Merit >.
Definition at line 367 of file brancher-view-sel.hpp.
|
virtual |
Dispose view selection.
Reimplemented in Gecode::ViewSelChoose< Choose, Merit >, Gecode::ViewSelChoose< ChooseMax, Merit >, and Gecode::ViewSelChoose< ChooseMin, Merit >.
Definition at line 372 of file brancher-view-sel.hpp.
|
inlinestatic |
Allocate memory from space.
Definition at line 381 of file brancher-view-sel.hpp.
|
inlinestatic |
Return memory to space.
Definition at line 378 of file brancher-view-sel.hpp.
|
inlinestatic |
Needed for exceptions.
Definition at line 375 of file brancher-view-sel.hpp.