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

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

#include <rel-op.hh>

Inherits MixNaryOnePropagator< View0, PC_SET_ANY, View1, PC_SET_ANY >.

List of all members.


Detailed Description

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

Propagator for nary partition

Requires

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


Public Member Functions

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

Static Public Member Functions

static ExecStatus post (Space *home, ViewArray< View0 > &y, View1 x)
 Post propagator $ x = \biguplus_{i\in\{0,\dots,n-1\}} y_i $.
static ExecStatus post (Space *home, ViewArray< View0 > &y, const IntSet &z, View1 x)
 Post propagator $ x = z\uplus\biguplus_{i\in\{0,\dots,n-1\}} y_i $.
static void post (Space *home, Reflection::VarMap &vars, const Reflection::ActorSpec &spec)
 Post using specification.
static Support::Symbol ati (void)
 Name of this propagator.

Protected Member Functions

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

Protected Attributes

bool shared
 Whether the any views share a variable implementation.
GLBndSet unionOfDets
 Union of the determined $x_i$ (which are dropped).

Constructor & Destructor Documentation

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

Constructor for cloning p.

Definition at line 70 of file partition.icc.

template<class View0, class View1>
Gecode::Set::RelOp::PartitionN< View0, View1 >::PartitionN ( Space home,
ViewArray< View0 > &  x,
View1  y 
) [inline, protected]

Constructor for posting.

Definition at line 53 of file partition.icc.

template<class View0, class View1>
Gecode::Set::RelOp::PartitionN< View0, View1 >::PartitionN ( Space home,
ViewArray< View0 > &  x,
const IntSet z,
View1  y 
) [inline, protected]

Constructor for posting.

Definition at line 60 of file partition.icc.


Member Function Documentation

template<class View0, class View1>
Actor * Gecode::Set::RelOp::PartitionN< View0, View1 >::copy ( Space home,
bool  share 
) [inline, virtual]

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 78 of file partition.icc.

template<class View0, class View1>
ExecStatus Gecode::Set::RelOp::PartitionN< View0, View1 >::propagate ( Space home,
ModEventDelta  med 
) [inline, virtual]

Perform propagation.

Implements Gecode::Propagator.

Definition at line 149 of file partition.icc.

template<class View0, class View1>
PropCost Gecode::Set::RelOp::PartitionN< View0, View1 >::cost ( ModEventDelta  med  )  const [inline, virtual]

Cost function (defined as dynamic PC_LINEAR_LO).

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

Definition at line 143 of file partition.icc.

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

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

Definition at line 121 of file partition.icc.

template<class View0, class View1>
ExecStatus Gecode::Set::RelOp::PartitionN< View0, View1 >::post ( Space home,
ViewArray< View0 > &  y,
const IntSet z,
View1  x 
) [inline, static]

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

Definition at line 136 of file partition.icc.

template<class View0, class View1>
Reflection::ActorSpec Gecode::Set::RelOp::PartitionN< View0, View1 >::spec ( const Space home,
Reflection::VarMap m 
) const [inline, virtual]

Specification for this propagator.

Reimplemented from Gecode::Actor.

Definition at line 90 of file partition.icc.

template<class View0, class View1>
void Gecode::Set::RelOp::PartitionN< View0, View1 >::post ( Space home,
Reflection::VarMap vars,
const Reflection::ActorSpec spec 
) [inline, static]

Post using specification.

Definition at line 109 of file partition.icc.

template<class View0, class View1>
Support::Symbol Gecode::Set::RelOp::PartitionN< View0, View1 >::ati ( void   )  [inline, static]

Name of this propagator.

Definition at line 84 of file partition.icc.


Member Data Documentation

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

Whether the any views share a variable implementation.

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

template<class View0, class View1>
GLBndSet Gecode::Set::RelOp::PartitionN< View0, View1 >::unionOfDets [protected]

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

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


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