spinetoolbox.execution_managers
¶
Classes to manage tool instance execution in various forms.
- author
Savolainen (VTT)
- date
1.2.2018
Module Contents¶
Classes¶
Base class for all tool instance execution managers. |
|
Class to manage tool instance execution using a PySide2 QProcess. |
- class spinetoolbox.execution_managers.ExecutionManager(logger)[source]¶
Bases:
PySide2.QtCore.QObject
Base class for all tool instance execution managers.
Class constructor.
- Parameters
logger (LoggerInterface) – a logger instance
- class spinetoolbox.execution_managers.QProcessExecutionManager(logger, program='', args=None, silent=False, semisilent=False)[source]¶
Bases:
ExecutionManager
Class to manage tool instance execution using a PySide2 QProcess.
Class constructor.
- Parameters
logger (LoggerInterface) – a logger instance
program (str) – Path to program to run in the subprocess (e.g. julia.exe)
args (list, optional) – List of argument for the program (e.g. path to script file)
silent (bool) – Whether or not to emit logger msg signals
semisilent (bool) – If True, show Process Log messages
- start_execution(self, workdir=None)[source]¶
Starts the execution of a command in a QProcess.
- Parameters
workdir (str, optional) – Work directory
- wait_for_process_finished(self, msecs=30000)[source]¶
Wait for subprocess to finish.
- Parameters
msecs (int) – Timeout in milliseconds
- Returns
True if process finished successfully, False otherwise
- on_state_changed(self, new_state)[source]¶
Runs when QProcess state changes.
- Parameters
new_state (int) – Process state number (
QProcess::ProcessState
)
- on_process_error(self, process_error)[source]¶
Runs if there is an error in the running QProcess.
- Parameters
process_error (int) – Process error number (
QProcess::ProcessError
)
- teardown_process(self)[source]¶
Tears down the QProcess in case a QProcess.ProcessError occurred. Emits execution_finished signal.