I knew about the pExch stuff, and this was the approach taken by @DrJustice on the preset manager.
what I hadn't found was a way to link the two worlds of pExch and ObjectKvpRoot.
this is really handy, as you say pExch gives the structure (sorely lacking in the ObjectKvpRoot), which ObjectKvpRoot gives you the info.
does this also help for those things that are missing in ObjectKvpRoot?
definitely need to have a play with this.
but for that , I need to get my new controller stuff working on the Push2... to test, this, although this faces potentially another challenge...
As the Push2 will be a different device (a PI2/BBB) , my current thoughts are to connect via the Axoloti USB bulk interface e.g. the same way as the GUI gets the data.
this of course means I get exactly the same data as the GUI... but I fear the GUI gets nothing other than data from the board.. because it has the meta data from the patch.
this leaves me with a horrible dilemma
a) enhance the protocol to send meta data
b) load the patch... process in C++
my preferred approach, but we have no xml schema, and it might be a large task decoding the xml, to process what attributes are on what objects, and how they are structure in the patch
c) load the patch ... process in Java
ok, so this approach uses the existing code base, but creates a much smaller lighter interface, perhaps even then just retransmitting data via OSC.
Its a bit heavier than id like... i don't really want to be running java on a PI/BBB...
but has quite a few advantages, including potentially for patch compiling/uploading.
(again possibly with (a or b) but significantly more work)
i kind of touched on this in December
I guess this is all a bit off-topic , but in some ways, I thing the axoloti binary protocol, is actually quite linked to this topic of parameter display/change and patch meta data.
... anyway, Im working hard on the PI side at the moment with my other controllers, but once thats finished I will move my focus back to this area.