Generated on Mon Aug 25 11:35:51 2008 for Gecode by doxygen 1.5.6

Gecode::Int::Element::ViewDom< VA, VB, VC > Class Template Reference
[Integer propagators]

#include <element.hh>

Inherits Gecode::Int::Element::View< VA, Gecode::VB< P, b >, VC, PC_INT_DOM >.

List of all members.


Detailed Description

template<class VA, class VB, class VC>
class Gecode::Int::Element::ViewDom< VA, VB, VC >

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 193 of file element.hh.


Public Member Functions

virtual Actorcopy (Space *home, bool share)
 Perform copying during cloning.
virtual PropCost cost (ModEventDelta med) const
 Cost function.
virtual ExecStatus propagate (Space *home, ModEventDelta med)
 Perform propagation.
virtual Reflection::ActorSpec spec (const Space *home, Reflection::VarMap &m) const
 Specification for this propagator.

Static Public Member Functions

static void post (Space *home, Reflection::VarMap &vars, const Reflection::ActorSpec &spec)
 Post propagator according to specification.
static Support::Symbol ati (void)
 Name of this propagator.
static ExecStatus post (Space *home, IdxView< VA > *iv, int n, VB x0, VC 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< VA > *iv, int n, VB x0, VC x1)
 Constructor for creation.

Constructor & Destructor Documentation

template<class VA, class VB, class VC>
Gecode::Int::Element::ViewDom< VA, VB, VC >::ViewDom ( Space home,
bool  share,
ViewDom< VA, VB, VC > &  p 
) [inline, protected]

Constructor for cloning p.

Definition at line 485 of file view.icc.

template<class VA, class VB, class VC>
Gecode::Int::Element::ViewDom< VA, VB, VC >::ViewDom ( Space home,
IdxView< VA > *  iv,
int  n,
VB  x0,
VC  x1 
) [inline, protected]

Constructor for creation.

Definition at line 462 of file view.icc.


Member Function Documentation

template<class VA, class VB, class VC>
Actor * Gecode::Int::Element::ViewDom< VA, VB, VC >::copy ( Space home,
bool  share 
) [inline, virtual]

Perform copying during cloning.

Implements Gecode::Actor.

Definition at line 490 of file view.icc.

template<class VA, class VB, class VC>
PropCost Gecode::Int::Element::ViewDom< VA, VB, VC >::cost ( ModEventDelta  med  )  const [inline, 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< VA, VB, VC, pc_ac >.

Definition at line 497 of file view.icc.

template<class VA, class VB, class VC>
ExecStatus Gecode::Int::Element::ViewDom< VA, VB, VC >::propagate ( Space home,
ModEventDelta  med 
) [inline, virtual]

Perform propagation.

Implements Gecode::Propagator.

Definition at line 539 of file view.icc.

template<class VA, class VB, class VC>
Reflection::ActorSpec Gecode::Int::Element::ViewDom< VA, VB, VC >::spec ( const Space home,
Reflection::VarMap m 
) const [inline, virtual]

Specification for this propagator.

Reimplemented from Gecode::Actor.

Definition at line 512 of file view.icc.

template<class VA, class VB, class VC>
void Gecode::Int::Element::ViewDom< VA, VB, VC >::post ( Space home,
Reflection::VarMap vars,
const Reflection::ActorSpec spec 
) [inline, static]

Post propagator according to specification.

Definition at line 518 of file view.icc.

template<class VA, class VB, class VC>
Support::Symbol Gecode::Int::Element::ViewDom< VA, VB, VC >::ati ( void   )  [inline, static]

Name of this propagator.

Definition at line 506 of file view.icc.

template<class VA, class VB, class VC>
ExecStatus Gecode::Int::Element::ViewDom< VA, VB, VC >::post ( Space home,
IdxView< VA > *  iv,
int  n,
VB  x0,
VC  x1 
) [inline, static]

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

Definition at line 468 of file view.icc.


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