Generated on Tue Apr 18 10:23:46 2017 for Gecode by doxygen 1.6.3

Gecode::Int::Circuit::Dom< View, Offset > Class Template Reference
[Integer propagators]

"Domain consistent" circuit propagator More...

#include <circuit.hh>

List of all members.

Public Member Functions

virtual Actorcopy (Space &home, bool share)
 Copy propagator during cloning.
virtual PropCost cost (const Space &home, const ModEventDelta &med) const
 Cost function.
virtual void reschedule (Space &home)
 Schedule function.
virtual ExecStatus propagate (Space &home, const ModEventDelta &med)
 Perform propagation.

Static Public Member Functions

static ExecStatus post (Home home, ViewArray< View > &x, Offset &o)
 Post propagator for circuit on x.

Protected Member Functions

 Dom (Space &home, bool share, Dom &p)
 Constructor for cloning p.
 Dom (Home home, ViewArray< View > &x, Offset &o)
 Constructor for posting.

Protected Attributes

Int::Distinct::DomCtrl< View > dc
 Propagation controller for propagating distinct.

Detailed Description

template<class View, class Offset>
class Gecode::Int::Circuit::Dom< View, Offset >

"Domain consistent" circuit propagator

Propagates domain consistent distinct, checks that the induced variable value graph is stronlgy connected, and prunes too shot cycles.

Requires

Definition at line 125 of file circuit.hh.


Constructor & Destructor Documentation

template<class View, class Offset>
Gecode::Int::Circuit::Dom< View, Offset >::Dom ( Space home,
bool  share,
Dom< View, Offset > &  p 
) [protected]

Constructor for cloning p.

template<class View , class Offset >
Gecode::Int::Circuit::Dom< View, Offset >::Dom ( Home  home,
ViewArray< View > &  x,
Offset o 
) [inline, protected]

Constructor for posting.

Definition at line 46 of file dom.hpp.


Member Function Documentation

template<class View , class Offset >
Actor * Gecode::Int::Circuit::Dom< View, Offset >::copy ( Space home,
bool  share 
) [inline, virtual]

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 56 of file dom.hpp.

template<class View , class Offset >
PropCost Gecode::Int::Circuit::Dom< View, Offset >::cost ( const Space home,
const ModEventDelta med 
) const [inline, virtual]

Cost function.

If in stage for naive value propagation, the cost is low linear. Otherwise it is high quadratic.

Reimplemented from Gecode::NaryPropagator< View, Int::PC_INT_DOM >.

Definition at line 62 of file dom.hpp.

template<class View , class Offset >
void Gecode::Int::Circuit::Dom< View, Offset >::reschedule ( Space home  )  [inline, virtual]

Schedule function.

Reimplemented from Gecode::NaryPropagator< View, Int::PC_INT_DOM >.

Definition at line 71 of file dom.hpp.

template<class View , class Offset >
ExecStatus Gecode::Int::Circuit::Dom< View, Offset >::propagate ( Space home,
const ModEventDelta med 
) [inline, virtual]

Perform propagation.

Implements Gecode::Propagator.

Definition at line 82 of file dom.hpp.

template<class View , class Offset >
ExecStatus Gecode::Int::Circuit::Dom< View, Offset >::post ( Home  home,
ViewArray< View > &  x,
Offset o 
) [inline, static]

Post propagator for circuit on x.

Definition at line 118 of file dom.hpp.


Member Data Documentation

template<class View, class Offset>
Int::Distinct::DomCtrl<View> Gecode::Int::Circuit::Dom< View, Offset >::dc [protected]

Propagation controller for propagating distinct.

Definition at line 133 of file circuit.hh.


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