Gecode::NaryPropagator< View, pc > Class Template Reference
[Propagator patterns]
Inherits Gecode::Propagator.
Inherited by Gecode::Set::Distinct::AtmostOne, and Gecode::Set::Sequence::Seq.
Detailed Description
template<class View, PropCond pc>
class Gecode::NaryPropagator< View, pc >
n-ary propagator
Stores array of views of type View with propagation condition pc.
If the propagation condition pc has the value PC_GEN_NONE, no subscriptions are created.
Definition at line 183 of file propagator.icc.
Public Member Functions | |
virtual PropCost | cost (ModEventDelta med) const |
Cost function (defined as dynamic PC_LINEAR_LO). | |
virtual size_t | dispose (Space *home) |
Delete propagator and return its size. | |
Reflection::ActorSpec | spec (const Space *home, Reflection::VarMap &m, const Support::Symbol &name) const |
Return specification given a variable map m and a name. | |
Protected Member Functions | |
NaryPropagator (Space *home, bool share, NaryPropagator &p) | |
Constructor for cloning p. | |
NaryPropagator (Space *home, bool share, Propagator &p, ViewArray< View > &x) | |
Constructor for rewriting p during cloning. | |
NaryPropagator (Space *home, ViewArray< View > &x) | |
Constructor for creation. | |
Protected Attributes | |
ViewArray< View > | x |
Array of views. |
Constructor & Destructor Documentation
Gecode::NaryPropagator< View, pc >::NaryPropagator | ( | Space * | home, | |
bool | share, | |||
NaryPropagator< View, pc > & | p | |||
) | [inline, protected] |
Gecode::NaryPropagator< View, pc >::NaryPropagator | ( | Space * | home, | |
bool | share, | |||
Propagator & | p, | |||
ViewArray< View > & | x | |||
) | [inline, protected] |
Gecode::NaryPropagator< View, pc >::NaryPropagator | ( | Space * | home, | |
ViewArray< View > & | x | |||
) | [inline, protected] |
Member Function Documentation
PropCost Gecode::NaryPropagator< View, pc >::cost | ( | ModEventDelta | med | ) | const [inline, virtual] |
Cost function (defined as dynamic PC_LINEAR_LO).
Implements Gecode::Propagator.
Reimplemented in Gecode::Int::Bool::NaryEq< BV >, Gecode::Int::Circuit::Val< View >, Gecode::Int::Circuit::Dom< View >, Gecode::Int::Distinct::Dom< View >, Gecode::Int::Rel::NaryEqDom< View >, and Gecode::Int::Rel::NaryEqBnd< View >.
Definition at line 568 of file propagator.icc.
size_t Gecode::NaryPropagator< View, pc >::dispose | ( | Space * | home | ) | [inline, virtual] |
Delete propagator and return its size.
Reimplemented from Gecode::Actor.
Reimplemented in Gecode::Int::Circuit::Base< View >.
Definition at line 574 of file propagator.icc.
Reflection::ActorSpec Gecode::NaryPropagator< View, pc >::spec | ( | const Space * | home, | |
Reflection::VarMap & | m, | |||
const Support::Symbol & | name | |||
) | const [inline] |
Return specification given a variable map m and a name.
Reimplemented in Gecode::Int::Circuit::Base< View >.
Definition at line 583 of file propagator.icc.
Member Data Documentation
ViewArray<View> Gecode::NaryPropagator< View, pc >::x [protected] |
The documentation for this class was generated from the following file:
- gecode/kernel/propagator.icc (Revision: 5993)