I’m starting to code externals in C/C++ in Max5 API which implements a graph structure.
The architecture which would be conceptually the best is to split the different functions on the graph in different externals.
This would mean something like a common memory declared by on of the external (as a buffer~ does for audio data) therefore linked through a symbol (let say "graph" for example). And then, some other externals to write the graph (probably unique), read the graph (eventually numerous) and all other functions one could code for a graph (visualize, utilize…). These would use "graph" to address the memory instanciated before.
Does someone have already implemented externals using such kind of references one to another ?
Any suggestions of particular features of the Max5 API which could be handful for this ?
I’ve been advised that instead of the argument-based declaration of the common memory (as in buffer~) an attribute-based declaration would be more Max5-fashioned. But does it changes the way the symbol ("graph", previously declared) is to be linked with the shared memory ?