34namespace Gecode {
namespace Int {
namespace Count {
36 template<
class VX,
class VY>
43 for (
int i=0; i<
n_s; i++)
48 template<
class VX,
class VY>
53 for (
int i=0; i<n_s; i++)
60 template<
class VX,
class VY>
68 template<
class VX,
class VY>
74 template<
class VX,
class VY>
77 for (
int i=0; i<n_s; i++)
int p
Number of positive literals for node type.
virtual size_t dispose(Space &home)
Delete actor and return its size.
Home class for posting propagators
void notice(Actor &a, ActorProperty p, bool duplicate=false)
Notice actor property.
Baseclass for count propagators (integer)
IntBase(Space &home, IntBase &p)
Constructor for cloning p.
int n_s
Views from x[0] ... x[n_s-1] have subscriptions.
ViewArray< VX > x
Views still to count.
virtual PropCost cost(const Space &home, const ModEventDelta &med) const
Cost function (defined as low linear)
virtual size_t dispose(Space &home)
Delete propagator and return its size.
virtual void reschedule(Space &home)
Schedule function.
static PropCost linear(PropCost::Mod m, unsigned int n)
Linear complexity for modifier pcm and size measure n.
Base-class for propagators.
void update(Space &home, ViewArray< View > &a)
Update array to be a clone of array a.
void subscribe(Space &home, Propagator &p, PropCond pc, bool schedule=true)
Subscribe propagator p with propagation condition pc to variable.
void ignore(Actor &a, ActorProperty p, bool duplicate=false)
Ignore actor property.
int ModEventDelta
Modification event deltas.
@ AP_DISPOSE
Actor must always be disposed.
void cancel(Space &home, Propagator &p, VY y)
Cancel propagator p for view y.
void update(VY &y, Space &home, bool shared, VY py)
Update view y from py.
bool isintset(VY y)
Return whether y is an integer set.
void subscribe(Space &home, Propagator &p, VY y)
Subscribe propagator p to view y.
void reschedule(Space &home, Propagator &p, VY y)
Schedule propagator p for view y.
const Gecode::PropCond PC_INT_DOM
Propagate when domain changes.
Gecode toplevel namespace
Post propagator for SetVar SetOpType SetVar y
Post propagator for SetVar x