Go to the documentation of this file.
38 namespace Gecode {
namespace Int {
79 BoolView::baseval(
int val)
const {
94 return x->regret_min();
98 return x->regret_max();
126 return x->lq(home,
n);
130 return x->lq(home,
n);
135 return x->lq(home,
n-1);
139 return x->lq(home,
n-1);
144 return x->gq(home,
n);
148 return x->gq(home,
n);
153 return x->gq(home,
n+1);
157 return x->gq(home,
n+1);
162 return x->nq(home,
n);
166 return x->nq(home,
n);
171 return x->eq(home,
n);
175 return x->eq(home,
n);
186 return x->narrow_r(home,
i,depend);
191 return x->inter_r(home,
i,depend);
196 return x->minus_r(home,
i,depend);
201 return x->narrow_v(home,
i,depend);
206 return x->inter_v(home,
i,depend);
211 return x->minus_v(home,
i,depend);
239 return x->zero_none(home);
243 return x->one_none(home);
248 return x->zero(home);
315 : Iter::Ranges::Singleton(
x.
min(),
x.
max()) {}
VarImpType * x
Pointer to variable implementation.
Post propagator for SetVar x
bool zero(void) const
Test whether view is assigned to be zero.
Post propagator for SetVar SetOpType SetVar y
ModEvent gq(Space &home, int n)
Restrict domain values to be greater or equal than n.
ModEvent inter_v(Space &home, I &i, bool depends=true)
Intersect domain with values described by i.
ModEvent le(Space &home, int n)
Restrict domain values to be less than n.
void max(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
bool one(void) const
Test whether variable is assigned to one.
ModEvent minus_r(Space &home, I &i, bool depends=true)
Remove from domain the ranges described by i.
void init(const View &x)
Initialize with ranges for view x.
ModEvent narrow_v(Space &home, I &i, bool depends=true)
Replace domain by values described by i.
BoolView(void)
Default constructor.
unsigned int regret_max(void) const
Return regret of domain maximum (distance to next smaller value)
bool one(void) const
Test whether view is assigned to be one.
bool zero(void) const
Test whether variable is assigned to zero.
unsigned int width(void) const
Return width of domain (distance between maximum and minimum)
unsigned int regret_min(void) const
Return regret of domain minimum (distance to next larger value)
unsigned int BoolStatus
Type for status of a Boolean variable.
Boolean view for Boolean variables.
ModEvent one_none(Space &home)
Assign not yet assigned view to one.
Gecode toplevel namespace
ModEvent gr(Space &home, int n)
Restrict domain values to be greater than n.
bool in(int n) const
Test whether n is contained in domain.
Range iterator for integer views.
bool none(void) const
Test whether view is not yet assigned.
int max(void) const
Return maximum of domain.
Generic domain change information to be supplied to advisors.
ModEvent zero_none(Space &home)
Assign not yet assigned view to zero.
ModEvent minus_v(Space &home, I &i, bool depends=true)
Remove from domain the values described by i.
int med(void) const
Return median of domain (greatest element not greater than the median)
static ModEvent me(const ModEventDelta &med)
Return modification event for view type in med.
int max(void) const
Return maximum of domain.
Boolean variable implementation.
Boolean integer variables.
ViewRanges(void)
Default constructor.
bool any(const Delta &d) const
Test whether arbitrary values got pruned.
void init(int min, int max)
Initialize with range min to max.
ModEvent eq(Space &home, int n)
Restrict domain values to be equal to n.
unsigned int size(void) const
Return size (cardinality) of domain.
ModEvent inter_r(Space &home, I &i, bool depends=true)
Intersect domain with ranges described by i.
int ModEvent
Type for modification events.
unsigned int width(void) const
Return width of domain (distance between maximum and minimum)
ModEvent nq(Space &home, int n)
Restrict domain values to be different from n.
ModEvent narrow_r(Space &home, I &i, bool depends=true)
Replace domain by ranges described by i.
BoolStatus status(void) const
Return current domain status.
int min(void) const
Return minimum of domain.
int val(void) const
Return assigned value (only if assigned)
Range iterator for singleton range.
static ModEventDelta med(ModEvent me)
Translate modification event me to modification event delta for view.
void min(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
int n
Number of negative literals for node type.
int min(void) const
Return minimum of domain.
int ModEventDelta
Modification event deltas.
Gecode::IntArgs i({1, 2, 3, 4})
static bool any(const Delta &d)
Test whether arbitrary values got pruned.
Base-class for variable implementation views.
ModEvent lq(Space &home, int n)
Restrict domain values to be less or equal than n.
bool range(void) const
Test whether domain is a range.