[Dev] connections
Stephen Sinclair
sinclair at music.mcgill.ca
Wed Oct 3 03:49:20 BST 2007
Hi,
Well I've now done my homework... I read through the ICMC paper and have
been actively reading over the source code for libIntegra. I think I
have a much better understanding now, but there are things that are
still unclear. It's a big task to get up to scratch on this work, so to
keep things in perspective I've been keeping my current job in mind,
which is to ensure that the routing GUI will be usable for looking at
modules and making connections between them.
If I understand correctly, an ntg_instance has an array of connections,
each which points to a module's port number. I was confused for a while
between the words "port" and "attribute", but I think I have this sorted
now.. ports are implicitly defined by a module's attributes. By the
way, is there a missing "n_connections" member?
For GUI development then, I'll continue to refer to the libIntegra code,
making the assumption that the "bridge" will eventually provide methods
for enumerating modules, attributes, and instances, and getting and
setting attributes, enumerating connections between ports, etc. (I may
very well contribute to building this bridge, but for the moment it's
probably more important to get a functioning GUI using the storage stub.)
I'd like to ensure that the OSC messages internally used in the GUI will
be as close as possible to the terminology and structure of libIntegra.
So far this unfortunately hasn't really been the case, imho, but we'll
improve it in the coming weeks.
A last question: it seems like the "instances" in the database are
basically in a big soup, so that a "piece" is really just a collection
of specific instances that exist amidst all the other instances, all
serialized flatly to one giant database. Is this correct? So when the
GUI creates an instance, this will filter through the bridge and
instance host to eventually become a CREATE call to a PostgreSQL table.
A piece of music then is basically defined by a list of instance IDs? I
hope my question is clear.
I'm sure I'll have further questions but I'll defer until I've distilled
all this information a little more. Sorry if this email seems a bit
all-over-the-place.
cheers,
Steve
More information about the Dev
mailing list