Re: OMS and Carbon
Re: OMS and Carbon
- Subject: Re: OMS and Carbon
- From: Pete Gontier <email@hidden>
- Date: Tue, 23 Apr 2002 15:41:03 -0700
circa 4/23/02 11:57 AM, Jeff Evans <email@hidden> wrote:
>
I notice that OMSGluePPC.lib calls CallUniversalProc(), which is not
>
supported in Carbon. And there are a few other things in OMS that are not
>
Carbon-friendly. This would seem to imply that a Carbon app cannot do MIDI
>
with OMS if it is running under OS9 - does anyone know a way around this?
Apps can't link to InterfaceLib and CarbonLib at the same time because
CarbonLib's fragment initializer searches for a connection to InterfaceLib
and explicitly fails if such a connection can be found. For this purpose,
linking OMSGluePPC.lib into your app is as "bad" as linking to InterfaceLib.
My guess is, though, that you wouldn't want to link to InterfaceLib even if
you could, because it would cause trouble under X. I haven't dealt with this
problem yet, but I'm gonna have to soon, and when I do my approach is
probably going to involve isolating OMSGluePPC.lib in a separate plug-in
accessed via CFPlugIn. My plug-in will define an interface for which there
will be two implementations, one for OMS and the other for CoreMIDI. At
runtime, I will select the appropriate plug-in according to which OS I'm
running under. Isolating OMSGluePPC.lib in a separate plug-in like this will
avoid the problem of linking to InterfaceLib, because CarbonLib's fragment
initializer will have run by the time I bring up the plug-in. In fact,
InterfaceLib-based plug-ins are officially supported by CarbonLib in the
sense that you're supposed to be able to try to make them work, even though
Apple promises nothing about how well they will work. You may want to pursue
this topic further on the Carbon and/or OMS mailing lists.
--
Pete Gontier -- pete at midiman dot net -- <
http://www.midiman.net/>
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.