/** * This class is a general abstract class that * encapsulates a simulation. To implement a * simulation, inherit from this class and implement * the `getInitialEvents` method. * * @author Yadunand Prem * @version CS2030S AY22/23 Semester 2 */ abstract class Simulation { /** * An abstract method to return an array of events * used to initialize the simulation. * * @return An array of initial events that the * simulator can use to kick-start the * simulation. */ public abstract Event[] getInitialEvents(); }