public void add(EventNode eventNode, int lifeSpan) { LifeSpanQueueNode node = head; // iterate until we are at the correct node for (int i = 0; i < lifeSpan; i++) { node = node.next; } node.add(eventNode); }
public EventNode rotate() { EventNode eventNode = head.mostRecentEvent; head.clear(); tail.next = head; head = head.next; tail = tail.next; tail.next = null; return(eventNode); }
public LifeSpanQueue() { head = new LifeSpanQueueNode(); LifeSpanQueueNode node = new LifeSpanQueueNode(); head.next = node; for (int i = 0; i < MAX_EVENT_TIME; i++) { node.next = new LifeSpanQueueNode(); node = node.next; } tail = node; }