[gmpi] Re: Topic 3: Cross platform

  • From: "Angus F. Hewlett" <amulet@xxxxxxxxxxxxx>
  • To: gmpi@xxxxxxxxxxxxx
  • Date: Wed, 5 Mar 2003 11:50:25 -0500 (EST)

On Wed, 5 Mar 2003, Paul Davis wrote:

> well, it means you can write a C++ plugin and compile it, yes. it
> doesn't mean that it will run in any given host.

I don't know about Linux-land, but on Wintel the plugin will load and init
any C++ support as needed, either thru statically linked C++ runtime or
MSVCRT.DLL.

> >With one or two exceptions:- module-load time and GUI initialization (both
> >instantiation of GUI module, and setup of pipes to deliver GUI events
> >around the place). It may be that one or two platforms (e.g. Mac OS 9)
> >require an API section of their own to deal with GUI event piping.

> its clear that this may be needed for handling GUI stuff. but i
> thought that for now we're deferring considerations of a GUI, and have
> already seen some strong advocacy on the side of considering the "DSP"
> and "GUI" parts of the plugin to be extremely separable (to support
> various systems in which they are required to be). i was referring
> only to the DSP part.

OK... and as far as platform-specific goes, the library-loading phase will
be platform specific anyways, simply because the containers are
different... anything platform-specific can be incorporated in to that
phase (e.g. passing of HINSTANCE's in to Windows binaries).

> supporting it on other platforms becomes much more than a recompile of
> the source, which is something we'd generally like to avoid, i
> think.

That's up to the vendor. Provided it doesn't threaten universal
host-compatibility on its target platform(s) there's not a problem there.

> i have never seen a reason yet for the DSP part of any plugin
> to contain platform-specific code, with the sole exception of some
> kind of lock-free mutual exclusion/critical section stuff. GMPI will
> need to provide that.

Configuration management? File I/O? Plug-ins that may interact with a
particular feature on a particular system? DSP-accelerated plugins that
need to call drivers to download code and data to their PCI card?

> which touches on a good subtopic: what functionality do we need to
> wrap for each supported platform to avoid platform specific code in
> the DSP part of a plugin?

wrap at SDK level? or are we talking replacing specific functionality..?
or..?

Regards,
        Angus.


----------------------------------------------------------------------
Generalized Music Plugin Interface (GMPI) public discussion list
Participation in this list is contingent upon your abiding by the
following rules:  Please stay on topic.  You are responsible for your own
words.  Please respect your fellow subscribers.  Please do not
redistribute anyone else's words without their permission.

Archive: //www.freelists.org/archives/gmpi
Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe

Other related posts: