My understanding is that localhost communication is quite fast (using memory buffers, cutting away all the lower layers) - so OSC might be an option. Perhaps optimally there could be
a) a C++ library that wraps all the communication with the Eigenharp
b) a kind-of-microservice that exposes all/most of the functionality via e.g. OSC
That way one wouldn’t need to go over the service when implementing a VST/Audiounit that e.g. provides a graphical layout mapper and midi mapper with the ability to store presets.
Question to Max/Pd experts: Would such a OSC-based service be considered helpful or would a Max/Pd user rather wrap this into a native external anyways? In the latter case: For which scenarios would the service be used?
Edit: For writing clients in other languages where directly embedding C++ is cumbersome it might be helpful. Or to add intermediate preprocessing modules on the native message level. But then one would need an orchestration environment to start and stop things, maintain different presets etc. (Something along the lines of KXStudio: KXStudio : Applications). If we go that route it might be good if this is an expert option, not the default? Or we would at least need a very straightforward user interface for orchestrating these services?
But before doing all this it might be helpful to collect some scenarios how people are actually using their Eigenharps. Are most just using the default setups that come with EigenD unaltered? And in the case of custom setups or customizations, in which direction are these going? Layouts? Plugins? Freestyle-change-everything?
Have started a questionaire about EigenD usage in this thread: Questionaise: Please describe your Eigenharp setup