Merge branch 'license-fix' of https://github.com/adiknoth/ardour
[ardour.git] / libs / ardour / linux_vst_support.cc
index 9106d69009450bc5870a2aa5fa8c43322e00d12e..99251f08e476234f7969f5d6c7489ad5dc558f2d 100644 (file)
@@ -34,8 +34,6 @@
 #include <glibmm/fileutils.h>
 
 #include "ardour/linux_vst_support.h"
-#include "ardour/vst_plugin.h"
-
 #include "pbd/basename.h"
 #include "pbd/error.h"
 
@@ -295,43 +293,36 @@ vstfx_unload (VSTHandle* fhandle)
        return 0;
 }
 
-/**
-   Instantiates a VST plugin and also set _state of its plugin argument 
- */
+/*This instantiates a plugin*/
 
-VSTState*
-vstfx_instantiate (VSTHandle* fhandle, audioMasterCallback amc, void *ptr)
+VSTState *
+vstfx_instantiate (VSTHandle* fhandle, audioMasterCallback amc, void* userptr)
 {
        VSTState* vstfx = vstfx_new ();
-       ARDOUR::VSTPlugin* plugin = reinterpret_cast<ARDOUR::VSTPlugin*> (ptr);
 
-       if (fhandle == 0) {
+       if(fhandle == 0)
+       {
            vstfx_error( "** ERROR ** VSTFX : The handle was 0\n" );
            return 0;
        }
 
-       if ((vstfx->plugin = fhandle->main_entry (amc)) == 0) {
+       if ((vstfx->plugin = fhandle->main_entry (amc)) == 0) 
+       {
                vstfx_error ("** ERROR ** VSTFX : %s could not be instantiated :(\n", fhandle->name);
                free (vstfx);
                return 0;
        }
        
        vstfx->handle = fhandle;
-       vstfx->plugin->user = plugin;
+       vstfx->plugin->user = userptr;
                
-       if (vstfx->plugin->magic != kEffectMagic) {
+       if (vstfx->plugin->magic != kEffectMagic)
+       {
                vstfx_error ("** ERROR ** VSTFX : %s is not a VST plugin\n", fhandle->name);
                free (vstfx);
                return 0;
        }
-
-       /* need to set this here because some plugins make audioMaster
-        * callbacks from within effOpen, and _state must be set for
-        * that to work.
-        */
        
-       plugin->set_state (vstfx);
-
        vstfx->plugin->dispatcher (vstfx->plugin, effOpen, 0, 0, 0, 0);
        
        /*May or May not need to 'switch the plugin on' here - unlikely