Automation
File: Rhapsodist/Core/Includes/Automation.js · Namespace: Automation
Overview
Automation builds the Automation tab of the Settings window: MIDI CC and Macro assignment (via HISE’s own MidiLearnPanel/FrontendMacroPanel), plus an MPE assignment table if the module tree contains any MPEModulators.
There’s no public API; an expansion benefits from this automatically once Core.js is included.
The MPE table lists every currently MPE-connected, non-bypassed MPEModulator (Parameter, Gesture, Mode, Intensity); edits write straight back to the modulator’s attributes.
Automation also registers 32 frontend macros (“Macro 1”..“Macro 32”) unconditionally at load.
Usage
Automation runs automatically once Core.js is included, no project code needs to call anything here. Add an MPEModulator to the module tree and it appears in the MPE tab on its own.
Internal Reference
| Function | Description | Returns |
|---|---|---|
getMpeModFromParameterId(id: string) | Returns the MPEModulator with the given ID from mpeMods. | — |
populateMpeTable() | Rebuilds mpeTableData from the MPE-connected, non-bypassed modulators in mpeMods and pushes it to vptMpe. | — |
getMpeModulators() | Scans all modulators for MPEModulators, populates mpeMods, and shows/hides the MPE tab on pnlAutomation accordingly. | — |
getMpeMode(modulator: ScriptObject) | Reads a modulator’s Monophonic/Retrigger attributes and returns the corresponding mode index (Polyphonic, Legato, Retrigger). | number |
setMpeMode(modulator: ScriptObject, mode: number) | Sets a modulator’s Monophonic/Retrigger attributes for the given mode index. | — |
registerMacros() | Calls Engine.setFrontendMacros() with the 32 fixed macro names. | — |
Broadcasters
| Broadcaster | Description |
|---|---|
bcMpeBypassWatcher | Fires when the Enabled attribute changes on an MPE-connected modulator. Rebuilds the MPE table via populateMpeTable(). getMpeModulators() attaches it to the current set of MPEModulators, or bypasses it entirely when there are none. |