iiwusynth-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [iiwusynth-devel] API changes ?


From: Josh Green
Subject: Re: [iiwusynth-devel] API changes ?
Date: Fri, 12 Jul 2002 11:07:39 -0700 (PDT)

On Fri, 12 Jul 2002, Antoine Schmitt wrote:

>
> Hello,
> I'm in the process of encapsulating the iiwusynth in a Director Xtra
> (Macintosh and Windows).
> With Peter Hanappe, we have defined an Xtra API, that I will implement.
> This API may need some iiwu API changes or adjustments at some
> places. I was wondering what is the process for such a change,
> considering that more and more projects are now being built upon the
> C API. Making some rude changes might break people's code that rely
> on the API. Note that though I am not used to GPL development, I am
> very used to shared/team development with version control. So I am
> more wondering what is the process in public projects like iiwusynth :
> - who decides the changes
> - who implements them
> - is it better to make an API evolve (keep the old APIs and add new
> ones) or change (replace the old by the new)
>
> For (a simple) example, here is the "sound font stack management" API now :
>
> IIWU_SYNTH_API int iiwu_synth_sfload(iiwu_synth_t* synth, const char*
> filename);
>       /* returns 0 or error */
> /*  IIWU_SYNTH_API char* iiwu_synth_sfreload(iiwu_synth_t* synth, int num); */
> /*  IIWU_SYNTH_API char* iiwu_synth_sfunload(iiwu_synth_t* synth, int num); */
> IIWU_SYNTH_API int iiwu_synth_sfcount(iiwu_synth_t* synth);
> IIWU_SYNTH_API iiwu_sfont_t* iiwu_synth_get_sfont(iiwu_synth_t*
> synth, int num);
>
> The sfreload and sfrunload are not implemented. I need them for my
> Xtra. Is it ok if I implement them and add them to the API ?
>

Im the author of Swami which uses iiwusynth as its primary wavetable
driver. The changes you mentioned above dont really seem to break
backwards compatibility so it seems like they could be added to the
current released version of iiwusynth. As far as changes that break the
API in a non-backwards compatible way, perhaps a separate CVS branch
should be started (if the changes are significant) to be released as the
next revision #. What do you think Peter? I would not really like seeing
the API being changed within the same version, since that would complicate
programming matters and confuse users when things dont work right.

What kind of features have you added with your Xtra implementation, if it
includes sequencer support, I would probably be interested.

Cheers!
        Josh Green

> Thanks
>       Antoine
>
> PS : some of you might be interested by the Xtra API that we have
> designed with Peter. If you want I can post it to the list.
>
>       Antoine
>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]