> That said, one VVID == one physical voice, or possibly no voice at > all. (And if you care, the latter only happens when you're > overloading your polyphony.) That is, you can still do whatever you
Or when the hihat sound is done, but the user has programmed events for later on that same VVID. > That's great, but with VVIDs + table, you can have that as well - > without two-way communication or senders having to know anything > about it. (Senders deal only with indices, and the host manages the > table. Only synths will ever access the entries in the table) Synth needs to know where the table is - We'd need to do double-indirection so that the table can move if needed. struct voice *v = myvoices[(*(host->vvid_table))[vvid]];