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

Gecode::Set::RelOp::IntersectionN< View0, View1 > Class Template Reference
[Set propagators]

#include <rel-op.hh>

Inherits Gecode::InhomNaryOnePropagator< View0, PC_SET_ANY, View1, PC_SET_ANY >.

List of all members.


Detailed Description

template<class View0, class View1>
class Gecode::Set::RelOp::IntersectionN< View0, View1 >

Propagator for nary intersection

Requires

Definition at line 171 of file rel-op.hh.

Public Member Functions

virtual PropCost cost (void) const
 Cost function (defined as dynamic PC_LINEAR_LO).
virtual Actorcopy (Space *home, bool)
 Copy propagator during cloning.
virtual ExecStatus propagate (Space *home)
 Perform propagation.

Static Public Member Functions

static ExecStatus post (Space *home, ViewArray< View0 > &y, View1 x)
 Post propagator $ x = \bigcap_{i\in\{0,\dots,n-1\}} y_i $.

Protected Member Functions

 IntersectionN (Space *home, bool share, IntersectionN &p)
 Constructor for cloning p.
 IntersectionN (Space *home, ViewArray< View0 > &, View1)
 Constructor for posting.

Protected Attributes

bool shared
 Whether the any views share a variable implementation.
LUBndSet intOfDets
 Intersection of the determined $x_i$ (which are dropped).


Constructor & Destructor Documentation

template<class View0, class View1>
Gecode::Set::RelOp::IntersectionN< View0, View1 >::IntersectionN Space home,
bool  share,
IntersectionN< View0, View1 > &  p
[inline, protected]
 

Constructor for cloning p.

Definition at line 160 of file inter.icc.

template<class View0, class View1>
Gecode::Set::RelOp::IntersectionN< View0, View1 >::IntersectionN Space home,
ViewArray< View0 > &  ,
View1 
[inline, protected]
 

Constructor for posting.

Definition at line 151 of file inter.icc.


Member Function Documentation

template<class View0, class View1>
PropCost Gecode::Set::RelOp::IntersectionN< View0, View1 >::cost void   )  const [virtual]
 

Cost function (defined as dynamic PC_LINEAR_LO).

Reimplemented from Gecode::InhomNaryOnePropagator< View0, PC_SET_ANY, View1, PC_SET_ANY >.

Definition at line 194 of file inter.icc.

template<class View0, class View1>
Actor * Gecode::Set::RelOp::IntersectionN< View0, View1 >::copy Space home,
bool 
[virtual]
 

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 188 of file inter.icc.

template<class View0, class View1>
ExecStatus Gecode::Set::RelOp::IntersectionN< View0, View1 >::propagate Space home  )  [virtual]
 

Perform propagation.

Implements Gecode::Propagator.

Definition at line 200 of file inter.icc.

template<class View0, class View1>
ExecStatus Gecode::Set::RelOp::IntersectionN< View0, View1 >::post Space home,
ViewArray< View0 > &  y,
View1  x
[static]
 

Post propagator $ x = \bigcap_{i\in\{0,\dots,n-1\}} y_i $.

Definition at line 170 of file inter.icc.


Member Data Documentation

template<class View0, class View1>
bool Gecode::Set::RelOp::IntersectionN< View0, View1 >::shared [protected]
 

Whether the any views share a variable implementation.

Definition at line 177 of file rel-op.hh.

template<class View0, class View1>
LUBndSet Gecode::Set::RelOp::IntersectionN< View0, View1 >::intOfDets [protected]
 

Intersection of the determined $x_i$ (which are dropped).

Definition at line 179 of file rel-op.hh.


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