55 for (
int i=p.
size();
i--; ) {
62 for (
int i=p.
size();
i--;) {
82 for (
int i=s.
size();
i--; )
95 for (
int i=fix.
size();
i--; ) {
103 if (home.
failed())
return;
105 for (
int i=t.
size();
i--;)
110 unary(home, flex, fix, icl);
113 for (
int i=flex.
size();
i--;)
114 tasks[
i].init(t[
i],flex[i],fix[i]);
128 for (
int i=p.
size();
i--; ) {
133 bool allMandatory =
true;
134 for (
int i=m.
size();
i--;) {
136 allMandatory =
false;
143 if (home.
failed())
return;
145 for (
int i=s.
size();
i--; )
146 t[
i].init(s[
i],p[i],m[i]);
161 for (
int i=fix.
size();
i--; ) {
171 if (home.
failed())
return;
172 bool allMandatory =
true;
173 for (
int i=m.
size();
i--;) {
175 allMandatory =
false;
180 unary(home,t,flex,fix,icl);
184 for (
int i=flex.
size();
i--; )
185 tasks[
i].init(flex[
i],fix[i],m[i]);
189 for (
int i=flex.
size();
i--;)
190 tasks[
i].init(t[
i],flex[i],fix[i],m[i]);
203 if (home.
failed())
return;
204 for (
int i=p.
size();
i--; ) {
208 for (
int i=p.
size();
i--;) {
216 for (
int i=p.
size();
i--;)
218 unary(home,s,pp,icl);
221 for (
int i=s.
size();
i--; )
222 t[
i].init(s[
i],p[i],e[i]);
235 if (home.
failed())
return;
236 for (
int i=p.
size();
i--; ) {
239 bool allMandatory =
true;
240 for (
int i=m.
size();
i--;) {
242 allMandatory =
false;
247 unary(home,s,p,e,icl);
250 for (
int i=s.
size();
i--; )
251 t[
i].init(s[
i],p[i],e[i],m[i]);
bool failed(void) const
Check whether corresponding space is failed.
IntConLevel
Consistency levels for integer propagators.
bool one(const Gecode::FloatValArgs &a)
Check whether has only one coefficients.
int size(void) const
Return size of array (number of elements)
Argument array for primtive types.
Scheduling propagator for unary resource with mandatory tasks
void max(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
Domain consistent distinct propagator.
void nonnegative(int n, const char *l)
Check whether n is in range and nonnegative, otherwise throw out of limits with information l...
int p
Number of positive literals for node type.
Gecode::IntArgs i(4, 1, 2, 3, 4)
Passing integer variables.
Passing integer arguments.
Passing Boolean variables.
Naive value distinct propagator.
Scheduling propagator for unary resource with optional tasks
bool assigned(View x, int v)
Whether x is assigned to value v.
Exception: Arguments contain same variable multiply
void rel(Home home, FloatVar x0, FloatRelType frt, FloatVal n)
Propagates .
Bounds propagation or consistency.
Bounds consistent distinct propagator.
Gecode toplevel namespace
void check(int n, const char *l)
Check whether n is in range, otherwise throw out of limits with information l.
Home class for posting propagators
Exception: Arguments are of different size
#define GECODE_ES_FAIL(es)
Check whether execution status es is failed, and fail space home.
Domain propagation or consistency.
bool same(const Space &home) const
Test whether array contains same variable multiply.
void unary(Home home, const IntVarArgs &s, const IntArgs &p, IntConLevel icl)
Post propagators for scheduling tasks on unary resources.