package de.tu_darmstadt.tk.SmartHomeNetworkSim.core.scheduler; /** * Abstract Event can be used to schedule changes to the model. For example, updates of devices. * * @author Andreas T. Meyer-Berg */ public abstract class AbstractEvent implements Schedulable { /** * Timestep the event takes place */ private long timestep; /** * Creates an Event at the given timestep, which can be scheduled. * @param timestep timestep, the event should be scheduled */ public AbstractEvent(long timestep){ this.timestep = timestep; } @Override public long getEventTime(){ return timestep; } @Override public abstract void simulateEvent(long time); }