This guide walks through what Reflector does and how to use it to monitor and interact with a remote CoreEngine simulation as if it were running locally.
1. Start Reflector
Launch the Reflector app on your local workstation. It broadcasts on the network and waits for a remote CoreEngine to connect — no action is needed on the remote machine beyond having its Reflector thread enabled (see Runtime Configuration Guide).
2. Let the Remote CoreEngine Connect
When the remote CoreEngine's Reflector thread finds Reflector on the network, it connects to it automatically. Once connected, Reflector mirrors the remote engine's shared memory (LRUs, blocks, elements) into a local shared memory instance.
3. Attach Local Tools as Usual
Once reflection is active, open any local UI tool exactly as you would against a local CoreEngine — no special configuration is needed to point them at the remote machine:
- DIPanel — inject, monitor, and record data.
- SimReport — view live reports, warnings, errors, and state messages.
- OGI applications — graphs, images, and operator displays.
- StateHub and other state-machine monitoring tools.
4. Interact, Not Just Observe
Writes from local tools (e.g. data injection from DIPanel) flow back through Reflector to the remote CoreEngine — you're not limited to read-only monitoring.
5. Keep Performance in Mind
- Isolate the CoreEngine's
Reflectorthread on a dedicated core so reflection traffic doesn't impact real-time performance. - Expect network-dependent latency; Reflector is for monitoring and interaction, not a substitute for a hard real-time local control loop.