36namespace Gecode {
namespace Int {
namespace Element {
40 return new (home)
Pair(home,*
this);
78 :
x(x0), xv(x0), yv(y0), w(w0) {}
92 return xv.
val()+w*yv.
val();
104 d.set(
static_cast<unsigned int>(i.val() /
w));
111 d(
r,
static_cast<unsigned int>((
x2.
max() /
w)+1)),
112 m(
r,
static_cast<unsigned int>(
w));
114 d.set(
static_cast<unsigned int>(i.val() /
w));
115 m.
set(
static_cast<unsigned int>(i.val() %
w));
Node * x
Pointer to corresponding Boolean expression node.
Value iterator for pair of iterators.
int val(void) const
Return current value.
void operator++(void)
Move iterator to next value (if possible)
bool operator()(void) const
Test whether iterator is still at a value or done.
PairValues(IntView x, IntView y, int w)
Initialize with views x and y and width w.
Pair(Space &home, Pair &p)
Constructor for cloning p.
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
static ExecStatus post(Home home, IntView x0, IntView x1, IntView x2, int w, int h)
Post propagator .
virtual Actor * copy(Space &home)
Copy propagator during cloning.
Integer view for integer variables.
int min(void) const
Return minimum of domain.
ModEvent inter_v(Space &home, I &i, bool depends=true)
Intersect domain with values described by i.
int val(void) const
Return assigned value (only if assigned)
int max(void) const
Return maximum of domain.
ModEvent eq(Space &home, int n)
Restrict domain values to be equal to n.
Binary domain consistent equality propagator.
Value iterator for integer views.
void init(const View &x)
Initialize with values x.
int val(void) const
Return current value.
Value iterator for values in a bitset.
unsigned int id(void) const
Return propagator id.
void set(unsigned int i)
Set bit i.
bool assigned(void) const
Test whether view is assigned.
ExecStatus ES_SUBSUMED(Propagator &p)
int ModEventDelta
Modification event deltas.
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
#define GECODE_REWRITE(prop, post)
Rewrite propagator by executing post function.
Gecode toplevel namespace
Post propagator for SetVar SetOpType SetVar SetRelType r
Post propagator for SetVar SetOpType SetVar y
@ ES_NOFIX
Propagation has not computed fixpoint.
Post propagator for SetVar x