    

 ## On this page

  

 

 # simulation\_framework::autonomy::ISimInstanceCreator Class Reference

 Last update: 16.07.2025 

Defines a generic interface for creating instances of `<a class="el" href="classsimulation__framework_1_1core_1_1lifecycle_1_1ISimulationInstance.xhtml" title="class ISimulationInstance">core::lifecycle::ISimulationInstance</a>`. [More...](classsimulation__framework_1_1autonomy_1_1ISimInstanceCreator.xhtml#details)

`#include <<a class="el" href="i__sim__instance__creator_8h_source.xhtml">i_sim_instance_creator.h</a>>`

Inheritance diagram for simulation_framework::autonomy::ISimInstanceCreator:

![Inheritance graph](/sites/default/files/migrate-content/avxcelerate_simulation_framework_2025_r1_num1/classsimulation__framework_1_1autonomy_1_1ISimInstanceCreator__inherit__graph.png)

\[[legend](graph_legend.xhtml)\]

## <a name="pub-methods"></a>Public Member Functions

<a id="ac065591079732dd1b8ce16a0662a5a8d"></a>virtual [~ISimInstanceCreator](classsimulation__framework_1_1autonomy_1_1ISimInstanceCreator.xhtml#ac065591079732dd1b8ce16a0662a5a8d) ()=default Virtual destructor for safe polymorphic deletion.   
 virtual std::unique\_ptr&lt; [core::lifecycle::ISimulationInstance](classsimulation__framework_1_1core_1_1lifecycle_1_1ISimulationInstance.xhtml) &gt; [Create](classsimulation__framework_1_1autonomy_1_1ISimInstanceCreator.xhtml#a6bd92c822eb379e5f420a57e510c37f1) (const [core::SimulationParameters](structsimulation__framework_1_1core_1_1SimulationParameters.xhtml) &amp;core\_parameters)=0 Creates a simulation instance using the provided core simulation parameters. [More...](classsimulation__framework_1_1autonomy_1_1ISimInstanceCreator.xhtml#a6bd92c822eb379e5f420a57e510c37f1)  
 <a id="details" name="details"></a>## Detailed Description

Defines a generic interface for creating instances of `<a class="el" href="classsimulation__framework_1_1core_1_1lifecycle_1_1ISimulationInstance.xhtml" title="class ISimulationInstance">core::lifecycle::ISimulationInstance</a>`.

This interface provides a flexible and domain-agnostic mechanism to create simulation instances. Users can implement this interface to create domain-specific instances of `ISimulationInstance` using generic simulation parameters.

The design supports extensibility by allowing the creation of simulation instances tailored to specific requirements based on `<a class="el" href="structsimulation__framework_1_1core_1_1SimulationParameters.xhtml" title="The SimulationParameters struct encapsulates parameters related to simfwk-core configuration.">core::SimulationParameters</a>`.

See also[core::lifecycle::ISimulationInstance](classsimulation__framework_1_1core_1_1lifecycle_1_1ISimulationInstance.xhtml "class ISimulationInstance"), [core::SimulationParameters](structsimulation__framework_1_1core_1_1SimulationParameters.xhtml "The SimulationParameters struct encapsulates parameters related to simfwk-core configuration.")

## Member Function Documentation

<a id="a6bd92c822eb379e5f420a57e510c37f1"></a>## [◆ ](#a6bd92c822eb379e5f420a57e510c37f1)Create()

 virtual std::unique\_ptr&lt;[core::lifecycle::ISimulationInstance](classsimulation__framework_1_1core_1_1lifecycle_1_1ISimulationInstance.xhtml)&gt; simulation\_framework::autonomy::ISimInstanceCreator::Create  ( const [core::SimulationParameters](structsimulation__framework_1_1core_1_1SimulationParameters.xhtml) &amp;  *core\_parameters*)   pure virtual 

Creates a simulation instance using the provided core simulation parameters.

This method generates a domain-specific implementation of `ISimulationInstance` based on the provided `<a class="el" href="structsimulation__framework_1_1core_1_1SimulationParameters.xhtml" title="The SimulationParameters struct encapsulates parameters related to simfwk-core configuration.">core::SimulationParameters</a>`.

Parameters core\_parametersThe generic parameters required to configure and initialize the simulation instance. ReturnsA unique pointer to a concrete implementation of `<a class="el" href="classsimulation__framework_1_1core_1_1lifecycle_1_1ISimulationInstance.xhtml" title="class ISimulationInstance">core::lifecycle::ISimulationInstance</a>`. Implemented in [simulation\_framework::autonomy::AutonomySimInstanceCreator](classsimulation__framework_1_1autonomy_1_1AutonomySimInstanceCreator.xhtml#a673632208c6ef43a59ab35008c0e45ef).





---

The documentation for this class was generated from the following file:- [i\_sim\_instance\_creator.h](i__sim__instance__creator_8h_source.xhtml)