Class ModuleManager<T extends Time>

java.lang.Object
dev.engine.core.module.ModuleManager<T>
Type Parameters:
T - the update context type passed to modules

public class ModuleManager<T extends Time> extends Object
Central manager responsible for the lifecycle and update orchestration of Module instances.

Modules are registered via add(Module), which validates dependencies, updates the internal DependencyGraph, and runs the create/init lifecycle. Each tick(double) or

invalid reference
#update(Object)
call fans out to all enabled modules in dependency-safe parallel levels using the configured Executor.
  • Constructor Details

  • Method Details

    • add

      public void add(Module<T> module)
    • remove

      public void remove(Class<? extends Module<T>> moduleType, RemovalPolicy policy)
    • shutdown

      public void shutdown()
    • getModule

      public <M extends Module<T>> M getModule(Class<M> type)
    • hasModule

      public boolean hasModule(Class<? extends Module<T>> type)
    • getModules

      public Collection<Module<T>> getModules()
    • tick

      public void tick(double elapsedSeconds)
    • update

      public void update(T context)