APIC – DIPanel

Real-time data injection, monitoring, recording, and diagnostics for a running CoreEngine

Overview

DIPanel is a standalone desktop application that connects to a running CoreEngine and monitors or injects values directly into its DBSim — the ICD-generated shared memory database produced by DBSimGenerator. It attaches over shared memory to a specific CoreEngine instance, selected from a live picker, and works the same whether that instance is running locally or is being mirrored in through the Reflector app.

Because DIPanel talks to shared memory rather than to a specific machine, it doesn't need to know or care whether the CoreEngine it's attached to is local or reflected from a remote system.

1. Monitoring & Data Injection

The main panel is a live grid of ICD elements, one row per element, with columns for LRU, Block, Type, position/size, element name, and current value:

ColumnPurpose
EditEnter edit mode for the row to change its injected value.
Inject (Raw / Eng)Two independent toggles per element — inject the raw wire value, the engineering (scaled/converted) value, or both.
LRU / Block / TypeICD location and data type of the element.
Pos / SizeByte position and size within the block.
Element / ValueElement name and its live (or injected) value.
  • Add Elements to DI — pick ICD elements to add to the grid.
  • Find in DI — search the current grid for an element by name.
  • Clear DI — remove all rows from the grid.
  • Drag and drop a saved .dinj file onto the panel to load its element list directly.
  • Save the current element list (and injection settings) to a .dinj file, and reload it later.

2. Keyboard & Mouse Shortcuts

The DI grid supports a familiar set of editing shortcuts:

ShortcutAction
Ctrl + FOpen the Find dialog.
Ctrl + SSave the current element list to a .dinj file.
Ctrl + ASelect (mark) all rows.
Ctrl + DDeselect all rows.
DeleteRemove the selected rows from the grid.
Ctrl + CCopy the selected rows.
Ctrl + XCut the selected rows.
Ctrl + VPaste rows from the clipboard.
Ctrl + click a rowToggle that row's selection mark.
Drag & drop a fileLoad a .dinj element list onto the panel.

3. Graphs & Images

Any element can be opened in a dedicated Graph window (live time-series plot) or, for image-type elements, an Image window (live rendered view) via the Data Injection menu.

Recorded playback: the same Graph and Image views work against a played-back recording, not just a live engine — open a recorded element from the Recording Viewer to plot its recorded history on a graph, or step through its recorded frames in an image viewer, exactly as you would while watching it live.

Graph and image window layouts (which elements are shown, window position) can be saved to a .digr file and reloaded later.

4. Recording

The Recording menu controls capturing and replaying simulation data:

CommandDescription
RecStart/stop recording the current simulation to disk.
SelectOpen the recording options menu (choose what to record).
PlayPlay back a recording in the Recording Viewer.
OpenOpen an existing recording file.

See the Recording guide for the CoreEngine-side recording configuration.

5. Reports

The Reports window displays the CoreEngine's runtime reports as they're generated — errors, warnings, and info messages — with each category color-coded and independently filterable so you can focus on just the errors, or see everything at once.

6. Profiler

The Profiler window shows live performance metrics for CoreEngine components (models, drivers, tasks):

ColumnMeaning
NameThe profiled component or task.
CurrentMost recent measured duration.
Min / MaxLowest and highest duration observed.
AverageRunning average duration.

7. States Status

The States Status window gives a graphical, color-coded view of every state controller's activity, organized into tabs. Each entry is colored by what it represents:

  • Switch to — a state transition (green)
  • Waiting for — a state waiting on a condition (yellow highlight)
  • Warning — a state-reported warning (yellow)
  • Error — a state-reported error (red highlight)
  • Info — general informational messages (blue)

8. Core States

The Core States window shows the health of the CoreEngine's own Models and Drivers at a glance:

Models tableDrivers table
Model Name, Version, Minor Frame rate, Active, Priority, Cores Stream Name, Driver Name, Version, Active (OK / Fail), Report (last error message)
A driver reporting Fail is highlighted in red along with its last reported error, making connectivity problems with hardware or the driver API layer immediately visible.