Add power stats and generator control visibility

This commit is contained in:
Codex Agent
2025-11-22 23:09:39 +01:00
parent 67436d795d
commit d6655a7984
4 changed files with 49 additions and 7 deletions

View File

@@ -74,6 +74,7 @@ class PlantState:
primary_pumps: list[PumpState] = field(default_factory=list)
secondary_pumps: list[PumpState] = field(default_factory=list)
generators: list[GeneratorState] = field(default_factory=list)
aux_draws: dict[str, float] = field(default_factory=dict)
time_elapsed: float = field(default=0.0)
def snapshot(self) -> dict[str, float]:
@@ -113,6 +114,7 @@ class PlantState:
sec_pumps_blob = data.get("secondary_pumps", [])
generators_blob = data.get("generators", [])
generators = [GeneratorState(**g) for g in generators_blob]
aux_draws = data.get("aux_draws", {})
return cls(
core=CoreState(**core_blob, fission_product_inventory=inventory, emitted_particles=particles),
primary_loop=CoolantLoopState(**data["primary_loop"]),
@@ -121,5 +123,6 @@ class PlantState:
primary_pumps=[PumpState(**p) for p in prim_pumps_blob],
secondary_pumps=[PumpState(**p) for p in sec_pumps_blob],
generators=generators,
aux_draws=aux_draws,
time_elapsed=data.get("time_elapsed", 0.0),
)