34 namespace Gecode {
namespace Int {
38 ei=
static_cast<unsigned int>(e0 | (i0 << 3));
t=t0;
43 return static_cast<Type>(
ei & 7);
51 return static_cast<int>(
ei >> 3);;
62 template<
class Char,
class Traits>
63 inline std::basic_ostream<Char,Traits>&
64 operator <<(std::basic_ostream<Char,Traits>& os,
const Event& e) {
65 std::basic_ostringstream<Char,Traits> s;
66 s.copyfmt(os); s.width(0);
76 s <<
',' << e.time() <<
',' << e.idx() <<
']';
94 if (t[
i].pmin() > 0) {
98 }
else if (t[
i].pmax() == 0) {
107 if (t[
i].lst() < t[
i].ect()) {
135 if (t[
i].pmin() > 0) {
138 }
else if (t[
i].pmax() == 0) {
142 assert(!t[
i].excluded());
Zero-length task start time.
Type type(void) const
Return event type.
unsigned int ei
Combines type and number of task.
int time(void) const
Return event time.
int idx(void) const
Return event index.
T * alloc(long unsigned int n)
Allocate block of n objects of type T from region.
void init(Type e, int t, int i)
Initialize event.
Earliest required time of task.
void quicksort(Type *l, Type *r, Less &less)
Standard quick sort.
int n
Number of negative literals for node type.
Time-tabling event for task.
Gecode::IntArgs i({1, 2, 3, 4})
bool operator<(const Event &e) const
Order among events.
Latest completion time of task.
Post propagator for SetVar SetOpType SetVar SetRelType r
const int infinity
Infinity for integers.
bool assigned(View x, int v)
Whether x is assigned to value v.
Latest required time of task.
static Event * events(Region &r, const TaskArray< Task > &t, bool &assigned)
Allocate from r and initialize event array with tasks t.
Gecode toplevel namespace
#define GECODE_NEVER
Assert that this command is never executed.
Type
Event type for task with order in which they are processed.
int size(void) const
Return size of array (number of elements)
Earliest start time of task.