44 return new (home)
Convex(home,*
this);
63 unsigned int maxWidth = 0;
64 for (;ubRangeIt();++ubRangeIt) {
66 maxWidth = std::max(maxWidth, ubRangeIt.
width());
78 for (; ubRangeItC(); ++ubRangeItC) {
79 if (ubRangeItC.
width() < (
unsigned int)
x0.cardMin()
80 || ubRangeItC.
min() >
x0.glbMin()
81 || ubRangeItC.
max() <
x0.glbMax()
int max(void) const
Return largest value of range.
unsigned int width(void) const
Return width of range (distance between minimum and maximum)
int min(void) const
Return smallest value of range.
virtual Actor * copy(Space &home)
Copy propagator during cloning.
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
Convex(Space &home, Convex &p)
Constructor for cloning p.
Range iterator for the least upper bound.
unsigned int width(void) const
Return width of range (distance between minimum and maximum)
ExecStatus ES_SUBSUMED(Propagator &p)
Propagator p is subsumed
int ModEventDelta
Modification event deltas.
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
Propagators for convexity.
Gecode toplevel namespace
Post propagator for SetVar SetOpType SetVar SetRelType r
@ ES_FIX
Propagation has computed fixpoint.