On Wednesday 08 January 2003 22.25, Steve Harris wrote: > On Wed, Jan 08, 2003 at 09:36:08 +0100, David Olofson wrote: > > For implementational reasons, I'm claiming that it makes a lot of > > sense to assume that synths know what to do when they receive the > > first event to a VVID that doesn't have a voice. I don't see why > > the case "this VVID has no voice" should be something that the > > host/sender *has* to worry about. (Especially since the whole > > concept is irrelevant to monophonic synths. These will ignore > > VVIDs anyway.) > > But the instrument has to be able to tell control changes to stolen > voices from control changes for a new voice from a voice that > should replace the new voice in the same id (like with midi's > pitch=id). > > Its easier if it doesn't have to keep track of which are which.
Well, instead of NULLing VVID entries for stolen voices, connect them to a dummy voice. Another alternative (which is looking more and more attractive to me) is to use 'int' instead of 'void *' for VVID entries. Then you can just use one value (-1) for "no voice" and another (-2) for "dead VVID". Other values would be physical voice indices or whatever fits the implementation. (Well, you *can* do that by pointing VVID entries at various objects that are not voices, and check the pointers, but that's not too sexy... :-) //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 ---
