inet.simulation.task.SimulationTask¶
- class inet.simulation.task.SimulationTask(simulation_config=None, run_number=0, inifile_entries=[], itervars=None, mode='release', debug=None, remove_launch=True, break_at_event_number=None, break_at_matching_event=None, user_interface='Cmdenv', result_folder='results', sim_time_limit=None, cpu_time_limit=None, record_eventlog=None, record_pcap=None, stdout_file_path=None, eventlog_file_path=None, scalar_file_path=None, vector_file_path=None, wait=True, name='simulation', task_result_class=SimulationTaskResult, **kwargs)¶
Bases:
inet.simulation.iderunner.TaskRepresents a simulation task that can be run as a separate process or in the process where Python is running.
Please note that undocumented features are not supposed to be called by the user.
- Parameters:
simulation_config (
SimulationConfig) – The simulation config that is used to run this simulation task.run_number (number) – The number uniquely identifying the simulation run.
inifile_entries (list) – A list of additional inifile entries.
itervars (string) – The list of iteration variables.
mode (string) – The build mode that is used to run this simulation task. Valid values are “release”, “debug”, and “sanitize”.
debug (bool) – Specifies that the IDE debugger should be attached to the running simulation.
remove_launch (bool) – Specifies if the IDE should remove the launch after the simulation terminates.
break_at_event_number (int) – Specifies an event number at which a breakpoint is to be set.
break_at_matching_event (string) – Specifies a C++ expression at which a breakpoint is to be set.
user_interface (string) – The user interface that is used to run this simulation task. Valid values are “Cmdenv”, and “Qtenv”.
result_folder (string) – The result folder where the output files are generated.
sim_time_limit (string) – The simulation time limit as quantity with unit (e.g. “1s”).
cpu_time_limit (string) – The CPU time limit as quantity with unit (e.g. “1s”).
record_eventlog (bool) – Specifies whether the eventlog file should be recorded or not.
record_pcap (bool) – Specifies whether PCAP files should be recorded or not.
stdout_file_path (string) – Overrides the relative file path of the STDOUT file, not set by default.
eventlog_file_path (string) – Overrides the relative file path of the eventlog file, not set by default.
scalar_file_path (string) – Overrides the relative file path of the scalar file, not set by default.
vector_file_path (string) – Overrides the relative file path of the vector file, not set by default.
wait (bool) – Determines if running the task waits the simulation to complete or not.
task_result_class (type) – The Python class that is used to return the result.
kwargs (dict) – Additional parameters are inherited from the
Taskconstructor.
- rerun(**kwargs)¶
Runs the task again.
- Returns (
TaskResult): The task result.
- Returns (
- run(**kwargs)¶
Runs a simulation task by running the simulation as a child process or in the same process where Python is running.
- Parameters:
append_args (list) – Additional command line arguments for the simulation executable.
simulation_runner (string) – Determines if the simulation is run as a separate process or in the same process where Python is running. Valid values are “subprocess” and “inprocess”.
simulation_runner_class (type) – The simulation runner class that is used to run the simulation. If not specified, then this is determined by the simulation_runner parameter.
- Returns (SimulationTaskResult):
a simulation task result that contains the several simulation specific information and also the subprocess result if applicable.
- run_protected(prepend_args=[], append_args=[], simulation_runner=None, simulation_runner_class=None, **kwargs)¶
Runs the task in the protected environment wrapped by
run(). This method is expected to be overridden by derived classes. The default implementation simply returns a task result with “DONE” result code.- Parameters:
kwargs (dict) – Not used in this implementation.
- Returns (
TaskResult): The task result.