ogstools.core.simulation_controller module#
- class ogstools.core.simulation_controller.SimulationStatus[source]#
Bases:
EnumEnumeration of possible simulation states.
- Attributes:
not_started: Simulation has not been started yet. running: Simulation is currently executing. paused: Simulation is paused (interactive mode only). done: Simulation completed successfully. error: Simulation terminated with an error.
- not_started = 0#
- running = 1#
- paused = 2#
- done = 3#
- error = 4#
- unknown = 5#
- class ogstools.core.simulation_controller.SimulationController[source]#
Bases:
ABCAbstract base class for controlling OGS simulation execution.
Provides a unified interface for running simulations, whether in interactive stepwise mode or batch mode. Handles signal interruption (SIGINT, SIGTERM) and manages simulation status.
Concrete implementations: - OGSInteractiveController: For stepwise execution control - OGSNativeController: For batch execution
Initialize a SimulationController.
- Parameters:
- Status#
alias of
SimulationStatus
- property is_interrupted: bool#
Check if an interrupt signal was received and reset the flag.
- Returns:
True if SIGINT or SIGTERM was received, False otherwise.
- abstractmethod terminate()[source]#
Terminate the simulation immediately.
- Return type:
- Returns:
True if termination was successful, False otherwise.
- abstract property status: SimulationStatus#
Get the current simulation status.
- Returns:
Current SimulationStatus.