    

 ## On this page

  

 

 # Class simulation\_framework::core::ISimRunner

 Last update: 22.04.2026 

![](https://img.shields.io/badge/language-C%2B%2B-blue "C++")![](https://img.shields.io/badge/-public-brightgreen "public")

**Definition**: `core/service/sim_runner/i_sim_runner.h` (line 43)

Interface for controlling and managing simulation execution.

The `<a href="classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner">ISimRunner</a>` interface provides a set of external control APIs for managing the lifecycle and execution of a simulation.

**Inherited by**:

- [simulation\_framework::core::SimRunner](classsimulation__framework_1_1core_1_1SimRunner.md#classsimulation__framework_1_1core_1_1SimRunner)

## Members

- [GetExecutedStepCount](classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner_1ae60fbe830aef619e8cbd39a092f1f995)
- [GetSimulationState](classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner_1a66d4287f6da13af21331fbfc1c5ff226)
- [Pause](classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner_1a7cc05d7d61c4cb7af9eca9fb85bce8d7)
- [Resume](classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner_1a4b448f77a70ea37643cff04f6d1c7c1c)
- [Run](classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner_1ab7615f9b015b1c52e3af9e21ef2bf6ee)
- [RunOverSimulation](classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner_1af5cc40c4bdd9360cd2e95e1c2f8e5626)
- [StepN](classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner_1a11b61afe9fa80c71aae36c16449ac831)
- [Stop](classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner_1a659d260f4146f46ffe51bc17f93179ac)
- [Terminate](classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner_1aa5b44639fefef47817aafb6f99719802)
- [~ISimRunner](classsimulation__framework_1_1core_1_1ISimRunner.md#classsimulation__framework_1_1core_1_1ISimRunner_1a28739232c9e3879e863cd5fa158ef709)

## Public functions

<a id="classsimulation__framework_1_1core_1_1ISimRunner_1a28739232c9e3879e863cd5fa158ef709"></a>

### Function ~ISimRunner

![](https://img.shields.io/badge/-public-brightgreen "public")

```cpp
virtual simulation_framework::core::ISimRunner::~ISimRunner()=default

```

Virtual destructor for proper cleanup of derived classes.

**Return type**:

<a id="classsimulation__framework_1_1core_1_1ISimRunner_1ab7615f9b015b1c52e3af9e21ef2bf6ee"></a>

### Function Run

![](https://img.shields.io/badge/-public-brightgreen "public")

```cpp
virtual StateFeedback simulation_framework::core::ISimRunner::Run()=0

```

Starts the simulation.

**Returns**:

A `<a href="structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback">StateFeedback</a>` object indicating the result of the operation.

**Return type**: [StateFeedback](structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback)

**Reimplemented by**:

- [Run](classsimulation__framework_1_1core_1_1SimRunner.md#classsimulation__framework_1_1core_1_1SimRunner_1aa47196cb107ebc1c200ab5fd43fc22f9)

<a id="classsimulation__framework_1_1core_1_1ISimRunner_1a7cc05d7d61c4cb7af9eca9fb85bce8d7"></a>

### Function Pause

![](https://img.shields.io/badge/-public-brightgreen "public")

```cpp
virtual StateFeedback simulation_framework::core::ISimRunner::Pause()=0

```

Pauses the simulation.

**Returns**:

A `<a href="structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback">StateFeedback</a>` object indicating the result of the operation.

**Return type**: [StateFeedback](structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback)

**Reimplemented by**:

- [Pause](classsimulation__framework_1_1core_1_1SimRunner.md#classsimulation__framework_1_1core_1_1SimRunner_1a2008706db821aed76b79bee747a220ac)

<a id="classsimulation__framework_1_1core_1_1ISimRunner_1a4b448f77a70ea37643cff04f6d1c7c1c"></a>

### Function Resume

![](https://img.shields.io/badge/-public-brightgreen "public")

```cpp
virtual StateFeedback simulation_framework::core::ISimRunner::Resume()=0

```

Resumes the simulation if it is paused.

**Returns**:

A `<a href="structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback">StateFeedback</a>` object indicating the result of the operation.

**Return type**: [StateFeedback](structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback)

**Reimplemented by**:

- [Resume](classsimulation__framework_1_1core_1_1SimRunner.md#classsimulation__framework_1_1core_1_1SimRunner_1a0bc52ce914b51ce4fc709b0686d05475)

<a id="classsimulation__framework_1_1core_1_1ISimRunner_1a11b61afe9fa80c71aae36c16449ac831"></a>

### Function StepN

![](https://img.shields.io/badge/-public-brightgreen "public")

```cpp
virtual StateFeedback simulation_framework::core::ISimRunner::StepN(int n)=0

```

Advances the simulation by a specified number of steps.

**Parameters**:

- **n**: The number of simulation steps to execute.

**Returns**:

A `<a href="structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback">StateFeedback</a>` object indicating the result of the operation.

**Parameters**:

- [int](classsimulation__framework_1_1core_1_1Topic.md#classsimulation__framework_1_1core_1_1Topic) **n**

**Return type**: [StateFeedback](structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback)

**Reimplemented by**:

- [StepN](classsimulation__framework_1_1core_1_1SimRunner.md#classsimulation__framework_1_1core_1_1SimRunner_1aa2aecf086a4535c9a4d05b977deb29f3)

<a id="classsimulation__framework_1_1core_1_1ISimRunner_1a659d260f4146f46ffe51bc17f93179ac"></a>

### Function Stop

![](https://img.shields.io/badge/-public-brightgreen "public")

```cpp
virtual StateFeedback simulation_framework::core::ISimRunner::Stop()=0

```

Stops the simulation.

**Returns**:

A `<a href="structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback">StateFeedback</a>` object indicating the result of the operation.

**Return type**: [StateFeedback](structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback)

**Reimplemented by**:

- [Stop](classsimulation__framework_1_1core_1_1SimRunner.md#classsimulation__framework_1_1core_1_1SimRunner_1a122aef144fa4620085078b7ef1d58645)

<a id="classsimulation__framework_1_1core_1_1ISimRunner_1aa5b44639fefef47817aafb6f99719802"></a>

### Function Terminate

![](https://img.shields.io/badge/-public-brightgreen "public")

```cpp
virtual StateFeedback simulation_framework::core::ISimRunner::Terminate()=0

```

Terminates the simulation completely.

**Returns**:

A `<a href="structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback">StateFeedback</a>` object indicating the result of the operation.

**Return type**: [StateFeedback](structsimulation__framework_1_1core_1_1StateFeedback.md#structsimulation__framework_1_1core_1_1StateFeedback)

**Reimplemented by**:

- [Terminate](classsimulation__framework_1_1core_1_1SimRunner.md#classsimulation__framework_1_1core_1_1SimRunner_1a6b54a3a3676bc74deea17f50910c3e5b)

<a id="classsimulation__framework_1_1core_1_1ISimRunner_1a66d4287f6da13af21331fbfc1c5ff226"></a>

### Function GetSimulationState

![](https://img.shields.io/badge/-public-brightgreen "public")![](https://img.shields.io/badge/-const-lightblue "const")

```cpp
virtual SimState simulation_framework::core::ISimRunner::GetSimulationState() const =0

```

Retrieves the current state of the simulation.

**Returns**:

The current simulation state as a `SimState` enum value.

**Return type**: SimState

**Reimplemented by**:

- [GetSimulationState](classsimulation__framework_1_1core_1_1SimRunner.md#classsimulation__framework_1_1core_1_1SimRunner_1affd8a34918f2dbd7cd192f0351804055)

<a id="classsimulation__framework_1_1core_1_1ISimRunner_1ae60fbe830aef619e8cbd39a092f1f995"></a>

### Function GetExecutedStepCount

![](https://img.shields.io/badge/-public-brightgreen "public")![](https://img.shields.io/badge/-const-lightblue "const")

```cpp
virtual uint64_t simulation_framework::core::ISimRunner::GetExecutedStepCount() const =0

```

Retrieves the number of steps executed so far.

**Returns**:

The total number of steps executed as a 64-bit unsigned integer.

**Return type**: [uint64\_t](classsimulation__framework_1_1core_1_1Topic.md#classsimulation__framework_1_1core_1_1Topic)

**Reimplemented by**:

- [GetExecutedStepCount](classsimulation__framework_1_1core_1_1SimRunner.md#classsimulation__framework_1_1core_1_1SimRunner_1adec7aec8d884742bb373d649e8a3e9c3)

<a id="classsimulation__framework_1_1core_1_1ISimRunner_1af5cc40c4bdd9360cd2e95e1c2f8e5626"></a>

### Function RunOverSimulation

![](https://img.shields.io/badge/-public-brightgreen "public")

```cpp
virtual void simulation_framework::core::ISimRunner::RunOverSimulation()=0

```

Runs any remaining parts of the simulation to completion.

**Return type**: [void](classsimulation__framework_1_1core_1_1Topic.md#classsimulation__framework_1_1core_1_1Topic)

**Reimplemented by**:

- [RunOverSimulation](classsimulation__framework_1_1core_1_1SimRunner.md#classsimulation__framework_1_1core_1_1SimRunner_1a4ba901d04097297295b7b680ac151da9)