Generated on Thu Apr 11 13:59:44 2019 for Gecode by doxygen 1.6.3

Gecode::ValSelCommit< ValSel, ValCommit > Class Template Reference
[Generic value selection and value commit for brancher based on view and value selection]

Class for value selection and commit. More...

#include <val-sel-commit.hpp>

List of all members.

Public Member Functions

 ValSelCommit (Space &home, const ValBranch< Var > &vb)
 Constructor for initialization.
 ValSelCommit (Space &home, ValSelCommit< ValSel, ValCommit > &vsc)
 Constructor for cloning.
virtual Val val (const Space &home, View x, int i)
 Return value of view x at position i.
virtual ModEvent commit (Space &home, unsigned int a, View x, int i, Val n)
 Commit view x at position i to value n for alternative a.
virtual NGLngl (Space &home, unsigned int a, View x, Val n) const
 Create no-good literal for choice c and alternative a.
virtual void print (const Space &home, unsigned int a, View x, int i, const Val &n, std::ostream &o) const
 Print on o branch for alternative a, view x at position i, and value n.
virtual ValSelCommit< ValSel,
ValCommit > * 
copy (Space &home)
 Perform cloning.
virtual bool notice (void) const
 Whether dispose must always be called (that is, notice is needed).
virtual void dispose (Space &home)
 Delete value selection.

Protected Types

typedef ValSelCommitBase
< typename ValSel::View,
typename ValSel::Val >::Var 
Var
 Corresponding variable type.
typedef ValSelCommitBase
< typename ValSel::View,
typename ValSel::Val >::Val 
Val
 Value type.
typedef ValSelCommitBase
< typename ValSel::View,
typename ValSel::Val >::View 
View
 View type.

Protected Attributes

ValSel s
 The value selection object used.
ValCommit c
 The commit object used.

Detailed Description

template<class ValSel, class ValCommit>
class Gecode::ValSelCommit< ValSel, ValCommit >

Class for value selection and commit.

Definition at line 90 of file val-sel-commit.hpp.


Member Typedef Documentation

template<class ValSel, class ValCommit>
typedef ValSelCommitBase<typename ValSel::View, typename ValSel::Val>::Var Gecode::ValSelCommit< ValSel, ValCommit >::Var [protected]

Corresponding variable type.

Reimplemented from Gecode::ValSelCommitBase< ValSel::View, ValSel::Val >.

Definition at line 94 of file val-sel-commit.hpp.

template<class ValSel, class ValCommit>
typedef ValSelCommitBase<typename ValSel::View, typename ValSel::Val>::Val Gecode::ValSelCommit< ValSel, ValCommit >::Val [protected]

Value type.

Reimplemented from Gecode::ValSelCommitBase< ValSel::View, ValSel::Val >.

Definition at line 96 of file val-sel-commit.hpp.

template<class ValSel, class ValCommit>
typedef ValSelCommitBase<typename ValSel::View, typename ValSel::Val>::View Gecode::ValSelCommit< ValSel, ValCommit >::View [protected]

View type.

Reimplemented from Gecode::ValSelCommitBase< ValSel::View, ValSel::Val >.

Definition at line 98 of file val-sel-commit.hpp.


Constructor & Destructor Documentation

template<class ValSel , class ValCommit >
Gecode::ValSelCommit< ValSel, ValCommit >::ValSelCommit ( Space home,
const ValBranch< Var > &  vb 
) [inline]

Constructor for initialization.

Definition at line 157 of file val-sel-commit.hpp.

template<class ValSel, class ValCommit>
Gecode::ValSelCommit< ValSel, ValCommit >::ValSelCommit ( Space home,
ValSelCommit< ValSel, ValCommit > &  vsc 
) [inline]

Constructor for cloning.

Definition at line 163 of file val-sel-commit.hpp.


Member Function Documentation

template<class ValSel , class ValCommit >
ValSelCommit< ValSel, ValCommit >::Val Gecode::ValSelCommit< ValSel, ValCommit >::val ( const Space home,
View  x,
int  i 
) [inline, virtual]

Return value of view x at position i.

Definition at line 170 of file val-sel-commit.hpp.

template<class ValSel , class ValCommit >
ModEvent Gecode::ValSelCommit< ValSel, ValCommit >::commit ( Space home,
unsigned int  a,
View  x,
int  i,
Val  n 
) [inline, virtual]

Commit view x at position i to value n for alternative a.

Definition at line 176 of file val-sel-commit.hpp.

template<class ValSel , class ValCommit >
NGL * Gecode::ValSelCommit< ValSel, ValCommit >::ngl ( Space home,
unsigned int  a,
View  x,
Val  n 
) const [inline, virtual]

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

Definition at line 183 of file val-sel-commit.hpp.

template<class ValSel , class ValCommit >
void Gecode::ValSelCommit< ValSel, ValCommit >::print ( const Space home,
unsigned int  a,
View  x,
int  i,
const Val n,
std::ostream &  o 
) const [inline, virtual]

Print on o branch for alternative a, view x at position i, and value n.

Definition at line 190 of file val-sel-commit.hpp.

template<class ValSel , class ValCommit >
ValSelCommit< ValSel, ValCommit > * Gecode::ValSelCommit< ValSel, ValCommit >::copy ( Space home  )  [inline, virtual]

Perform cloning.

Implements Gecode::ValSelCommitBase< ValSel::View, ValSel::Val >.

Definition at line 198 of file val-sel-commit.hpp.

template<class ValSel , class ValCommit >
bool Gecode::ValSelCommit< ValSel, ValCommit >::notice ( void   )  const [inline, virtual]

Whether dispose must always be called (that is, notice is needed).

Implements Gecode::ValSelCommitBase< ValSel::View, ValSel::Val >.

Definition at line 204 of file val-sel-commit.hpp.

template<class ValSel , class ValCommit >
void Gecode::ValSelCommit< ValSel, ValCommit >::dispose ( Space home  )  [inline, virtual]

Delete value selection.

Implements Gecode::ValSelCommitBase< ValSel::View, ValSel::Val >.

Definition at line 210 of file val-sel-commit.hpp.


Member Data Documentation

template<class ValSel, class ValCommit>
ValSel Gecode::ValSelCommit< ValSel, ValCommit >::s [protected]

The value selection object used.

Definition at line 100 of file val-sel-commit.hpp.

template<class ValSel, class ValCommit>
ValCommit Gecode::ValSelCommit< ValSel, ValCommit >::c [protected]

The commit object used.

Definition at line 102 of file val-sel-commit.hpp.


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