Class EventDrivenEngine

java.lang.Object
org.episteme.natural.engineering.eventdriven.EventDrivenEngine
All Implemented Interfaces:
Runnable

public class EventDrivenEngine extends Object implements Runnable
Run-time core of the event driven simulation engine.
Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Constructor Details

    • EventDrivenEngine

      public EventDrivenEngine(String id)
    • EventDrivenEngine

      public EventDrivenEngine(String id, int numThreads)
  • Method Details

    • getEntity

      public SimulationAgent getEntity(String id)
    • getNumThreads

      public int getNumThreads()
    • getCurrentTime

      public double getCurrentTime()
    • registerEntity

      public void registerEntity(SimulationAgent entity)
    • unregisterEntity

      public void unregisterEntity(String entityId)
    • start

      public void start()
    • stop

      public void stop()
    • join

      public void join() throws InterruptedException
      Throws:
      InterruptedException
    • scheduleEvent

      public void scheduleEvent(String targetId, EventSpec spec, double delay, Object... args)
      Schedules an event to occur after a delay.
      Parameters:
      delay - time from now to schedule
    • sendEvent

      public void sendEvent(String targetId, EventSpec spec, Object... args)
    • sendInternalEvent

      public void sendInternalEvent(SimulationAgent target, EventSpec spec, Object... args)
    • run

      public void run()
      Specified by:
      run in interface Runnable