2017-04-23 19:13:23 -04:00
|
|
|
#include "Event.h"
|
|
|
|
|
2017-04-26 11:20:20 -04:00
|
|
|
// static integer to keep track of current number of events
|
2017-04-25 10:36:51 -04:00
|
|
|
int Event::numOfEvents = 0;
|
|
|
|
|
|
|
|
Event::Event(int value, int setTime, Wire * output){
|
|
|
|
evNum = numOfEvents++;
|
2017-04-23 19:13:23 -04:00
|
|
|
evValue = value;
|
|
|
|
evTime = setTime;
|
|
|
|
out = output;
|
|
|
|
}
|
|
|
|
|
2017-04-24 20:13:22 -04:00
|
|
|
int Event::getValue() const
|
|
|
|
{
|
|
|
|
return evValue;
|
|
|
|
}
|
|
|
|
|
|
|
|
int Event::getTime() const
|
|
|
|
{
|
|
|
|
return evTime;
|
|
|
|
}
|
|
|
|
|
|
|
|
Wire * Event::getOutput() const
|
|
|
|
{
|
|
|
|
return out;
|
|
|
|
}
|
|
|
|
|
2017-04-24 22:35:44 -04:00
|
|
|
void Event::setNum(int num)
|
|
|
|
{
|
|
|
|
evNum = num;
|
|
|
|
}
|
|
|
|
|
2017-04-26 11:20:20 -04:00
|
|
|
// < operator so that Event can be used in a priority_queue
|
2017-04-23 19:13:23 -04:00
|
|
|
bool operator<(const Event &e1, const Event &e2) {
|
|
|
|
if(e1.evTime == e2.evTime) {
|
|
|
|
return e1.evNum > e2.evNum;
|
|
|
|
}
|
|
|
|
return e1.evTime > e2.evTime;
|
|
|
|
}
|