Generated on Wed Nov 1 15:05:18 2006 for Gecode by doxygen 1.4.5

Gecode::Int::Element::ViewDom< ViewA, ViewB > Class Template Reference
[Integer propagators]

#include <element.hh>

Inherits Gecode::Int::Element::View< ViewA, ViewB, PC_INT_DOM >.

List of all members.


Detailed Description

template<class ViewA, class ViewB>
class Gecode::Int::Element::ViewDom< ViewA, ViewB >

Domain-consistent element propagator for array of views.

The propagator uses staging: first it uses bounds-propagation on the array of views and the uses domain-propagation on the array of views.

Requires

Definition at line 165 of file element.hh.

Public Member Functions

virtual Actorcopy (Space *home, bool share)
 Perform copying during cloning.
virtual PropCost cost (void) const
 Cost function.
virtual ExecStatus propagate (Space *home)
 Perform propagation.

Static Public Member Functions

static ExecStatus post (Space *home, IdxView< ViewB > *iv, int n, ViewA x0, ViewB x1)
 Post propagator for $iv_{x_0}=x_1$.

Protected Member Functions

 ViewDom (Space *home, bool share, ViewDom &p)
 Constructor for cloning p.
 ViewDom (Space *home, IdxView< ViewB > *iv, int n, ViewA x0, ViewB x1)
 Constructor for creation.


Constructor & Destructor Documentation

template<class ViewA, class ViewB>
Gecode::Int::Element::ViewDom< ViewA, ViewB >::ViewDom Space home,
bool  share,
ViewDom< ViewA, ViewB > &  p
[inline, protected]
 

Constructor for cloning p.

Definition at line 376 of file view.icc.

template<class ViewA, class ViewB>
Gecode::Int::Element::ViewDom< ViewA, ViewB >::ViewDom Space home,
IdxView< ViewB > *  iv,
int  n,
ViewA  x0,
ViewB  x1
[inline, protected]
 

Constructor for creation.

Definition at line 354 of file view.icc.


Member Function Documentation

template<class ViewA, class ViewB>
Actor * Gecode::Int::Element::ViewDom< ViewA, ViewB >::copy Space home,
bool  share
[virtual]
 

Perform copying during cloning.

Implements Gecode::Actor.

Definition at line 381 of file view.icc.

template<class ViewA, class ViewB>
PropCost Gecode::Int::Element::ViewDom< ViewA, ViewB >::cost void   )  const [virtual]
 

Cost function.

If in stage for bounds-propagation defined as dynamic PC_LINEAR_LO, otherwise as dynamic PC_LINEAR_HI.

Reimplemented from Gecode::Int::Element::View< ViewA, ViewB, PC_INT_DOM >.

Definition at line 388 of file view.icc.

template<class ViewA, class ViewB>
ExecStatus Gecode::Int::Element::ViewDom< ViewA, ViewB >::propagate Space home  )  [virtual]
 

Perform propagation.

Implements Gecode::Propagator.

Definition at line 397 of file view.icc.

template<class ViewA, class ViewB>
ExecStatus Gecode::Int::Element::ViewDom< ViewA, ViewB >::post Space home,
IdxView< ViewB > *  iv,
int  n,
ViewA  x0,
ViewB  x1
[static]
 

Post propagator for $iv_{x_0}=x_1$.

Definition at line 360 of file view.icc.


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