RBC_Test_Sim_CTC 0.1.0 build 4d0b082
ADR-029 CTC simulator — receive-only observer of train-connected/MA indications
Loading...
Searching...
No Matches
RBC_Test_Sim_CTC

Product: RBC_Test_Sim_CTC, CTC simulator (repository RBC_Test_Sim_CTC, package ctcrbcsim). Layer: verification, Python, not safety-rated. Stands in for an external system; it is not RBC code.

The CTC simulator of the ADR-029 sim trio — a single instance overseeing both sites, a receive-only observer of train-connected / MA-granted / MA-extended indications, built on RBC_Test_Sim_Core's shared transport plumbing.

Driven by RBC_Test_Env/robot/ over RBC_Test_Sim_Core's control port.

What's here

  • src/ctc/ctc_sim.py — the simulator, console script ctc-sim (ctc.ctc_sim:main).
  • src/ctc/message_catalog.json — this sim's own message-name/kind-number/field catalog.

Note: src/ctc/rbc_messages.py, if present in a checkout, is untracked, in-progress work unrelated to this README/Doxygen pass — it isn't imported by ctc_sim.py and doesn't match RBC_Test_Sim_Core's own extraction. Confirm with whoever added it before relying on or removing it.

Building

python -m build --outdir dist

Depends on simcore, resolved from RBC_Test_Sim_Core/dist/ or Conan — see RBC_Test_Sim_Core's README.

Running

pip install --find-links ../RBC_Test_Sim_Core/dist --find-links dist ctcrbcsim
ctc-sim # reads config from SIM_CONFIG_PATH, default /app/config.json

Dockerfile (context: the workspace root) builds a multi-stage image the same way the other two sims' do. Normally run as part of the full stack via RBC_Test_Env/docker-compose.yml.

Interfaces exposed to other products

Interface Form Used by
Control port TCP command table: PING, getMessage (receive-only) RBC_Test_Env Robot keywords
Console script ctc-sim (ctc.ctc_sim:main), config from SIM_CONFIG_PATH Docker image, local environment
Wire Observes train connected, MA granted, MA extended and CTC_TRAIN_INFO indications RBC_GP role C CTC gateway