summaryrefslogtreecommitdiff
path: root/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay
diff options
context:
space:
mode:
authorpepper <peppersclothescult@gmail.com>2015-01-10 21:37:24 -0800
committerpepper <peppersclothescult@gmail.com>2015-01-10 21:37:24 -0800
commit58f8437f4b8b741ddc8e7bcde21bf983cc618430 (patch)
treebfd0a9d601274fe56de15a4eaeb0998f9481419d /vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay
parent36773a28ece1641a2d827a29869cdd4c38e87925 (diff)
added vstsdkHEADmaster
Diffstat (limited to 'vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay')
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelay.cpp216
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelay.h93
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelaymain.cpp22
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00128.bmpbin0 -> 116154 bytes
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00129.bmpbin0 -> 2634 bytes
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00130.bmpbin0 -> 294 bytes
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/surrounddelay.rc10
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/sdeditor.cpp235
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/sdeditor.h51
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/surrounddelay.cpp172
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/surrounddelay.h54
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/win/adelay.vcproj400
-rw-r--r--vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/win/surrounddelay.vcproj444
13 files changed, 1697 insertions, 0 deletions
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelay.cpp b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelay.cpp
new file mode 100644
index 0000000..3e16bad
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelay.cpp
@@ -0,0 +1,216 @@
+//-------------------------------------------------------------------------------------------------------
+// VST Plug-Ins SDK
+// Version 2.4 $Date: 2006/11/13 09:08:27 $
+//
+// Category : VST 2.x SDK Samples
+// Filename : adelay.cpp
+// Created by : Steinberg Media Technologies
+// Description : Simple Delay plugin (Mono->Stereo)
+//
+// © 2006, Steinberg Media Technologies, All Rights Reserved
+//-------------------------------------------------------------------------------------------------------
+
+#include <stdio.h>
+#include <string.h>
+
+#ifndef __adelay__
+#include "adelay.h"
+#endif
+
+//-----------------------------------------------------------------------------
+ADelayProgram::ADelayProgram ()
+{
+ // default Program Values
+ fDelay = 0.5;
+ fFeedBack = 0.5;
+ fOut = 0.75;
+
+ strcpy (name, "Init");
+}
+
+//-----------------------------------------------------------------------------
+ADelay::ADelay (audioMasterCallback audioMaster)
+ : AudioEffectX (audioMaster, kNumPrograms, kNumParams)
+{
+ // init
+ size = 44100;
+ cursor = 0;
+ delay = 0;
+ buffer = new float[size];
+
+ programs = new ADelayProgram[numPrograms];
+ fDelay = fFeedBack = fOut = 0;
+
+ if (programs)
+ setProgram (0);
+
+ setNumInputs (1); // mono input
+ setNumOutputs (2); // stereo output
+
+ setUniqueID ('ADly'); // this should be unique, use the Steinberg web page for plugin Id registration
+
+ resume (); // flush buffer
+}
+
+//------------------------------------------------------------------------
+ADelay::~ADelay ()
+{
+ if (buffer)
+ delete[] buffer;
+ if (programs)
+ delete[] programs;
+}
+
+//------------------------------------------------------------------------
+void ADelay::setProgram (VstInt32 program)
+{
+ ADelayProgram* ap = &programs[program];
+
+ curProgram = program;
+ setParameter (kDelay, ap->fDelay);
+ setParameter (kFeedBack, ap->fFeedBack);
+ setParameter (kOut, ap->fOut);
+}
+
+//------------------------------------------------------------------------
+void ADelay::setDelay (float fdelay)
+{
+ fDelay = fdelay;
+ programs[curProgram].fDelay = fdelay;
+ cursor = 0;
+ delay = (long)(fdelay * (float)(size - 1));
+}
+
+//------------------------------------------------------------------------
+void ADelay::setProgramName (char *name)
+{
+ strcpy (programs[curProgram].name, name);
+}
+
+//------------------------------------------------------------------------
+void ADelay::getProgramName (char *name)
+{
+ if (!strcmp (programs[curProgram].name, "Init"))
+ sprintf (name, "%s %d", programs[curProgram].name, curProgram + 1);
+ else
+ strcpy (name, programs[curProgram].name);
+}
+
+//-----------------------------------------------------------------------------------------
+bool ADelay::getProgramNameIndexed (VstInt32 category, VstInt32 index, char* text)
+{
+ if (index < kNumPrograms)
+ {
+ strcpy (text, programs[index].name);
+ return true;
+ }
+ return false;
+}
+
+//------------------------------------------------------------------------
+void ADelay::resume ()
+{
+ memset (buffer, 0, size * sizeof (float));
+ AudioEffectX::resume ();
+}
+
+//------------------------------------------------------------------------
+void ADelay::setParameter (VstInt32 index, float value)
+{
+ ADelayProgram* ap = &programs[curProgram];
+
+ switch (index)
+ {
+ case kDelay : setDelay (value); break;
+ case kFeedBack : fFeedBack = ap->fFeedBack = value; break;
+ case kOut : fOut = ap->fOut = value; break;
+ }
+}
+
+//------------------------------------------------------------------------
+float ADelay::getParameter (VstInt32 index)
+{
+ float v = 0;
+
+ switch (index)
+ {
+ case kDelay : v = fDelay; break;
+ case kFeedBack : v = fFeedBack; break;
+ case kOut : v = fOut; break;
+ }
+ return v;
+}
+
+//------------------------------------------------------------------------
+void ADelay::getParameterName (VstInt32 index, char *label)
+{
+ switch (index)
+ {
+ case kDelay : strcpy (label, "Delay"); break;
+ case kFeedBack : strcpy (label, "FeedBack"); break;
+ case kOut : strcpy (label, "Volume"); break;
+ }
+}
+
+//------------------------------------------------------------------------
+void ADelay::getParameterDisplay (VstInt32 index, char *text)
+{
+ switch (index)
+ {
+ case kDelay : int2string (delay, text, kVstMaxParamStrLen); break;
+ case kFeedBack : float2string (fFeedBack, text, kVstMaxParamStrLen); break;
+ case kOut : dB2string (fOut, text, kVstMaxParamStrLen); break;
+ }
+}
+
+//------------------------------------------------------------------------
+void ADelay::getParameterLabel (VstInt32 index, char *label)
+{
+ switch (index)
+ {
+ case kDelay : strcpy (label, "samples"); break;
+ case kFeedBack : strcpy (label, "amount"); break;
+ case kOut : strcpy (label, "dB"); break;
+ }
+}
+
+//------------------------------------------------------------------------
+bool ADelay::getEffectName (char* name)
+{
+ strcpy (name, "Delay");
+ return true;
+}
+
+//------------------------------------------------------------------------
+bool ADelay::getProductString (char* text)
+{
+ strcpy (text, "Delay");
+ return true;
+}
+
+//------------------------------------------------------------------------
+bool ADelay::getVendorString (char* text)
+{
+ strcpy (text, "Steinberg Media Technologies");
+ return true;
+}
+
+//---------------------------------------------------------------------------
+void ADelay::processReplacing (float** inputs, float** outputs, VstInt32 sampleFrames)
+{
+ float* in = inputs[0];
+ float* out1 = outputs[0];
+ float* out2 = outputs[1];
+
+ while (--sampleFrames >= 0)
+ {
+ float x = *in++;
+ float y = buffer[cursor];
+ buffer[cursor++] = x + y * fFeedBack;
+ if (cursor >= delay)
+ cursor = 0;
+ *out1++ = y;
+ if (out2)
+ *out2++ = y;
+ }
+}
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelay.h b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelay.h
new file mode 100644
index 0000000..1b21c96
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelay.h
@@ -0,0 +1,93 @@
+//-------------------------------------------------------------------------------------------------------
+// VST Plug-Ins SDK
+// Version 2.4 $Date: 2006/11/13 09:08:27 $
+//
+// Category : VST 2.x SDK Samples
+// Filename : adelay.h
+// Created by : Steinberg Media Technologies
+// Description : Simple Delay plugin (Mono->Stereo)
+//
+// © 2006, Steinberg Media Technologies, All Rights Reserved
+//-------------------------------------------------------------------------------------------------------
+
+#ifndef __adelay__
+#define __adelay__
+
+#include "public.sdk/source/vst2.x/audioeffectx.h"
+
+enum
+{
+ // Global
+ kNumPrograms = 16,
+
+ // Parameters Tags
+ kDelay = 0,
+ kFeedBack,
+ kOut,
+
+ kNumParams
+};
+
+class ADelay;
+
+//------------------------------------------------------------------------
+class ADelayProgram
+{
+friend class ADelay;
+public:
+ ADelayProgram ();
+ ~ADelayProgram () {}
+
+private:
+ float fDelay;
+ float fFeedBack;
+ float fOut;
+ char name[24];
+};
+
+//------------------------------------------------------------------------
+class ADelay : public AudioEffectX
+{
+public:
+ ADelay (audioMasterCallback audioMaster);
+ ~ADelay ();
+
+ //---from AudioEffect-----------------------
+ virtual void processReplacing (float** inputs, float** outputs, VstInt32 sampleFrames);
+
+ virtual void setProgram (VstInt32 program);
+ virtual void setProgramName (char* name);
+ virtual void getProgramName (char* name);
+ virtual bool getProgramNameIndexed (VstInt32 category, VstInt32 index, char* text);
+
+ virtual void setParameter (VstInt32 index, float value);
+ virtual float getParameter (VstInt32 index);
+ virtual void getParameterLabel (VstInt32 index, char* label);
+ virtual void getParameterDisplay (VstInt32 index, char* text);
+ virtual void getParameterName (VstInt32 index, char* text);
+
+ virtual void resume ();
+
+ virtual bool getEffectName (char* name);
+ virtual bool getVendorString (char* text);
+ virtual bool getProductString (char* text);
+ virtual VstInt32 getVendorVersion () { return 1000; }
+
+ virtual VstPlugCategory getPlugCategory () { return kPlugCategEffect; }
+
+protected:
+ void setDelay (float delay);
+
+ ADelayProgram* programs;
+
+ float* buffer;
+ float fDelay;
+ float fFeedBack;
+ float fOut;
+
+ long delay;
+ long size;
+ long cursor;
+};
+
+#endif
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelaymain.cpp b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelaymain.cpp
new file mode 100644
index 0000000..ea9895e
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/adelaymain.cpp
@@ -0,0 +1,22 @@
+//-------------------------------------------------------------------------------------------------------
+// VST Plug-Ins SDK
+// Version 2.4 $Date: 2006/11/13 09:08:27 $
+//
+// Category : VST 2.x SDK Samples
+// Filename : adelaymain.cpp
+// Created by : Steinberg Media Technologies
+// Description : Simple Delay plugin (Mono->Stereo)
+//
+// © 2006, Steinberg Media Technologies, All Rights Reserved
+//-------------------------------------------------------------------------------------------------------
+
+#ifndef __adelay__
+#include "adelay.h"
+#endif
+
+//-------------------------------------------------------------------------------------------------------
+AudioEffect* createEffectInstance (audioMasterCallback audioMaster)
+{
+ return new ADelay (audioMaster);
+}
+
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00128.bmp b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00128.bmp
new file mode 100644
index 0000000..1e3b523
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00128.bmp
Binary files differ
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00129.bmp b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00129.bmp
new file mode 100644
index 0000000..275e4aa
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00129.bmp
Binary files differ
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00130.bmp b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00130.bmp
new file mode 100644
index 0000000..e272640
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/bmp00130.bmp
Binary files differ
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/surrounddelay.rc b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/surrounddelay.rc
new file mode 100644
index 0000000..52ef47d
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/resources/surrounddelay.rc
@@ -0,0 +1,10 @@
+#define APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// Bitmap
+//
+
+128 BITMAP DISCARDABLE "bmp00128.bmp"
+129 BITMAP DISCARDABLE "bmp00129.bmp"
+130 BITMAP DISCARDABLE "bmp00130.bmp"
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/sdeditor.cpp b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/sdeditor.cpp
new file mode 100644
index 0000000..ac5ebfc
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/sdeditor.cpp
@@ -0,0 +1,235 @@
+//-------------------------------------------------------------------------------------------------------
+// VST Plug-Ins SDK
+// Version 2.4 $Date: 2006/11/13 09:08:28 $
+//
+// Category : VST 2.x SDK Samples
+// Filename : sdeditor.cpp
+// Created by : Steinberg Media Technologies
+// Description : Simple Surround Delay plugin with Editor using VSTGUI
+//
+// © 2006, Steinberg Media Technologies, All Rights Reserved
+//-------------------------------------------------------------------------------------------------------
+
+#ifndef __sdeditor__
+#include "sdeditor.h"
+#endif
+
+#ifndef __adelay__
+#include "../adelay.h"
+#endif
+
+#include <stdio.h>
+
+//-----------------------------------------------------------------------------
+// resource id's
+enum {
+ // bitmaps
+ kBackgroundId = 128,
+ kFaderBodyId,
+ kFaderHandleId,
+
+ // positions
+ kFaderX = 18,
+ kFaderY = 10,
+
+ kFaderInc = 18,
+
+ kDisplayX = 10,
+ kDisplayY = 184,
+ kDisplayXWidth = 30,
+ kDisplayHeight = 14
+};
+
+//-----------------------------------------------------------------------------
+// prototype string convert float -> percent
+void percentStringConvert (float value, char* string);
+void percentStringConvert (float value, char* string)
+{
+ sprintf (string, "%d%%", (int)(100 * value + 0.5f));
+}
+
+
+//-----------------------------------------------------------------------------
+// SDEditor class implementation
+//-----------------------------------------------------------------------------
+SDEditor::SDEditor (AudioEffect *effect)
+ : AEffGUIEditor (effect)
+{
+ delayFader = 0;
+ feedbackFader = 0;
+ volumeFader = 0;
+ delayDisplay = 0;
+ feedbackDisplay = 0;
+ volumeDisplay = 0;
+
+ // load the background bitmap
+ // we don't need to load all bitmaps, this could be done when open is called
+ hBackground = new CBitmap (kBackgroundId);
+
+ // init the size of the plugin
+ rect.left = 0;
+ rect.top = 0;
+ rect.right = (short)hBackground->getWidth ();
+ rect.bottom = (short)hBackground->getHeight ();
+}
+
+//-----------------------------------------------------------------------------
+SDEditor::~SDEditor ()
+{
+ // free the background bitmap
+ if (hBackground)
+ hBackground->forget ();
+ hBackground = 0;
+}
+
+//-----------------------------------------------------------------------------
+bool SDEditor::open (void *ptr)
+{
+ // !!! always call this !!!
+ AEffGUIEditor::open (ptr);
+
+ //--load some bitmaps
+ CBitmap* hFaderBody = new CBitmap (kFaderBodyId);
+ CBitmap* hFaderHandle = new CBitmap (kFaderHandleId);
+
+ //--init background frame-----------------------------------------------
+ // We use a local CFrame object so that calls to setParameter won't call into objects which may not exist yet.
+ // If all GUI objects are created we assign our class member to this one. See bottom of this method.
+ CRect size (0, 0, hBackground->getWidth (), hBackground->getHeight ());
+ CFrame* lFrame = new CFrame (size, ptr, this);
+ lFrame->setBackground (hBackground);
+
+ //--init the faders------------------------------------------------
+ int minPos = kFaderY;
+ int maxPos = kFaderY + hFaderBody->getHeight () - hFaderHandle->getHeight () - 1;
+ CPoint point (0, 0);
+ CPoint offset (1, 0);
+
+ // Delay
+ size (kFaderX, kFaderY,
+ kFaderX + hFaderBody->getWidth (), kFaderY + hFaderBody->getHeight ());
+ delayFader = new CVerticalSlider (size, this, kDelay, minPos, maxPos, hFaderHandle, hFaderBody, point);
+ delayFader->setOffsetHandle (offset);
+ delayFader->setValue (effect->getParameter (kDelay));
+ lFrame->addView (delayFader);
+
+ // FeedBack
+ size.offset (kFaderInc + hFaderBody->getWidth (), 0);
+ feedbackFader = new CVerticalSlider (size, this, kFeedBack, minPos, maxPos, hFaderHandle, hFaderBody, point);
+ feedbackFader->setOffsetHandle (offset);
+ feedbackFader->setValue (effect->getParameter (kFeedBack));
+ lFrame->addView (feedbackFader);
+
+ // Volume
+ size.offset (kFaderInc + hFaderBody->getWidth (), 0);
+ volumeFader = new CVerticalSlider (size, this, kOut, minPos, maxPos, hFaderHandle, hFaderBody, point);
+ volumeFader->setOffsetHandle (offset);
+ volumeFader->setValue (effect->getParameter (kOut));
+ volumeFader->setDefaultValue (0.75f);
+ lFrame->addView (volumeFader);
+
+ //--init the display------------------------------------------------
+ // Delay
+ size (kDisplayX, kDisplayY,
+ kDisplayX + kDisplayXWidth, kDisplayY + kDisplayHeight);
+ delayDisplay = new CParamDisplay (size, 0, kCenterText);
+ delayDisplay->setFont (kNormalFontSmall);
+ delayDisplay->setFontColor (kWhiteCColor);
+ delayDisplay->setBackColor (kBlackCColor);
+ delayDisplay->setFrameColor (kBlueCColor);
+ delayDisplay->setValue (effect->getParameter (kDelay));
+ lFrame->addView (delayDisplay);
+
+ // FeedBack
+ size.offset (kFaderInc + hFaderBody->getWidth (), 0);
+ feedbackDisplay = new CParamDisplay (size, 0, kCenterText);
+ feedbackDisplay->setFont (kNormalFontSmall);
+ feedbackDisplay->setFontColor (kWhiteCColor);
+ feedbackDisplay->setBackColor (kBlackCColor);
+ feedbackDisplay->setFrameColor (kBlueCColor);
+ feedbackDisplay->setValue (effect->getParameter (kFeedBack));
+ feedbackDisplay->setStringConvert (percentStringConvert);
+ lFrame->addView (feedbackDisplay);
+
+ // Volume
+ size.offset (kFaderInc + hFaderBody->getWidth (), 0);
+ volumeDisplay = new CParamDisplay (size, 0, kCenterText);
+ volumeDisplay->setFont (kNormalFontSmall);
+ volumeDisplay->setFontColor (kWhiteCColor);
+ volumeDisplay->setBackColor (kBlackCColor);
+ volumeDisplay->setFrameColor (kBlueCColor);
+ volumeDisplay->setValue (effect->getParameter (kOut));
+ volumeDisplay->setStringConvert (percentStringConvert);
+ lFrame->addView (volumeDisplay);
+
+
+ // Note : in the constructor of a CBitmap, the number of references is set to 1.
+ // Then, each time the bitmap is used (for hinstance in a vertical slider), this
+ // number is incremented.
+ // As a consequence, everything happens as if the constructor by itself was adding
+ // a reference. That's why we need til here a call to forget ().
+ // You mustn't call delete here directly, because the bitmap is used by some CControls...
+ // These "rules" apply to the other VSTGUI objects too.
+ hFaderBody->forget ();
+ hFaderHandle->forget ();
+
+ frame = lFrame;
+ return true;
+}
+
+//-----------------------------------------------------------------------------
+void SDEditor::close ()
+{
+ delete frame;
+ frame = 0;
+}
+
+//-----------------------------------------------------------------------------
+void SDEditor::setParameter (VstInt32 index, float value)
+{
+ if (frame == 0)
+ return;
+
+ // called from ADelayEdit
+ switch (index)
+ {
+ case kDelay:
+ if (delayFader)
+ delayFader->setValue (effect->getParameter (index));
+ if (delayDisplay)
+ delayDisplay->setValue (effect->getParameter (index));
+ break;
+
+ case kFeedBack:
+ if (feedbackFader)
+ feedbackFader->setValue (effect->getParameter (index));
+ if (feedbackDisplay)
+ feedbackDisplay->setValue (effect->getParameter (index));
+ break;
+
+ case kOut:
+ if (volumeFader)
+ volumeFader->setValue (effect->getParameter (index));
+ if (volumeDisplay)
+ volumeDisplay->setValue (effect->getParameter (index));
+ break;
+ }
+}
+
+//-----------------------------------------------------------------------------
+void SDEditor::valueChanged (CDrawContext* context, CControl* control)
+{
+ long tag = control->getTag ();
+ switch (tag)
+ {
+ case kDelay:
+ case kFeedBack:
+ case kOut:
+ effect->setParameterAutomated (tag, control->getValue ());
+ control->setDirty ();
+ break;
+ }
+}
+
+//-----------------------------------------------------------------------------
+//-----------------------------------------------------------------------------
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/sdeditor.h b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/sdeditor.h
new file mode 100644
index 0000000..abe427a
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/editor/sdeditor.h
@@ -0,0 +1,51 @@
+//-------------------------------------------------------------------------------------------------------
+// VST Plug-Ins SDK
+// Version 2.4 $Date: 2006/11/13 09:08:28 $
+//
+// Category : VST 2.x SDK Samples
+// Filename : sdeditor.h
+// Created by : Steinberg Media Technologies
+// Description : Simple Surround Delay plugin with Editor using VSTGUI
+//
+// © 2006, Steinberg Media Technologies, All Rights Reserved
+//-------------------------------------------------------------------------------------------------------
+
+#ifndef __sdeditor__
+#define __sdeditor__
+
+
+// include VSTGUI
+#ifndef __vstgui__
+#include "vstgui.sf/vstgui/vstgui.h"
+#endif
+
+
+//-----------------------------------------------------------------------------
+class SDEditor : public AEffGUIEditor, public CControlListener
+{
+public:
+ SDEditor (AudioEffect* effect);
+ virtual ~SDEditor ();
+
+public:
+ virtual bool open (void* ptr);
+ virtual void close ();
+
+ virtual void setParameter (VstInt32 index, float value);
+ virtual void valueChanged (CDrawContext* context, CControl* control);
+
+private:
+ // Controls
+ CVerticalSlider* delayFader;
+ CVerticalSlider* feedbackFader;
+ CVerticalSlider* volumeFader;
+
+ CParamDisplay* delayDisplay;
+ CParamDisplay* feedbackDisplay;
+ CParamDisplay* volumeDisplay;
+
+ // Bitmap
+ CBitmap* hBackground;
+};
+
+#endif
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/surrounddelay.cpp b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/surrounddelay.cpp
new file mode 100644
index 0000000..d8c5a99
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/surrounddelay.cpp
@@ -0,0 +1,172 @@
+//-------------------------------------------------------------------------------------------------------
+// VST Plug-Ins SDK
+// Version 2.4 $Date: 2006/11/13 09:08:27 $
+//
+// Category : VST 2.x SDK Samples
+// Filename : surrounddelay.cpp
+// Created by : Steinberg Media Technologies
+// Description : Simple Surround Delay plugin with Editor using VSTGUI
+//
+// © 2006, Steinberg Media Technologies, All Rights Reserved
+//-------------------------------------------------------------------------------------------------------
+
+#ifndef __surrounddelay__
+#include "surrounddelay.h"
+#endif
+
+#ifndef __sdeditor__
+#include "editor/sdeditor.h"
+#endif
+
+#include <string.h>
+#include <stdio.h>
+
+//-------------------------------------------------------------------------------------------------------
+AudioEffect* createEffectInstance (audioMasterCallback audioMaster)
+{
+ return new SurroundDelay (audioMaster);
+}
+
+//-----------------------------------------------------------------------------
+SurroundDelay::SurroundDelay (audioMasterCallback audioMaster)
+: ADelay (audioMaster)
+, plugInput (0)
+, plugOutput (0)
+{
+
+ // The first buffer is allocated in ADelay's constructor
+ for (int i = 1; i < MAX_CHANNELS; i++)
+ {
+ sBuffers[i] = new float[size];
+ }
+
+ setNumInputs (MAX_CHANNELS);
+ setNumOutputs (MAX_CHANNELS);
+
+ // We initialize the arrangements to default values.
+ // Nevertheless, the host should modify them via
+ // appropriate calls to setSpeakerArrangement.
+ allocateArrangement (&plugInput, MAX_CHANNELS);
+ plugInput->type = kSpeakerArr51;
+
+ allocateArrangement (&plugOutput, MAX_CHANNELS);
+ plugOutput->type = kSpeakerArr51;
+
+ setUniqueID ('SDlE'); // this should be unique, use the Steinberg web page for plugin Id registration
+
+ // create the editor
+ editor = new SDEditor (this);
+
+ resume ();
+}
+
+//-----------------------------------------------------------------------------
+SurroundDelay::~SurroundDelay ()
+{
+ sBuffers[0] = 0;
+ // We let ~ADelay delete "buffer"...
+ for (int i = 1; i < MAX_CHANNELS; i++)
+ {
+ if (sBuffers[i])
+ {
+ delete[] sBuffers[i];
+ }
+ sBuffers[i] = 0;
+ }
+
+ deallocateArrangement (&plugInput);
+ deallocateArrangement (&plugOutput);
+}
+
+//------------------------------------------------------------------------
+void SurroundDelay::resume ()
+{
+ memset (buffer, 0, size * sizeof (float));
+ sBuffers[0] = buffer;
+
+ for (int i = 1; i < MAX_CHANNELS; i++)
+ {
+ memset (sBuffers[i], 0, size * sizeof (float));
+ }
+}
+
+//------------------------------------------------------------------------
+bool SurroundDelay::getSpeakerArrangement (VstSpeakerArrangement** pluginInput, VstSpeakerArrangement** pluginOutput)
+{
+ *pluginInput = plugInput;
+ *pluginOutput = plugOutput;
+ return true;
+}
+
+//------------------------------------------------------------------------
+bool SurroundDelay::setSpeakerArrangement (VstSpeakerArrangement* pluginInput,
+ VstSpeakerArrangement* pluginOutput)
+{
+ if (!pluginOutput || !pluginInput)
+ return false;
+
+ bool result = true;
+
+ // This plug-in can act on any speaker arrangement,
+ // provided that there are the same number of inputs/outputs.
+ if (pluginInput->numChannels > MAX_CHANNELS)
+ {
+ // This plug-in can't have so many channels. So we answer
+ // false, and we set the input arrangement with the maximum
+ // number of channels possible
+ result = false;
+ allocateArrangement (&plugInput, MAX_CHANNELS);
+ plugInput->type = kSpeakerArr51;
+ }
+ else
+ {
+ matchArrangement (&plugInput, pluginInput);
+ }
+
+ if (pluginOutput->numChannels != plugInput->numChannels)
+ {
+ // This plug-in only deals with symetric IO configurations...
+ result = false;
+ matchArrangement (&plugOutput, plugInput);
+ }
+ else
+ {
+ matchArrangement (&plugOutput, pluginOutput);
+ }
+
+ return result;
+}
+
+//------------------------------------------------------------------------
+void SurroundDelay::processReplacing (float** inputs, float** outputs, VstInt32 sampleframes)
+{
+ float* inputs2[1];
+ float* outputs2[2];
+
+ outputs2[1] = NULL;
+
+ long cursorTemp = cursor;
+
+ for (int i = 0; i < plugInput->numChannels; i++)
+ {
+ cursor = cursorTemp;
+
+ buffer = sBuffers[i];
+
+ inputs2[0] = inputs[i];
+ outputs2[0] = outputs[i];
+
+ ADelay::processReplacing (inputs2, outputs2, sampleframes);
+ }
+
+ buffer = sBuffers[0];
+}
+
+//-----------------------------------------------------------------------------
+void SurroundDelay::setParameter (VstInt32 index, float value)
+{
+ ADelay::setParameter (index, value);
+
+ if (editor)
+ ((AEffGUIEditor*)editor)->setParameter (index, value);
+}
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/surrounddelay.h b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/surrounddelay.h
new file mode 100644
index 0000000..f8412b9
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/surrounddelay.h
@@ -0,0 +1,54 @@
+//-------------------------------------------------------------------------------------------------------
+// VST Plug-Ins SDK
+// Version 2.4 $Date: 2006/11/13 09:08:27 $
+//
+// Category : VST 2.x SDK Samples
+// Filename : surrounddelay.h
+// Created by : Steinberg Media Technologies
+// Description : Simple Surround Delay plugin with Editor using VSTGUI
+//
+// © 2006, Steinberg Media Technologies, All Rights Reserved
+//-------------------------------------------------------------------------------------------------------
+
+#ifndef __surrounddelay__
+#define __surrounddelay__
+
+#ifndef __adelay__
+#include "adelay.h"
+#endif
+
+#define MAX_CHANNELS 6 // maximun number of channel
+
+//------------------------------------------------------------------------
+// SurroundDelay declaration
+//------------------------------------------------------------------------
+class SurroundDelay : public ADelay
+{
+public:
+ SurroundDelay (audioMasterCallback audioMaster);
+ ~SurroundDelay ();
+
+ virtual void processReplacing (float** inputs, float** outputs, VstInt32 sampleframes);
+
+ void setParameter (VstInt32 index, float value);
+
+ // functions VST version 2
+ virtual bool getVendorString (char* text) { if (text) strcpy (text, "Steinberg"); return true; }
+ virtual bool getProductString (char* text) { if (text) strcpy (text, "SDelay"); return true; }
+ virtual VstInt32 getVendorVersion () { return 1000; }
+
+ virtual VstPlugCategory getPlugCategory () { return kPlugSurroundFx; }
+
+ virtual bool getSpeakerArrangement (VstSpeakerArrangement** pluginInput, VstSpeakerArrangement** pluginOutput);
+ virtual bool setSpeakerArrangement (VstSpeakerArrangement* pluginInput, VstSpeakerArrangement* pluginOutput);
+
+ virtual void resume ();
+
+private:
+ VstSpeakerArrangement* plugInput;
+ VstSpeakerArrangement* plugOutput;
+
+ float* sBuffers[MAX_CHANNELS];
+};
+
+#endif
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/win/adelay.vcproj b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/win/adelay.vcproj
new file mode 100644
index 0000000..3391506
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/win/adelay.vcproj
@@ -0,0 +1,400 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="8,00"
+ Name="adelay"
+ ProjectGUID="{6503B2E8-BC8D-4D80-809C-D43694296419}"
+ RootNamespace="adelay"
+ Keyword="Win32Proj"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ <Platform
+ Name="x64"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../../../.."
+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;ADELAY_EXPORTS;_CRT_SECURE_NO_DEPRECATE=1"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ LinkIncremental="2"
+ ModuleDefinitionFile="../../win/vstplug.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="../../../../.."
+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;ADELAY_EXPORTS;_CRT_SECURE_NO_DEPRECATE=1"
+ RuntimeLibrary="0"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ LinkIncremental="1"
+ ModuleDefinitionFile="../../win/vstplug.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Debug|x64"
+ OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ TargetEnvironment="3"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../../../.."
+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;ADELAY_EXPORTS;_CRT_SECURE_NO_DEPRECATE=1"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ LinkIncremental="2"
+ ModuleDefinitionFile="../../win/vstplug.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ TargetMachine="17"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|x64"
+ OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ TargetEnvironment="3"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="../../../../.."
+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;ADELAY_EXPORTS;_CRT_SECURE_NO_DEPRECATE=1"
+ RuntimeLibrary="0"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ LinkIncremental="1"
+ ModuleDefinitionFile="../../win/vstplug.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="17"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath="..\adelay.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\adelay.h"
+ >
+ </File>
+ <File
+ RelativePath="..\adelaymain.cpp"
+ >
+ </File>
+ <Filter
+ Name="vst2.x"
+ >
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\aeffeditor.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\audioeffect.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\audioeffect.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\audioeffectx.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\audioeffectx.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\vstplugmain.cpp"
+ >
+ </File>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="Interfaces"
+ >
+ <File
+ RelativePath="..\..\..\..\..\pluginterfaces\vst2.x\aeffect.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\pluginterfaces\vst2.x\aeffectx.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\pluginterfaces\vst2.x\vstfxstore.h"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
diff --git a/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/win/surrounddelay.vcproj b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/win/surrounddelay.vcproj
new file mode 100644
index 0000000..194bc12
--- /dev/null
+++ b/vendor/vstsdk2.4/public.sdk/samples/vst2.x/adelay/win/surrounddelay.vcproj
@@ -0,0 +1,444 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="8,00"
+ Name="surrounddelay"
+ ProjectGUID="{29898D14-EB2A-41D4-A530-728821929A0D}"
+ RootNamespace="surrounddelay"
+ Keyword="Win32Proj"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ <Platform
+ Name="x64"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../../../..;..\..\..\..\vstgui;..\..\..\..\..\public.sdk\source\vst2.x"
+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;SURROUNDDELAY_EXPORTS;_CRT_SECURE_NO_DEPRECATE=1"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ LinkIncremental="2"
+ ModuleDefinitionFile="../../win/vstplug.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="../../../../..;..\..\..\..\..\public.sdk\source\vst2.x;..\..\..\..\vstgui"
+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;SURROUNDDELAY_EXPORTS;_CRT_SECURE_NO_DEPRECATE=1"
+ RuntimeLibrary="0"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ LinkIncremental="1"
+ ModuleDefinitionFile="../../win/vstplug.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Debug|x64"
+ OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ TargetEnvironment="3"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../../../..;..\..\..\..\vstgui;..\..\..\..\..\public.sdk\source\vst2.x"
+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;SURROUNDDELAY_EXPORTS;_CRT_SECURE_NO_DEPRECATE=1"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ LinkIncremental="2"
+ ModuleDefinitionFile="../../win/vstplug.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ TargetMachine="17"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|x64"
+ OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="0"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ TargetEnvironment="3"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="../../../../..;..\..\..\..\..\public.sdk\source\vst2.x;..\..\..\..\vstgui"
+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;SURROUNDDELAY_EXPORTS;_CRT_SECURE_NO_DEPRECATE=1"
+ RuntimeLibrary="0"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ LinkIncremental="1"
+ ModuleDefinitionFile="../../win/vstplug.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="17"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath="..\adelay.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\adelay.h"
+ >
+ </File>
+ <File
+ RelativePath="..\editor\sdeditor.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\editor\sdeditor.h"
+ >
+ </File>
+ <File
+ RelativePath="..\surrounddelay.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\surrounddelay.h"
+ >
+ </File>
+ <File
+ RelativePath="..\editor\resources\surrounddelay.rc"
+ >
+ </File>
+ <Filter
+ Name="vst2.x"
+ >
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\aeffeditor.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\audioeffect.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\audioeffect.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\audioeffectx.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\audioeffectx.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\source\vst2.x\vstplugmain.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="vstgui"
+ >
+ <File
+ RelativePath="..\..\..\..\..\vstgui.sf\vstgui\aeffguieditor.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\vstgui.sf\vstgui\aeffguieditor.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\vstgui.sf\vstgui\vstcontrols.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\vstgui.sf\vstgui\vstcontrols.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\vstgui.sf\vstgui\vstgui.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\vstgui.sf\vstgui\vstgui.h"
+ >
+ </File>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="Interfaces"
+ >
+ <File
+ RelativePath="..\..\..\..\..\pluginterfaces\vst2.x\aeffect.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\pluginterfaces\vst2.x\aeffectx.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\pluginterfaces\vst2.x\vstfxstore.h"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>