Store the programmer into a preset with explicit storage rules
gma3_store_presetStores current grandMA3 programmer content into a specified preset, with explicit mode, fixture scope, layers, and existing-preset behavior; unmatched values are refused.
Instructions
Store the current programmer content into Preset .. Prepare the programmer first (gma3_select, gma3_set_attribute/color/position, At Preset ... for embedding); this tool only stores. Explicit rules: mode selective | global | universal (never the pool default: a default store resolves a mode conflict silently and can keep one fixture's values), or force global | universal for a forced conversion of an existing preset (removes its selective, or selective and global, data; needs existing: "merge"). existing: refuse (default) | merge | overwrite. fixtures: the scope; every active programmer value must belong to these fixtures (a fixture includes its cells) and each must have one; attributes (optional): exact attribute filter (an activation group, e.g. all ColorRGB_*, is activated as a whole); layers (default [absolute]; also relative, fade, delay, phaser) must cover every value's layers. Anything else in the programmer is refused, because the console stores every active value regardless of the selection. Also refused: universal mode with values that differ between fixtures, embed without a preset reference in the programmer, attributes a feature-group pool's input filter would drop (store into an All pool 21-25 or pass input_filter: false), a locked preset. embed (default false) stores references to the presets active in the programmer; matricks (default false) the selection MAtricks; keep_activation (default false); input_filter overrides the operator default for this store only. The command always carries /Programmer /Active, the mode, /Merge or /Overwrite, /Embed, /MAtricks, /KeepActivation and /NoConfirmation, so the operator's store preferences decide nothing and are not changed (read before and after); Look cannot be overridden per store, so the tool refuses while the operator's StoreLook preference is on. Requires exclusive: true (not for preview). verify (default true) reads the stored rows back and checks each programmer value by mode, value, layers and reference, unexpected content, the preset's mode, dependencies (recursively; incomplete inspection is reported) and that the store preferences are unchanged. Needs bridge 0.22.0.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Preset mode the data is stored in. | |
| name | No | Preset name. | |
| embed | No | Store references to the presets active in the programmer (default false: plain values). | |
| force | No | Forced conversion of an existing preset instead of mode (needs existing: merge). | |
| layers | No | Data layers the values may carry (default [absolute]). | |
| preset | Yes | Target preset "<pool>.<number>", e.g. "4.12" or "23.1". | |
| verify | No | Read back and check the stored content (default true). | |
| preview | No | Only read, check and return the planned command (default false). | |
| existing | No | What to do when the preset exists (default refuse). | |
| fixtures | Yes | Scope: fixture ids or "a Thru b" ranges; every programmer value must belong to them. | |
| matricks | No | Store the selection MAtricks into the preset (default false). | |
| exclusive | No | Required (true) unless preview: nobody else changes the programmer while the tool runs. | |
| attributes | No | Exact attribute filter: the programmer may hold only these attributes, and each must be present. | |
| input_filter | No | Override the operator's preset input-filter default for this store only. | |
| keep_activation | No | Keep the stored values active in the programmer (default false). |