Hermes
Simulation Orchestration Platform for Aerospace
Loading...
Searching...
No Matches
hermes.core.config.HermesConfig Class Reference
Inheritance diagram for hermes.core.config.HermesConfig:
Collaboration diagram for hermes.core.config.HermesConfig:

Public Member Functions

HermesConfig from_yaml (cls, Path|str path)
float get_dt (self)
float get_major_frame_dt (self)
list[str] get_module_names (self)

Static Public Attributes

str version = "0.2"
dict modules [str, ModuleConfig]
list wiring = Field(default_factory=list)
ExecutionConfig execution = Field(default_factory=ExecutionConfig)
ServerConfig server = Field(default_factory=ServerConfig)

Protected Member Functions

HermesConfig _validate_references (self)

Detailed Description

Root Hermes configuration.

Member Function Documentation

◆ _validate_references()

HermesConfig hermes.core.config.HermesConfig._validate_references ( self)
protected
Validate that wiring and schedule reference valid modules.

◆ from_yaml()

HermesConfig hermes.core.config.HermesConfig.from_yaml ( cls,
Path | str path )
Load configuration from YAML file.

Args:
    path: Path to YAML configuration file

Returns:
    Parsed configuration

Raises:
    FileNotFoundError: If file doesn't exist
    pydantic.ValidationError: If configuration invalid

◆ get_dt()

float hermes.core.config.HermesConfig.get_dt ( self)
Get timestep in seconds.

◆ get_major_frame_dt()

float hermes.core.config.HermesConfig.get_major_frame_dt ( self)
Get major-frame timestep in seconds.

Returns the timestep corresponding to the major frame rate (slowest
module rate).  Falls back to :meth:`get_dt` when no multi-rate
schedule is configured.

◆ get_module_names()

list[str] hermes.core.config.HermesConfig.get_module_names ( self)
Get module names in execution order.

Member Data Documentation

◆ execution

ExecutionConfig hermes.core.config.HermesConfig.execution = Field(default_factory=ExecutionConfig)
static

◆ modules

dict hermes.core.config.HermesConfig.modules [str, ModuleConfig]
static

◆ server

ServerConfig hermes.core.config.HermesConfig.server = Field(default_factory=ServerConfig)
static

◆ version

str hermes.core.config.HermesConfig.version = "0.2"
static

◆ wiring

list hermes.core.config.HermesConfig.wiring = Field(default_factory=list)
static

The documentation for this class was generated from the following file: