aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--externals/grill/vst/src/editormac.hpp7
-rw-r--r--externals/grill/vst/src/main.cpp2
-rw-r--r--externals/grill/vst/src/vsthost.cpp21
-rw-r--r--externals/grill/vst/src/vsthost.h2
-rw-r--r--externals/grill/vst/vst.xcode/project.pbxproj179
5 files changed, 152 insertions, 59 deletions
diff --git a/externals/grill/vst/src/editormac.hpp b/externals/grill/vst/src/editormac.hpp
index f5316105..b519aa06 100644
--- a/externals/grill/vst/src/editormac.hpp
+++ b/externals/grill/vst/src/editormac.hpp
@@ -47,9 +47,12 @@ void TitleEditor(VSTPlugin *p,const char *t)
{
}
-bool IsEditorShown(const VSTPlugin *p)
+void HandleEditor(VSTPlugin *p,bool h)
+{
+}
+
+void FrontEditor(VSTPlugin *p)
{
- return false;
}
#endif // FLEXT_OS_MAC
diff --git a/externals/grill/vst/src/main.cpp b/externals/grill/vst/src/main.cpp
index 29263cdd..d90cac4a 100644
--- a/externals/grill/vst/src/main.cpp
+++ b/externals/grill/vst/src/main.cpp
@@ -465,7 +465,7 @@ static std::string findFilePath(const std::string &path,const std::string &dllna
}
// \todo this should be in the background, because it can take some time
-// ideally vst would get a response from VSTPlugin when readily, loaded and
+// ideally vst would get a response from VSTPlugin when readily loaded and
// vst would dump out a respective signal to the patcher
bool vst::LoadPlug()
{
diff --git a/externals/grill/vst/src/vsthost.cpp b/externals/grill/vst/src/vsthost.cpp
index 8cb69f93..384fca28 100644
--- a/externals/grill/vst/src/vsthost.cpp
+++ b/externals/grill/vst/src/vsthost.cpp
@@ -61,8 +61,11 @@ void VSTPlugin::Setup()
}
VSTPlugin::VSTPlugin(Responder *resp)
- : hdll(NULL),hwnd(NULL)
- , effect(NULL),pluginmain(NULL),audiomaster(NULL)
+ : effect(NULL),pluginmain(NULL),audiomaster(NULL)
+#if FLEXT_OS == FLEXT_OS_WIN
+ , hdll(NULL)
+#endif
+ , hwnd(NULL)
, responder(resp)
, posx(0),posy(0),sizex(0),sizey(0)
, visible(true),caption(true),handle(false)
@@ -161,11 +164,12 @@ BadParameter:
// must be NULL beforehand!
bool VSTPlugin::NewPlugin(const char *plugname)
{
- FLEXT_ASSERT(!hdll && !pluginmain && !audiomaster);
+ FLEXT_ASSERT(!pluginmain && !audiomaster);
dllname = plugname;
#if FLEXT_OS == FLEXT_OS_WIN
+ FLEXT_ASSERT(!hdll);
hdll = LoadLibrary(dllname.c_str());
if(hdll) pluginmain = (PVSTMAIN)GetProcAddress(hdll,"main");
audiomaster = Master;
@@ -223,7 +227,7 @@ bool VSTPlugin::NewPlugin(const char *plugname)
#error Platform not supported
#endif
- if(hdll && pluginmain && audiomaster)
+ if(pluginmain && audiomaster)
return true;
else {
FreePlugin();
@@ -234,7 +238,7 @@ bool VSTPlugin::NewPlugin(const char *plugname)
void VSTPlugin::FreePlugin()
{
#if FLEXT_OS == FLEXT_OS_WIN
- if(hdll) FreeLibrary(hdll);
+ if(hdll) { FreeLibrary(hdll); hdll = NULL; }
#elif FLEXT_OS == FLEXT_OS_MAC
#ifdef __MACOSX__
@@ -251,7 +255,6 @@ void VSTPlugin::FreePlugin()
effect = NULL;
audiomaster = NULL;
pluginmain = NULL;
- hdll = NULL;
}
/*
@@ -274,7 +277,7 @@ bool VSTPlugin::InstPlugin(long plugid)
//This calls the "main" function and receives the pointer to the AEffect structure.
try { effect = pluginmain(audiomaster); }
- catch(exception &e) {
+ catch(std::exception &e) {
flext::post("vst~ - caught exception while instantiating plugin: %s",e.what());
}
catch(...) {
@@ -379,7 +382,7 @@ bool VSTPlugin::Instance(const char *name,const char *subname)
}
}
- catch(exception &e) {
+ catch(std::exception &e) {
flext::post("vst~ - caught exception while loading plugin: %s",e.what());
ok = false;
}
@@ -419,7 +422,7 @@ void VSTPlugin::DspInit(float sr,int blsz)
// then signal that mains have changed!
Dispatch(effMainsChanged,0,1);
}
- catch(exception &e) {
+ catch(std::exception &e) {
flext::post("vst~ - caught exception while initializing dsp: %s",e.what());
}
catch(...) {
diff --git a/externals/grill/vst/src/vsthost.h b/externals/grill/vst/src/vsthost.h
index d4365e97..0b055d40 100644
--- a/externals/grill/vst/src/vsthost.h
+++ b/externals/grill/vst/src/vsthost.h
@@ -324,8 +324,10 @@ private:
inline bool HasFlags(long msk) const { return effect && (effect->flags&msk); }
+#if FLEXT_OS == FLEXT_OS_WIN
// the handle to the shared library
MHandle hdll;
+#endif
// the handle to the plugin editor window
WHandle hwnd;
// the VST plugin instance
diff --git a/externals/grill/vst/vst.xcode/project.pbxproj b/externals/grill/vst/vst.xcode/project.pbxproj
index 73e69e34..67b0c224 100644
--- a/externals/grill/vst/vst.xcode/project.pbxproj
+++ b/externals/grill/vst/vst.xcode/project.pbxproj
@@ -79,16 +79,21 @@
};
0867D691FE84028FC02AAC07 = {
children = (
+ E91C4A8207ECD9EA00062063,
+ E91C4A8307ECD9EA00062063,
+ E91C4A8407ECD9EA00062063,
+ E91C4A8507ECD9EA00062063,
+ E91C4A8607ECD9EA00062063,
+ E91C4A8707ECD9EA00062063,
+ E91C4A8807ECD9EA00062063,
+ E91C4A8907ECD9EA00062063,
E9304A5F07732F1F00EE7812,
E9E87848074674890035356B,
E9E87845074674560035356B,
E9E87713074673750035356B,
E9E87710074673590035356B,
- E9C0C57707461746002B8D0A,
E9C0C57907461746002B8D0A,
E9C0C57A07461746002B8D0A,
- E9C0C57B07461746002B8D0A,
- E9C0C57C07461746002B8D0A,
034768DFFF38A50411DB9C8B,
);
isa = PBXGroup;
@@ -109,9 +114,10 @@
D2AAC0C305546C1D00DB518D = {
buildActionMask = 2147483647;
files = (
- E9C0C57D07461746002B8D0A,
E9C0C58007461746002B8D0A,
- E9C0C58207461746002B8D0A,
+ E91C4A8A07ECD9EA00062063,
+ E91C4A8B07ECD9EA00062063,
+ E91C4A8E07ECD9EA00062063,
);
isa = PBXHeadersBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
@@ -120,8 +126,12 @@
buildActionMask = 2147483647;
files = (
E9C0C57F07461746002B8D0A,
- E9C0C58107461746002B8D0A,
E9304A6007732F1F00EE7812,
+ E91C4A8C07ECD9EA00062063,
+ E91C4A8D07ECD9EA00062063,
+ E91C4A8F07ECD9EA00062063,
+ E91C4A9007ECD9EA00062063,
+ E91C4A9107ECD9EA00062063,
);
isa = PBXSourcesBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
@@ -153,10 +163,10 @@
GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_PREFIX_HEADER = "";
GCC_PREPROCESSOR_DEFINITIONS = "FLEXT_SYS=2 FLEXT_SHARED";
- HEADER_SEARCH_PATHS = "/Volumes/Daten/Prog/pdmax/flext/source /Volumes/Daten/Prog/packs/vstsdk2.3/source/common";
- INSTALL_PATH = /usr/local/lib/flext;
+ HEADER_SEARCH_PATHS = "/usr/local/include/flext $PD/src /Volumes/Daten/Prog/packs/vstsdk2.3/source/common";
+ INSTALL_PATH = "";
LIBRARY_STYLE = BUNDLE;
- OTHER_LDFLAGS = "-bundle_loader /usr/local/bin/pd";
+ OTHER_LDFLAGS = "-bundle_loader /Applications/audio/Pd-0.38-3.app/Contents/Resources/bin/pd";
PRODUCT_NAME = "vst~";
SKIP_INSTALL = YES;
};
@@ -186,92 +196,167 @@
//E92
//E93
//E94
- E9304A5F07732F1F00EE7812 = {
+ E91C4A8207ECD9EA00062063 = {
fileEncoding = 30;
isa = PBXFileReference;
- lastKnownFileType = sourcecode.cpp.cpp;
- name = editor.cpp;
- path = src/editor.cpp;
+ lastKnownFileType = sourcecode.c.h;
+ name = editor.h;
+ path = src/editor.h;
refType = 4;
sourceTree = "<group>";
};
- E9304A6007732F1F00EE7812 = {
- fileRef = E9304A5F07732F1F00EE7812;
- isa = PBXBuildFile;
- settings = {
- };
+ E91C4A8307ECD9EA00062063 = {
+ fileEncoding = 30;
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.cpp.h;
+ name = editormac.hpp;
+ path = src/editormac.hpp;
+ refType = 4;
+ sourceTree = "<group>";
};
- E9C0C57707461746002B8D0A = {
+ E91C4A8407ECD9EA00062063 = {
fileEncoding = 30;
isa = PBXFileReference;
- lastKnownFileType = sourcecode.c.h;
- name = Editor.h;
- path = src/Editor.h;
+ lastKnownFileType = sourcecode.cpp.cpp;
+ name = vstedit.cpp;
+ path = src/vstedit.cpp;
refType = 4;
sourceTree = "<group>";
};
- E9C0C57907461746002B8D0A = {
+ E91C4A8507ECD9EA00062063 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.cpp.cpp;
- name = main.cpp;
- path = src/main.cpp;
+ name = vsthost.cpp;
+ path = src/vsthost.cpp;
refType = 4;
sourceTree = "<group>";
};
- E9C0C57A07461746002B8D0A = {
+ E91C4A8607ECD9EA00062063 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
- name = main.h;
- path = src/main.h;
+ name = vsthost.h;
+ path = src/vsthost.h;
refType = 4;
sourceTree = "<group>";
};
- E9C0C57B07461746002B8D0A = {
+ E91C4A8707ECD9EA00062063 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.cpp.cpp;
- name = VstHost.cpp;
- path = src/VstHost.cpp;
+ name = vstmaster.cpp;
+ path = src/vstmaster.cpp;
refType = 4;
sourceTree = "<group>";
};
- E9C0C57C07461746002B8D0A = {
+ E91C4A8807ECD9EA00062063 = {
fileEncoding = 30;
isa = PBXFileReference;
- lastKnownFileType = sourcecode.c.h;
- name = VstHost.h;
- path = src/VstHost.h;
+ lastKnownFileType = sourcecode.cpp.cpp;
+ name = vstmidi.cpp;
+ path = src/vstmidi.cpp;
+ refType = 4;
+ sourceTree = "<group>";
+ };
+ E91C4A8907ECD9EA00062063 = {
+ fileEncoding = 30;
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.cpp.cpp;
+ name = vstparam.cpp;
+ path = src/vstparam.cpp;
refType = 4;
sourceTree = "<group>";
};
- E9C0C57D07461746002B8D0A = {
- fileRef = E9C0C57707461746002B8D0A;
+ E91C4A8A07ECD9EA00062063 = {
+ fileRef = E91C4A8207ECD9EA00062063;
isa = PBXBuildFile;
settings = {
};
};
- E9C0C57F07461746002B8D0A = {
- fileRef = E9C0C57907461746002B8D0A;
+ E91C4A8B07ECD9EA00062063 = {
+ fileRef = E91C4A8307ECD9EA00062063;
isa = PBXBuildFile;
settings = {
};
};
- E9C0C58007461746002B8D0A = {
- fileRef = E9C0C57A07461746002B8D0A;
+ E91C4A8C07ECD9EA00062063 = {
+ fileRef = E91C4A8407ECD9EA00062063;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ E91C4A8D07ECD9EA00062063 = {
+ fileRef = E91C4A8507ECD9EA00062063;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ E91C4A8E07ECD9EA00062063 = {
+ fileRef = E91C4A8607ECD9EA00062063;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ E91C4A8F07ECD9EA00062063 = {
+ fileRef = E91C4A8707ECD9EA00062063;
isa = PBXBuildFile;
settings = {
};
};
- E9C0C58107461746002B8D0A = {
- fileRef = E9C0C57B07461746002B8D0A;
+ E91C4A9007ECD9EA00062063 = {
+ fileRef = E91C4A8807ECD9EA00062063;
isa = PBXBuildFile;
settings = {
};
};
- E9C0C58207461746002B8D0A = {
- fileRef = E9C0C57C07461746002B8D0A;
+ E91C4A9107ECD9EA00062063 = {
+ fileRef = E91C4A8907ECD9EA00062063;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ E9304A5F07732F1F00EE7812 = {
+ fileEncoding = 30;
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.cpp.cpp;
+ name = editor.cpp;
+ path = src/editor.cpp;
+ refType = 4;
+ sourceTree = "<group>";
+ };
+ E9304A6007732F1F00EE7812 = {
+ fileRef = E9304A5F07732F1F00EE7812;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ E9C0C57907461746002B8D0A = {
+ fileEncoding = 30;
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.cpp.cpp;
+ name = main.cpp;
+ path = src/main.cpp;
+ refType = 4;
+ sourceTree = "<group>";
+ };
+ E9C0C57A07461746002B8D0A = {
+ fileEncoding = 30;
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.c.h;
+ name = main.h;
+ path = src/main.h;
+ refType = 4;
+ sourceTree = "<group>";
+ };
+ E9C0C57F07461746002B8D0A = {
+ fileRef = E9C0C57907461746002B8D0A;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ E9C0C58007461746002B8D0A = {
+ fileRef = E9C0C57A07461746002B8D0A;
isa = PBXBuildFile;
settings = {
};
@@ -307,8 +392,8 @@
E9E87845074674560035356B = {
isa = PBXFileReference;
lastKnownFileType = "compiled.mach-o.dylib";
- name = libflext.dylib;
- path = /usr/local/lib/libflext.dylib;
+ name = "libflext-pd.dylib";
+ path = "/usr/local/lib/libflext-pd.dylib";
refType = 0;
sourceTree = "<absolute>";
};