On Wednesday 08 January 2003 20.09, Tim Hockin wrote:
Hrrm, I can't argue that a temp ID is pretty, but
I _like_ that
the plugin allocates the VID.
As a plugin author I like that the host does it ;) One less thing
to take care of.
As a host author, I like that I can account for your voices by REAL
voice IDs. :)
Well, I still can't see why. Trackers used to do it this way, but h/w
synths stopped doing it about when CV started to lose popularity,
AFAIK.
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
like with a single voice for as long as you like. The problems that
MIDI has with addressing voices does not apply here, whether voices
are addressed directly or virtually.
Besides that, don't you have an array of voice
structs or something similar in EVERY plugin?
Nope - so why care what the synth actually does?
Just return me your
key.
Why? What do you want it for?
Why not just give *me* (the synth) somewhere to put my key instead,
so it comes with the VVID without anyone but me ever having to look
at it?
They don't have to be sequential or even small,
just positive
(or if you prefer, non-zero).
How about 32 bit, or void *; no additional restrictions?
In the end, it makes your life easy, too, since your
key is my key
- you don't need to hash or map anything.
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)
//David Olofson - Programmer, Composer, Open Source Advocate
.- The Return of Audiality! --------------------------------.
| Free/Open Source Audio Engine for use in Games or Studio. |
| RT and off-line synth. Scripting. Sample accurate timing. |
`--------------------------->
http://olofson.net/audiality -'
---
http://olofson.net ---
http://www.reologica.se ---