Generated on Tue May 22 09:40:58 2018 for Gecode by doxygen 1.6.3

Gecode::ViewValBrancher< View, n, Val, a, Filter, Print > Class Template Reference
[Generic brancher based on view and value selection]

Generic brancher by view and value selection. More...

#include <view-val.hpp>

List of all members.

Public Member Functions

virtual const Choicechoice (Space &home)
 Return choice.
virtual const Choicechoice (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 NGLngl (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 Actorcopy (Space &home)
 Perform cloning.
virtual size_t dispose (Space &home)
 Delete brancher and return its size.

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.

Protected Types

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.

Protected Attributes

ValSelCommitBase< View, Val > * vsc
 Value selection and commit object.
Print p
 Print function.

Detailed Description

template<class View, int n, class Val, unsigned int a, class Filter, class Print>
class Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >

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.


Member Typedef Documentation

template<class View, int n, class Val, unsigned int a, class Filter, class Print>
typedef View::VarType Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::Var [protected]

The corresponding variable.

Reimplemented from Gecode::ViewBrancher< View, Filter, n >.

Definition at line 97 of file view-val.hpp.


Constructor & Destructor Documentation

template<class View , int n, class Val , unsigned int a, class Filter , class Print >
Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::ViewValBrancher ( Space home,
ViewValBrancher< View, n, Val, a, Filter, Print > &  b 
) [inline, protected]

Constructor for cloning b.

Definition at line 255 of file view-val.hpp.

template<class View , int n, class Val , unsigned int a, class Filter , class Print >
Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::ViewValBrancher ( Home  home,
ViewArray< View > &  x,
ViewSel< View > *  vs[n],
ValSelCommitBase< View, Val > *  vsc,
BranchFilter< Var bf,
VarValPrint< Var, Val >  vvp 
) [inline, protected]

Constructor for creation.

Definition at line 228 of file view-val.hpp.


Member Function Documentation

template<class View , int n, class Val , unsigned int a, class Filter , class Print >
const Choice * Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::choice ( Space home  )  [inline, virtual]
template<class View , int n, class Val , unsigned int a, class Filter , class Print >
const Choice * Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::choice ( const Space home,
Archive e 
) [inline, 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.

template<class View , int n, class Val , unsigned int a, class Filter , class Print >
ExecStatus Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::commit ( Space home,
const Choice c,
unsigned int  b 
) [inline, 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.

template<class View , int n, class Val , unsigned int a, class Filter , class Print >
NGL * Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::ngl ( Space home,
const Choice c,
unsigned int  b 
) const [inline, virtual]

Create no-good literal for choice c and alternative b.

Reimplemented from Gecode::Brancher.

Definition at line 306 of file view-val.hpp.

template<class View , int n, class Val , unsigned int a, class Filter , class Print >
void Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::print ( const Space home,
const Choice c,
unsigned int  b,
std::ostream &  o 
) const [inline, 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.

template<class View , int n, class Val , unsigned int a, class Filter , class Print >
Actor * Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::copy ( Space home  )  [inline, virtual]
template<class View , int n, class Val , unsigned int a, class Filter , class Print >
size_t Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::dispose ( Space home  )  [inline, virtual]

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.

template<class View , int n, class Val , unsigned int a, class Filter , class Print >
void Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::post ( Home  home,
ViewArray< View > &  x,
ViewSel< View > *  vs[n],
ValSelCommitBase< View, Val > *  vsc,
BranchFilter< Var bf,
VarValPrint< Var, Val >  vvp 
) [inline, static]

Brancher post function.

Definition at line 243 of file view-val.hpp.


Member Data Documentation

template<class View, int n, class Val, unsigned int a, class Filter, class Print>
ValSelCommitBase<View,Val>* Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::vsc [protected]

Value selection and commit object.

Definition at line 99 of file view-val.hpp.

template<class View, int n, class Val, unsigned int a, class Filter, class Print>
Print Gecode::ViewValBrancher< View, n, Val, a, Filter, Print >::p [protected]

Print function.

Definition at line 101 of file view-val.hpp.


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