38 namespace Gecode {
namespace Int {
namespace Unary {
40 template<
class ManTaskView>
43 sort<ManTaskView,STO_ECT,true>(
t);
49 int* est = r.alloc<
int>(t.
size());
51 for (
int i=0;
i<t.
size();
i++) {
52 while (q() && (t[
i].ect() > t[q.
task()].lst())) {
58 for (
int i=t.
size();
i--; )
64 template<
class ManTask>
74 template<
class OptTaskView>
77 sort<OptTaskView,STO_ECT,true>(
t);
83 int* est = r.alloc<
int>(t.
size());
85 for (
int i=0;
i<t.
size();
i++) {
86 while (q() && (t[
i].ect() > t[q.
task()].lst())) {
94 if (t[
i].mandatory()) {
96 }
else if (est[
i] > t[
i].lst()) {
105 template<
class OptTask>
ExecStatus ES_SUBSUMED(Propagator &p)
Base-class for propagators.
void insert(int i)
Insert task with index i.
#define GECODE_ES_CHECK(es)
Check whether execution status es is failed or subsumed, and forward failure or subsumption.
int p
Number of positive literals for node type.
Omega trees for computing ect of task sets.
Gecode::IntArgs i(4, 1, 2, 3, 4)
int n
Number of negative literals for node type.
const Gecode::PropCond PC_INT_BND
Propagate when minimum or maximum of a view changes.
Allows to iterate over task views according to a specified order.
ExecStatus detectable(Space &home, TaskViewArray< ManTaskView > &t)
int size(void) const
Return size of array (number of elements)
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
int task(void) const
Return current task position.
int ect(void) const
Return earliest completion time of all tasks.
Allows to iterate over mandatory task views according to a specified order.
struct Gecode::@518::NNF::@57::@58 b
For binary nodes (and, or, eqv)
Gecode toplevel namespace