Hermes
Simulation Orchestration Platform for Aerospace
Loading...
Searching...
No Matches
hermes.core.router.WireRouter Class Reference

Public Member Functions

None __init__ (self, SharedMemoryManager shm)
None add_wire (self, WireConfig config)
None validate (self)
None route (self)
int wire_count (self)
None clear (self)

Protected Attributes

 _shm = shm
list _wires = []

Detailed Description

Routes signals between modules via shared memory.

Wires are executed before modules step each major frame,
transferring values from source signals to destination signals
with optional gain and offset transforms.  This pre-step
routing ensures every module sees the latest wired values
when its ``step()`` method is called.

Constructor & Destructor Documentation

◆ __init__()

None hermes.core.router.WireRouter.__init__ ( self,
SharedMemoryManager shm )

Member Function Documentation

◆ add_wire()

None hermes.core.router.WireRouter.add_wire ( self,
WireConfig config )
Add a wire from configuration.

Args:
    config: Wire configuration with src, dst, gain, offset

◆ clear()

None hermes.core.router.WireRouter.clear ( self)
Remove all wires.

◆ route()

None hermes.core.router.WireRouter.route ( self)
Execute all wire transfers.

◆ validate()

None hermes.core.router.WireRouter.validate ( self)
Validate all wires against shared memory registry.

Raises:
    ValueError: If source or destination signal not found

◆ wire_count()

int hermes.core.router.WireRouter.wire_count ( self)
Number of configured wires.

Member Data Documentation

◆ _shm

hermes.core.router.WireRouter._shm = shm
protected

◆ _wires

hermes.core.router.WireRouter._wires = []
protected

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