Basically my plan is to load a different preset (for e1 that's the UI on screen and the midi mapping) based on what device is currently selected in bitwig, i.e. for a synth I'd want some oscillator pages and e1 native ADSR controls, and for something like bitwig's compressor I just want a couple sliders for values.
I've played with the API and it seems that I can use CursorDevice.addDirectParameter... family of methods to get access to device's parameters without pre-mapping them to preset pages (it doesn't make much sense to me to do both the BW layout and then the extra work for e1 layout). Using those I can map the specific parameters for specific devices to my custom UI.
The only issue is that I can't find any way to identify the device under cursor. Sure there's the "name", but it's user-changeable (and I do rename my devices every so often) so I can't use it as a device identifier.
Is there any way at all to get the CursorDevice's device UUID so that I could see if I have a profile for that specific UUID and load it within the hardware? I looked around the host's createBitwigDeviceMatcher but it seems that it's only useful if you want to create a specific device, while I need to identify the device that's already created.
