Gecode::MeritFunction< View > Class Template Reference

Merit class for user-defined merit function. More...

`#include <merit.hpp>`

## Public Types

typedef BranchTraits< Var >::Merit | Function
| Corresponding merit function type.
Public Types inherited from Gecode::MeritBase< View, double >
typedef View | View
| View type.
typedef View::VarType | Var
| Corresponding variable type.
typedef double | Val
| Type of merit.

## Public Member Functions

| MeritFunction (Space &home, const VarBranch< Var > &vb)
| Constructor for initialization.
| MeritFunction (Space &home, MeritFunction &mf)
| Constructor for cloning.
double | operator() (const Space &home, View x, int i)
| Return degree as merit for view x at position i.
bool | notice (void) const
| Whether dispose must always be called (that is, notice is needed).
void | dispose (Space &home)
| Delete view merit class.
Public Member Functions inherited from Gecode::MeritBase< View, double >
| MeritBase (Space &home, const VarBranch< Var > &vb)
| Constructor for initialization.
bool | notice (void) const
| Whether dispose must always be called (that is, notice is needed).
void | dispose (Space &home)
| Delete view merit class.

## Protected Attributes

SharedData< Function > | f
| The user-defined merit function.

## Detailed Description

template<class View>
class Gecode::MeritFunction< View >

Merit class for user-defined merit function.

Definition at line 68 of file merit.hpp.

## Member Typedef Documentation

## Function

template<class View>

typedef BranchTraits<Var>::Merit Gecode::MeritFunction< View >::Function

Corresponding merit function type.

Definition at line 72 of file merit.hpp.

## Constructor & Destructor Documentation

## MeritFunction() [1/2]

template<class View>

Gecode::MeritFunction< View >::MeritFunction | ( | Space & | home,
|  | const VarBranch< Var > & | vb )

Constructor for initialization.

## MeritFunction() [2/2]

template<class View>

Gecode::MeritFunction< View >::MeritFunction | ( | Space & | home,
|  | MeritFunction< View > & | mf )

inline

Constructor for cloning.

Definition at line 200 of file merit.hpp.

## Member Function Documentation

## operator()()

template<class View>

double Gecode::MeritFunction< View >::operator() | ( | const Space & | home,
|  | View | x,
|  | int | i )

inline

Return degree as merit for view x at position i.

Definition at line 205 of file merit.hpp.

## notice()

template<class View>

bool Gecode::MeritFunction< View >::notice | ( | void |  | ) | const

inline

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

Definition at line 212 of file merit.hpp.

## dispose()

template<class View>

void Gecode::MeritFunction< View >::dispose | ( | Space & | home | ) |

inline

Delete view merit class.

Definition at line 217 of file merit.hpp.

## Member Data Documentation

## f

template<class View>

SharedData<Function> Gecode::MeritFunction< View >::f

protected

The user-defined merit function.

Definition at line 75 of file merit.hpp.

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

- gecode/kernel/branch/merit.hpp