X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=era.mi%2Fsrc%2Fera%2Fmi%2Flogic%2Ftimeline%2FTimeline.java;h=5c88deae9f254b6bc228f23c8f0be24c6e21c107;hb=7f37c7b2431309e49a0ee116d1ee6c173272e926;hp=bdd59476053b5165d2204c794465a74049515aa0;hpb=a4c5cfb856026771dfcf31eb22434b8b6ff20ad4;p=Mograsim.git diff --git a/era.mi/src/era/mi/logic/timeline/Timeline.java b/era.mi/src/era/mi/logic/timeline/Timeline.java index bdd59476..5c88deae 100644 --- a/era.mi/src/era/mi/logic/timeline/Timeline.java +++ b/era.mi/src/era/mi/logic/timeline/Timeline.java @@ -15,7 +15,6 @@ public class Timeline public Timeline(int initCapacity) { events = new PriorityQueue(initCapacity, (a, b) -> { - //Is this really necessary? If only ints are allowed as relative timing, the difference should always be an int long difference = a.getTiming() - b.getTiming(); if(difference == 0) return 0; @@ -34,6 +33,12 @@ public class Timeline currentTime = first.getTiming(); first.run(); } + + public void executeAll() + { + while (hasNext()) + executeNext(); + } public long getSimulationTime() { @@ -86,5 +91,16 @@ public class Timeline function.handle(event); } + @Override + public String toString() + { + return event.toString(); + } + } + + @Override + public String toString() + { + return "simulation time: " + currentTime + ", " + events.toString(); } } \ No newline at end of file