[gmpi] Re: low level API - Abstract Factory summary

  • From: "Ron Kuper" <RonKuper@xxxxxxxxxxxx>
  • To: <gmpi@xxxxxxxxxxxxx>
  • Date: Mon, 14 Feb 2005 09:48:17 -0500

I'm thinking the same now, especially as I'm starting to see some sample
host code appear.  It looks pretty intimidating from a C programming
POV, and would seem overly complex to C++ coder who wasn't familiar with
COM. 

-----Original Message-----
From: gmpi-bounce@xxxxxxxxxxxxx [mailto:gmpi-bounce@xxxxxxxxxxxxx] On
Behalf Of Angus F. Hewlett
Sent: Monday, February 14, 2005 5:38 AM
To: gmpi@xxxxxxxxxxxxx
Subject: [gmpi] Re: low level API - Abstract Factory summary

The more I think about it, the more I reckon true COM may be overkill.

It's a very nice programming system, and one that I'm *generally* a big 
fan of.

HOWEVER, the idea of allowing 1001 VST noobs access to AddRef and 
Release on a smorgasbord of objects and interfaces within my host 
code... I shudder to think. Definite breeding ground for bugs. I see 
this in the same category as allowing 3rd party UI code to run 
in-process in a host - something that, if we want to deliver 
improvements in stability, should be avoided like the plague.

Regarding languages like VB, Java, scripting.. provided the interface is

reasonably clean C or C++, it's relatively easy to create bindings for 
them via SWIG.

Best regards,

       Angus.



B.J. Buchalter wrote:

>on 2/12/05 2:00 AM, Tim Hockin at thockin@xxxxxxxxxx wrote:
>  
>
>Seems like it, but QI is required for COM; again, think languages like
>Visual Basic; I'm pretty sure that if these plugins are really COM
>compliant, that you would be able to use them from VB or any of those
COM
>supporting languages. If they are not COM compliant, I don't think you
would
>be able to do so (but I am speculating here).
>
>OTOH, it protects against mistakes; essentially it stong-types the
Interface
>instead of weak-typing it. If a host is built when GMPI v3 is in
existance,
>and utilizes the v3 API, and is tested with v3 plug-ins, but the only
way to
>know which version of the API the plug-in supplies is a version number,
it
>is possible that the host fails to check the version number of the API
>support and crashes hard when it tries to use a v2 or v1 plug. If the
API is
>versioned through QI, the host will fail to acquire an interface for v3
on a
>v1 or v2 plug; at this point it will know that it can't use that plug
(just
>as if the plug had failed to load for any number of other reasons).
>
>Anyway, it may be that we really do want multiple disjoint interfaces
on the
>GMPI_Plugin object. But there is some implementational complexity that
>appears to be related to doing that....
>
>Best regards,
>
>
>B.J. Buchalter
>
>Metric Halo
>5 Donovan Drive
>Hopewell Junction, NY 12533 USA
>tel +1 845 223-6112
>fax +1 603 250-2451
>
>
>----------------------------------------------------------------------
>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
>
>
>
>  
>


-- 
=========================================================
  Angus F. Hewlett, Managing Director (CEO)
  FXpansion Audio UK Ltd   -   http://www.fxpansion.com
  Registered in the UK - #4455834 - VAT: GB 798 7782 33
========================================================= 


----------------------------------------------------------------------
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


----------------------------------------------------------------------
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: