Gecode::Set::Int::ChannelInt< View > Class Template Reference
[Set propagators]
#include <int.hh>
Inherits Gecode::Propagator.
Detailed Description
template<class View>
class Gecode::Set::Int::ChannelInt< View >
Propagator for channelling between variable-value-dual models
Implements channelling constraints between IntVars and SetVars. For IntVars and SetVars it propagates the constraint .
Can be used to implement the "channelling constraints" for disjoint with cardinalities from "Disjoint, Partition and Intersection Constraints for Set and Multiset Variables" Christian Bessiere, Emmanuel Hebrard, Brahim Hnich, Toby Walsh CP 2004
Requires
#include "gecode/set/int.hh"
Definition at line 214 of file int.hh.
Public Member Functions | |
virtual Actor * | copy (Space *home, bool) |
Copy propagator during cloning. | |
virtual PropCost | cost (ModEventDelta med) const |
Cost function (defined as PC_QUADRATIC_LO). | |
virtual size_t | dispose (Space *home) |
Delete propagator and return its size. | |
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 ExecStatus | post (Space *home, ViewArray< Gecode::Int::IntView > &x, ViewArray< View > &y) |
Post propagator for . | |
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 | |
ChannelInt (Space *home, bool share, ChannelInt &p) | |
Constructor for cloning p. | |
ChannelInt (Space *home, ViewArray< Gecode::Int::IntView > &, ViewArray< View > &) | |
Constructor for posting. | |
Protected Attributes | |
ViewArray< Gecode::Int::IntView > | xs |
IntViews, reflects which set contains element . | |
ViewArray< View > | ys |
SetViews that are constrained to be disjoint. |
Constructor & Destructor Documentation
Gecode::Set::Int::ChannelInt< View >::ChannelInt | ( | Space * | home, | |
bool | share, | |||
ChannelInt< View > & | p | |||
) | [inline, protected] |
Gecode::Set::Int::ChannelInt< View >::ChannelInt | ( | Space * | home, | |
ViewArray< Gecode::Int::IntView > & | xs0, | |||
ViewArray< View > & | ys0 | |||
) | [inline, protected] |
Member Function Documentation
Actor * Gecode::Set::Int::ChannelInt< View >::copy | ( | Space * | home, | |
bool | share | |||
) | [inline, virtual] |
Copy propagator during cloning.
Implements Gecode::Actor.
Definition at line 104 of file channel-int.icc.
PropCost Gecode::Set::Int::ChannelInt< View >::cost | ( | ModEventDelta | med | ) | const [inline, virtual] |
Cost function (defined as PC_QUADRATIC_LO).
Implements Gecode::Propagator.
Definition at line 90 of file channel-int.icc.
size_t Gecode::Set::Int::ChannelInt< View >::dispose | ( | Space * | home | ) | [inline, virtual] |
Delete propagator and return its size.
Reimplemented from Gecode::Actor.
Definition at line 94 of file channel-int.icc.
ExecStatus Gecode::Set::Int::ChannelInt< View >::propagate | ( | Space * | home, | |
ModEventDelta | med | |||
) | [inline, virtual] |
ExecStatus Gecode::Set::Int::ChannelInt< View >::post | ( | Space * | home, | |
ViewArray< Gecode::Int::IntView > & | x, | |||
ViewArray< View > & | y | |||
) | [inline, static] |
Reflection::ActorSpec Gecode::Set::Int::ChannelInt< View >::spec | ( | const Space * | home, | |
Reflection::VarMap & | m | |||
) | const [inline, virtual] |
Specification for this propagator.
Reimplemented from Gecode::Actor.
Definition at line 157 of file channel-int.icc.
void Gecode::Set::Int::ChannelInt< View >::post | ( | Space * | home, | |
Reflection::VarMap & | vars, | |||
const Reflection::ActorSpec & | spec | |||
) | [inline, static] |
Support::Symbol Gecode::Set::Int::ChannelInt< View >::ati | ( | void | ) | [inline, static] |
Member Data Documentation
ViewArray<Gecode::Int::IntView> Gecode::Set::Int::ChannelInt< View >::xs [protected] |
ViewArray<View> Gecode::Set::Int::ChannelInt< View >::ys [protected] |
The documentation for this class was generated from the following files:
- gecode/set/int.hh (Revision: 5993)
- gecode/set/int/channel-int.icc (Revision: 6102)