changeset 67:fa66ee7dcf08

VC build projects and fixes therefore. Interestingly the alloca() calls I'm replacing were all wrong
author Chris Cannam
date Wed, 07 Feb 2018 17:54:27 +0000
parents 63d6776904df
children b75124ebe697
files .hgignore TestDefaults.cpp TestInitialise.cpp TestMultipleRuns.cpp TestOutputs.cpp build/Makefile.mingw32 build/vamp-plugin-tester.sln build/vamp-plugin-tester.vcxproj
diffstat 8 files changed, 237 insertions(+), 68 deletions(-) [+]
line wrap: on
line diff
--- a/.hgignore	Tue Jun 20 15:09:00 2017 +0100
+++ b/.hgignore	Wed Feb 07 17:54:27 2018 +0000
@@ -5,3 +5,10 @@
 *.dll
 *.exe
 vamp-plugin-tester
+build/Release
+build/x64/Release
+build/Debug
+build/x64/Debug
+*.VC.db
+*.VC.opendb
+*.filters
--- a/TestDefaults.cpp	Tue Jun 20 15:09:00 2017 +0100
+++ b/TestDefaults.cpp	Wed Feb 07 17:54:27 2018 +0000
@@ -48,10 +48,6 @@
 #include <cmath>
 #include <time.h>
 
-#ifndef __GNUC__
-#include <alloca.h>
-#endif
-
 Tester::TestRegistrar<TestDefaultProgram>
 TestDefaultProgram::m_registrar("E1", "Inconsistent default program");
 
@@ -82,15 +78,12 @@
         if (!initAdapted(p.get(), channels, _step, _step, r)) return r;
         if (!data) data = createTestAudio(channels, _step, count);
         for (size_t i = 0; i < count; ++i) {
-#ifdef __GNUC__
-            float *ptr[channels];
-#else
-            float **ptr = (float **)alloca(channels * sizeof(float));
-#endif
+            float **ptr = new float *[channels];
             size_t idx = i * _step;
             for (size_t c = 0; c < channels; ++c) ptr[c] = data[c] + idx;
             RealTime timestamp = RealTime::frame2RealTime(idx, rate);
             Plugin::FeatureSet fs = p->process(ptr, timestamp);
+            delete[] ptr;
             appendFeatures(f[run], fs);
         }
         Plugin::FeatureSet fs = p->getRemainingFeatures();
@@ -142,15 +135,12 @@
         if (!initAdapted(p.get(), channels, _step, _step, r)) return r;
         if (!data) data = createTestAudio(channels, _step, count);
         for (size_t i = 0; i < count; ++i) {
-#ifdef __GNUC__
-            float *ptr[channels];
-#else
-            float **ptr = (float **)alloca(channels * sizeof(float));
-#endif
+            float **ptr = new float *[channels];
             size_t idx = i * _step;
             for (size_t c = 0; c < channels; ++c) ptr[c] = data[c] + idx;
             RealTime timestamp = RealTime::frame2RealTime(idx, rate);
             Plugin::FeatureSet fs = p->process(ptr, timestamp);
+            delete[] ptr;
             appendFeatures(f[run], fs);
         }
         Plugin::FeatureSet fs = p->getRemainingFeatures();
@@ -256,15 +246,12 @@
 
         if (!data) data = createTestAudio(channels, _step, count);
         for (size_t i = 0; i < count; ++i) {
-#ifdef __GNUC__
-            float *ptr[channels];
-#else
-            float **ptr = (float **)alloca(channels * sizeof(float));
-#endif
+            float **ptr = new float *[channels];
             size_t idx = i * _step;
             for (size_t c = 0; c < channels; ++c) ptr[c] = data[c] + idx;
             RealTime timestamp = RealTime::frame2RealTime(idx, rate);
             Plugin::FeatureSet fs = p->process(ptr, timestamp);
+            delete[] ptr;
             appendFeatures(f[run], fs);
         }
         Plugin::FeatureSet fs = p->getRemainingFeatures();
--- a/TestInitialise.cpp	Tue Jun 20 15:09:00 2017 +0100
+++ b/TestInitialise.cpp	Wed Feb 07 17:54:27 2018 +0000
@@ -51,10 +51,6 @@
 #include <cmath>
 #include <ctime>
 
-#ifndef __GNUC__
-#include <alloca.h>
-#endif
-
 Tester::TestRegistrar<TestSampleRates>
 TestSampleRates::m_registrar("F1", "Different sample rates");
 
@@ -105,15 +101,12 @@
 
         data = createTestAudio(channels, step, count);
         for (size_t j = 0; j < count; ++j) {
-#ifdef __GNUC__
-            float *ptr[channels];
-#else
-            float **ptr = (float **)alloca(channels * sizeof(float));
-#endif
+            float **ptr = new float *[channels];
             size_t idx = j * step;
             for (size_t c = 0; c < channels; ++c) ptr[c] = data[c] + idx;
             RealTime timestamp = RealTime::frame2RealTime(idx, rate);
             Plugin::FeatureSet fs = p->process(ptr, timestamp);
+            delete[] ptr;
             appendFeatures(f, fs);
         }
         Plugin::FeatureSet fs = p->getRemainingFeatures();
--- a/TestMultipleRuns.cpp	Tue Jun 20 15:09:00 2017 +0100
+++ b/TestMultipleRuns.cpp	Wed Feb 07 17:54:27 2018 +0000
@@ -47,10 +47,6 @@
 
 #include <cmath>
 
-#ifndef __GNUC__
-#include <alloca.h>
-#endif
-
 Tester::TestRegistrar<TestDistinctRuns>
 TestDistinctRuns::m_registrar("D1", "Consecutive runs with separate instances");
 
@@ -80,15 +76,12 @@
         if (!initAdapted(p.get(), channels, _step, _step, r)) return r;
         if (!data) data = createTestAudio(channels, _step, count);
         for (size_t i = 0; i < count; ++i) {
-#ifdef __GNUC__
-            float *ptr[channels];
-#else
-            float **ptr = (float **)alloca(channels * sizeof(float));
-#endif
+            float **ptr = new float *[channels];
             size_t idx = i * _step;
             for (size_t c = 0; c < channels; ++c) ptr[c] = data[c] + idx;
             RealTime timestamp = RealTime::frame2RealTime(idx, rate);
             Plugin::FeatureSet fs = p->process(ptr, timestamp);
+            delete[] ptr;
             appendFeatures(f[run], fs);
         }
         Plugin::FeatureSet fs = p->getRemainingFeatures();
@@ -127,15 +120,12 @@
         else if (!initAdapted(p.get(), channels, _step, _step, r)) return r;
         if (!data) data = createTestAudio(channels, _step, count);
         for (size_t i = 0; i < count; ++i) {
-#ifdef __GNUC__
-            float *ptr[channels];
-#else
-            float **ptr = (float **)alloca(channels * sizeof(float));
-#endif
+            float **ptr = new float *[channels];
             size_t idx = i * _step;
             for (size_t c = 0; c < channels; ++c) ptr[c] = data[c] + idx;
             RealTime timestamp = RealTime::frame2RealTime(idx, rate);
             Plugin::FeatureSet fs = p->process(ptr, timestamp);
+            delete[] ptr;
             appendFeatures(f[run], fs);
         }
         Plugin::FeatureSet fs = p->getRemainingFeatures();
@@ -178,11 +168,7 @@
         if (!data) data = createTestAudio(channels, _step, count);
     }
     for (size_t i = 0; i < count; ++i) {
-#ifdef __GNUC__
-        float *ptr[channels];
-#else
-        float **ptr = (float **)alloca(channels * sizeof(float));
-#endif
+        float **ptr = new float *[channels];
         size_t idx = i * _step;
         for (size_t c = 0; c < channels; ++c) ptr[c] = data[c] + idx;
         RealTime timestamp = RealTime::frame2RealTime(idx, rate);
@@ -190,6 +176,7 @@
             Plugin::FeatureSet fs = p[run]->process(ptr, timestamp);
             appendFeatures(f[run], fs);
         }
+        delete[] ptr;
     }
     for (int run = 0; run < 2; ++run) {
         Plugin::FeatureSet fs = p[run]->getRemainingFeatures();
@@ -228,16 +215,13 @@
         if (!initAdapted(p.get(), channels, _step, _step, r)) return r;
         if (!data) data = createTestAudio(channels, _step, count);
         for (size_t i = 0; i < count; ++i) {
-#ifdef __GNUC__
-            float *ptr[channels];
-#else
-            float **ptr = (float **)alloca(channels * sizeof(float));
-#endif
+            float **ptr = new float *[channels];
             size_t idx = i * _step;
             for (size_t c = 0; c < channels; ++c) ptr[c] = data[c] + idx;
             RealTime timestamp = RealTime::frame2RealTime(idx, rate);
             if (run == 1) timestamp = timestamp + RealTime::fromSeconds(10);
             Plugin::FeatureSet fs = p->process(ptr, timestamp);
+            delete[] ptr;
             appendFeatures(f[run], fs);
         }
         Plugin::FeatureSet fs = p->getRemainingFeatures();
--- a/TestOutputs.cpp	Tue Jun 20 15:09:00 2017 +0100
+++ b/TestOutputs.cpp	Wed Feb 07 17:54:27 2018 +0000
@@ -50,10 +50,6 @@
 
 #include <cmath>
 
-#ifndef __GNUC__
-#include <alloca.h>
-#endif
-
 Tester::TestRegistrar<TestOutputNumbers>
 TestOutputNumbers::m_registrar("B1", "Output number mismatching");
 
@@ -76,15 +72,12 @@
     if (!initAdapted(p.get(), channels, _step, _step, r)) return r;
     if (!data) data = createTestAudio(channels, _step, count);
     for (size_t i = 0; i < count; ++i) {
-#ifdef __GNUC__
-        float *ptr[channels];
-#else
-        float **ptr = (float **)alloca(channels * sizeof(float));
-#endif
+        float **ptr = new float *[channels];
         size_t idx = i * _step;
         for (size_t c = 0; c < channels; ++c) ptr[c] = data[c] + idx;
         RealTime timestamp = RealTime::frame2RealTime(idx, rate);
         Plugin::FeatureSet fs = p->process(ptr, timestamp);
+        delete[] ptr;
         appendFeatures(f, fs);
     }
     Plugin::FeatureSet fs = p->getRemainingFeatures();
@@ -140,15 +133,12 @@
 
     if (!data) data = createTestAudio(channels, block, count);
     for (size_t i = 0; i < count; ++i) {
-#ifdef __GNUC__
-        float *ptr[channels];
-#else
-        float **ptr = (float **)alloca(channels * sizeof(float));
-#endif
+        float **ptr = new float *[channels];
         size_t idx = i * step;
         for (size_t c = 0; c < channels; ++c) ptr[c] = data[c] + idx;
         RealTime timestamp = RealTime::frame2RealTime(idx, rate);
         Plugin::FeatureSet fs = p->process(ptr, timestamp);
+        delete[] ptr;
         appendFeatures(f, fs);
     }
     Plugin::FeatureSet fs = p->getRemainingFeatures();
--- a/build/Makefile.mingw32	Tue Jun 20 15:09:00 2017 +0100
+++ b/build/Makefile.mingw32	Wed Feb 07 17:54:27 2018 +0000
@@ -6,8 +6,8 @@
 AR		= $(TOOLPREFIX)ar
 RANLIB		= $(TOOLPREFIX)ranlib
 
-LDFLAGS 	+= -static -L../vamp-plugin-sdk -lvamp-hostsdk
-CXXFLAGS	+= -I../vamp-plugin-sdk -g -Wall -Wextra 
+LDFLAGS 	+= -static -L../vamp-plugin-sdk -lvamp-hostsdk -std=gnu++98
+CXXFLAGS	+= -I../vamp-plugin-sdk -g -Wall -Wextra -std=gnu++98
 
 OBJECTS		:= vamp-plugin-tester.o Tester.o Test.o TestStaticData.o TestInputExtremes.o TestMultipleRuns.o TestOutputs.o TestDefaults.o TestInitialise.o
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build/vamp-plugin-tester.sln	Wed Feb 07 17:54:27 2018 +0000
@@ -0,0 +1,28 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vamp-plugin-tester", "vamp-plugin-tester.vcxproj", "{5E60958F-4DFC-4F22-B592-381749F60CFF}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|x64 = Debug|x64
+		Debug|x86 = Debug|x86
+		Release|x64 = Release|x64
+		Release|x86 = Release|x86
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{5E60958F-4DFC-4F22-B592-381749F60CFF}.Debug|x64.ActiveCfg = Debug|x64
+		{5E60958F-4DFC-4F22-B592-381749F60CFF}.Debug|x64.Build.0 = Debug|x64
+		{5E60958F-4DFC-4F22-B592-381749F60CFF}.Debug|x86.ActiveCfg = Debug|Win32
+		{5E60958F-4DFC-4F22-B592-381749F60CFF}.Debug|x86.Build.0 = Debug|Win32
+		{5E60958F-4DFC-4F22-B592-381749F60CFF}.Release|x64.ActiveCfg = Release|x64
+		{5E60958F-4DFC-4F22-B592-381749F60CFF}.Release|x64.Build.0 = Release|x64
+		{5E60958F-4DFC-4F22-B592-381749F60CFF}.Release|x86.ActiveCfg = Release|Win32
+		{5E60958F-4DFC-4F22-B592-381749F60CFF}.Release|x86.Build.0 = Release|Win32
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+EndGlobal
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build/vamp-plugin-tester.vcxproj	Wed Feb 07 17:54:27 2018 +0000
@@ -0,0 +1,180 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{5E60958F-4DFC-4F22-B592-381749F60CFF}</ProjectGuid>
+    <Keyword>Win32Proj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <LinkIncremental>true</LinkIncremental>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <LinkIncremental>true</LinkIncremental>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+      <Optimization>Disabled</Optimization>
+    </ClCompile>
+    <Link>
+      <TargetMachine>MachineX86</TargetMachine>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_USE_MATH_DEFINES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+      <AdditionalIncludeDirectories>C:\Users\Chris\Documents\vamp-plugin-tester\vamp-plugin-sdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <TargetMachine>MachineX86</TargetMachine>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <AdditionalIncludeDirectories>C:\Users\Chris\Documents\vamp-plugin-tester\vamp-plugin-sdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_USE_MATH_DEFINES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="..\Test.cpp" />
+    <ClCompile Include="..\TestDefaults.cpp" />
+    <ClCompile Include="..\Tester.cpp" />
+    <ClCompile Include="..\TestInitialise.cpp" />
+    <ClCompile Include="..\TestInputExtremes.cpp" />
+    <ClCompile Include="..\TestMultipleRuns.cpp" />
+    <ClCompile Include="..\TestOutputs.cpp" />
+    <ClCompile Include="..\TestStaticData.cpp" />
+    <ClCompile Include="..\vamp-plugin-sdk\src\vamp-hostsdk\Files.cpp" />
+    <ClCompile Include="..\vamp-plugin-sdk\src\vamp-hostsdk\PluginBufferingAdapter.cpp" />
+    <ClCompile Include="..\vamp-plugin-sdk\src\vamp-hostsdk\PluginChannelAdapter.cpp" />
+    <ClCompile Include="..\vamp-plugin-sdk\src\vamp-hostsdk\PluginHostAdapter.cpp" />
+    <ClCompile Include="..\vamp-plugin-sdk\src\vamp-hostsdk\PluginInputDomainAdapter.cpp" />
+    <ClCompile Include="..\vamp-plugin-sdk\src\vamp-hostsdk\PluginLoader.cpp" />
+    <ClCompile Include="..\vamp-plugin-sdk\src\vamp-hostsdk\PluginSummarisingAdapter.cpp" />
+    <ClCompile Include="..\vamp-plugin-sdk\src\vamp-hostsdk\PluginWrapper.cpp" />
+    <ClCompile Include="..\vamp-plugin-sdk\src\vamp-hostsdk\RealTime.cpp" />
+    <ClCompile Include="..\vamp-plugin-sdk\src\vamp-sdk\FFT.cpp" />
+    <ClCompile Include="..\vamp-plugin-tester.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\Test.h" />
+    <ClInclude Include="..\TestDefaults.h" />
+    <ClInclude Include="..\Tester.h" />
+    <ClInclude Include="..\TestInitialise.h" />
+    <ClInclude Include="..\TestInputExtremes.h" />
+    <ClInclude Include="..\TestMultipleRuns.h" />
+    <ClInclude Include="..\TestOutputs.h" />
+    <ClInclude Include="..\TestStaticData.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\examples\AmplitudeFollower.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\examples\FixedTempoEstimator.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\examples\PercussionOnsetDetector.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\examples\PowerSpectrum.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\examples\SpectralCentroid.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\examples\ZeroCrossing.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\host\system.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\skeleton\MyPlugin.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\src\vamp-hostsdk\Files.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\src\vamp-hostsdk\Window.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\src\vamp-sdk\ext\kiss_fft.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\src\vamp-sdk\ext\kiss_fftr.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\src\vamp-sdk\ext\_kiss_fft_guts.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\host-c.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\hostguard.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\Plugin.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\PluginBase.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\PluginBufferingAdapter.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\PluginChannelAdapter.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\PluginHostAdapter.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\PluginInputDomainAdapter.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\PluginLoader.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\PluginSummarisingAdapter.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\PluginWrapper.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\RealTime.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-hostsdk\vamp-hostsdk.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-sdk\FFT.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-sdk\plugguard.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-sdk\Plugin.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-sdk\PluginAdapter.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-sdk\PluginBase.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-sdk\RealTime.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp-sdk\vamp-sdk.h" />
+    <ClInclude Include="..\vamp-plugin-sdk\vamp\vamp.h" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="..\vamp-plugin-sdk\rdf\doc\glance.htm" />
+    <None Include="..\vamp-plugin-sdk\rdf\doc\vamp.html" />
+    <None Include="..\vamp-plugin-sdk\skeleton\Makefile.inc" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file