Generated on Wed Jan 4 17:49:20 2006 for Gecode by doxygen 1.4.6

Gecode::Int::Distinct::BndImp< View, shared > Class Template Reference

#include <distinct.hh>

Inherits Gecode::Propagator.

List of all members.


Detailed Description

template<class View, bool shared>
class Gecode::Int::Distinct::BndImp< View, shared >

Implementation of bounds-consistent distinct propagator.

The actual implementation of bounds-consistent distinct. If shared is true, the propagator takes into account that some views are shared.

Definition at line 129 of file distinct.hh.

Public Member Functions

virtual ExecStatus propagate (Space *home)
 Perform propagation.
virtual PropCost cost (void) const
 Cost function.
virtual Actorcopy (Space *home, bool share)
 Copy propagator during cloning.
virtual ~BndImp (void)
 Destructor.

Protected Member Functions

 BndImp (Space *home, ViewArray< View > &x)
 Constructor for posting.
 BndImp (Space *home, bool share, BndImp< View, shared > &p)
 Constructor for cloning p.

Protected Attributes

ViewArray< View > x
 Views on which to perform bounds-propagation.
ViewArray< View > y
 Views on which to perform value-propagation (subset of x).


Constructor & Destructor Documentation

template<class View, bool shared>
Gecode::Int::Distinct::BndImp< View, shared >::BndImp Space home,
ViewArray< View > &  x
[inline, protected]
 

Constructor for posting.

Definition at line 28 of file bnd.icc.

template<class View, bool shared>
Gecode::Int::Distinct::BndImp< View, shared >::BndImp Space home,
bool  share,
BndImp< View, shared > &  p
[inline, protected]
 

Constructor for cloning p.

Definition at line 45 of file bnd.icc.

template<class View, bool shared>
Gecode::Int::Distinct::BndImp< View, shared >::~BndImp void   )  [virtual]
 

Destructor.

Definition at line 39 of file bnd.icc.


Member Function Documentation

template<class View, bool shared>
ExecStatus Gecode::Int::Distinct::BndImp< View, shared >::propagate Space home  )  [virtual]
 

Perform propagation.

Implements Gecode::Propagator.

Definition at line 279 of file bnd.icc.

template<class View, bool shared>
PropCost Gecode::Int::Distinct::BndImp< View, shared >::cost void   )  const [virtual]
 

Cost function.

If in stage for naive value propagation, the cost is dynamic PC_LINEAR_LO. Otherwise it is dynamic PC_LINEAR_HI.

Implements Gecode::Propagator.

Definition at line 59 of file bnd.icc.

template<class View, bool shared>
Actor * Gecode::Int::Distinct::BndImp< View, shared >::copy Space home,
bool  share
[virtual]
 

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 53 of file bnd.icc.


Member Data Documentation

template<class View, bool shared>
ViewArray<View> Gecode::Int::Distinct::BndImp< View, shared >::x [protected]
 

Views on which to perform bounds-propagation.

Definition at line 133 of file distinct.hh.

template<class View, bool shared>
ViewArray<View> Gecode::Int::Distinct::BndImp< View, shared >::y [protected]
 

Views on which to perform value-propagation (subset of x).

Definition at line 135 of file distinct.hh.


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