47d46
< #include "base/trace.hh"
363a363
> Tick _curTick;
381a382,384
> void setCurTick(Tick newVal) { _curTick = newVal; }
> Tick getCurTick() { return _curTick; }
>
400a404,405
>
> setCurTick(when);
478a484,485
>
> void setCurTick(Tick newVal) { eventq->setCurTick(newVal); }
481,540d487
< inline void
< EventQueue::schedule(Event *event, Tick when)
< {
< assert(when >= curTick());
< assert(!event->scheduled());
< assert(event->initialized());
<
< event->setWhen(when, this);
< insert(event);
< event->flags.set(Event::Scheduled);
< if (this == &mainEventQueue)
< event->flags.set(Event::IsMainQueue);
< else
< event->flags.clear(Event::IsMainQueue);
<
< if (DTRACE(Event))
< event->trace("scheduled");
< }
<
< inline void
< EventQueue::deschedule(Event *event)
< {
< assert(event->scheduled());
< assert(event->initialized());
<
< remove(event);
<
< event->flags.clear(Event::Squashed);
< event->flags.clear(Event::Scheduled);
<
< if (DTRACE(Event))
< event->trace("descheduled");
<
< if (event->flags.isSet(Event::AutoDelete))
< delete event;
< }
<
< inline void
< EventQueue::reschedule(Event *event, Tick when, bool always)
< {
< assert(when >= curTick());
< assert(always || event->scheduled());
< assert(event->initialized());
<
< if (event->scheduled())
< remove(event);
<
< event->setWhen(when, this);
< insert(event);
< event->flags.clear(Event::Squashed);
< event->flags.set(Event::Scheduled);
< if (this == &mainEventQueue)
< event->flags.set(Event::IsMainQueue);
< else
< event->flags.clear(Event::IsMainQueue);
<
< if (DTRACE(Event))
< event->trace("rescheduled");
< }
<