SimCore
Shared transport-layer plumbing for the ADR-029 Train/IL/CTC RBC simulators
Loading...
Searching...
No Matches
simcore.status_report Namespace Reference

Classes

class  StatusReporter

Variables

int SIM_STATUS_KIND = 19
float PERIOD_S = 5.0

Detailed Description

ADR-038 own-perspective status heartbeat for a sim.

Each sim instance reports its OWN view of the world - which RBC sites it
is currently connected to, plus a few caller-supplied extras - once at
startup and then every PERIOD_S seconds. Each report is BOTH logged
locally (so `each sim shows connection statuses from own perspective`,
ADR-038) AND pushed to both sites over the sim's existing dual-homed
link as an opaque RBC_MSG_SIM_STATUS envelope frame; the owning Role C
gateway (train/il/ctc handler) recognises that kind, does NOT forward it
to A/B, and republishes the ASCII payload to the C-side status broker.

Kind-blind by construction: the caller owns what the payload keys mean;
this module only handles the cadence, the log line and the send. Mirrors
rbc_wire.encode_opaque()'s own transport-vs-application split.

Variable Documentation

◆ PERIOD_S

float simcore.status_report.PERIOD_S = 5.0

Definition at line 25 of file status_report.py.

◆ SIM_STATUS_KIND

int simcore.status_report.SIM_STATUS_KIND = 19

Definition at line 22 of file status_report.py.