|
Icarus
Vehicle Simulation as a Transformable Computational Graph, built on Vulcan and Janus
|
Complete simulation configuration. More...
#include <SimulatorConfig.hpp>

Public Member Functions | |
| std::vector< std::string > | Validate () const |
| Validate configuration consistency. | |
Static Public Member Functions | |
| static SimulatorConfig | Default () |
| Create default config. | |
| static SimulatorConfig | FromFile (const std::string &path) |
| static SimulatorConfig | FromFiles (const std::string &, const std::string &) |
Public Attributes | |
| std::string | name = "Simulation" |
| std::string | version = icarus::Version() |
| std::string | description |
| std::string | source_file |
| Path to source YAML file (set by loader). | |
| double | t_start = 0.0 |
| double | t_end = 100.0 |
| double | dt = 0.01 |
| Note: may be auto-derived from scheduler. | |
| EpochConfig | epoch |
| std::vector< ComponentConfig > | components |
| std::vector< signal::SignalRoute > | routes |
| SchedulerConfig | scheduler = SchedulerConfig::Default() |
| StageConfig | staging |
| PhaseConfig | phases |
| IntegratorConfig< double > | integrator = IntegratorConfig<double>::RK4Default() |
| LogConfig | logging |
| RecordingConfig | recording |
| OutputConfig | output |
Complete simulation configuration.
Loaded from simulation.yaml master binding file. All sub-configs can be inline or referenced via includes.
NOT templated - uses double for numeric values.
|
inlinestaticnodiscard |
Create default config.
|
inlinestaticnodiscard |
Load from master binding file
|
inlinestaticnodiscard |
Load from master + explicit routes file
|
inlinenodiscard |
Validate configuration consistency.
| std::vector<ComponentConfig> icarus::SimulatorConfig::components |
| std::string icarus::SimulatorConfig::description |
| double icarus::SimulatorConfig::dt = 0.01 |
Note: may be auto-derived from scheduler.
| EpochConfig icarus::SimulatorConfig::epoch |
Epoch configuration for absolute time support When configured, enables time scale conversions (UTC, TAI, GPS, etc.)
| IntegratorConfig<double> icarus::SimulatorConfig::integrator = IntegratorConfig<double>::RK4Default() |
| LogConfig icarus::SimulatorConfig::logging |
| std::string icarus::SimulatorConfig::name = "Simulation" |
| OutputConfig icarus::SimulatorConfig::output |
| PhaseConfig icarus::SimulatorConfig::phases |
| RecordingConfig icarus::SimulatorConfig::recording |
| std::vector<signal::SignalRoute> icarus::SimulatorConfig::routes |
| SchedulerConfig icarus::SimulatorConfig::scheduler = SchedulerConfig::Default() |
| std::string icarus::SimulatorConfig::source_file |
Path to source YAML file (set by loader).
| StageConfig icarus::SimulatorConfig::staging |
| double icarus::SimulatorConfig::t_end = 100.0 |
| double icarus::SimulatorConfig::t_start = 0.0 |
| std::string icarus::SimulatorConfig::version = icarus::Version() |