Inspect the programmer
gma3_programmerInspect active grandMA3 programmer values per UI channel across all, selected, or specified fixtures, with read-only, paginated structured rows for attributes, values, and phaser steps.
Instructions
Structured view of active programmer values per UI channel (fixture, subfixture patch index, attribute, value, timing, phaser steps). Scope is explicit: all (every patched (sub)fixture, including unselected ones), selection (SelectionTable) or fixtures (an explicit range). Works with gma3_lua disabled (structured bridge op, plugin >= 0.3.0). Read-only: never changes selection, programmer or playback. ROWS ARE PROGRAMMER CONTENT, NOT OUTPUT VALUES (source "programmer"; use gma3_fixture_output/gma3_dmx for output). A row is emitted only when the console's activity masks show programmer data; value: 0 with present: true is a real zero, an absent row means no programmer value. Multi-step phasers keep every step in steps[] (value is null) with phaser-level fade/delay/speed/phase; phaser.supported is false with a reason when the API shape was unusable. coverage reports whether the scan was complete; when it is not (budget reached, API unavailable) the programmer is NOT claimed empty. Paginated. value is percent, valueRaw the 24-bit integer. Compact form: fields keeps only those row keys; by_fixture: true gives perFixture, one entry per fixture, with attribute -> value (a multi-step phaser reads "phaser (n steps)"). To watch values change over time use gma3_observe_values.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum rows to return (default 200, max 5000). | |
| scope | Yes | all = every patched (sub)fixture; selection = current selection; fixtures = the `fixtures` range. | |
| fields | No | Compact form: keep only these row keys (fid, subfixtureIndex and attribute are always kept). | |
| offset | No | Rows to skip (pagination). | |
| fixtures | No | Required for scope "fixtures": fixture IDs/ranges such as "1 Thru 5", "101 + 103", "Fixture 501.3". Groups are not expanded. | |
| by_fixture | No | Compact form: perFixture, one entry per (sub)fixture with attribute -> value (or -> the chosen fields), instead of rows (one per channel). Folds the rows of this page. | |
| max_channels | No | Scan budget in UI channels per request (default 5000). The scan stops when reached and coverage.complete is false. |