diff --git a/extras/audio plugin host/build/mac/PluginHost.xcodeproj/project.pbxproj b/extras/audio plugin host/build/mac/PluginHost.xcodeproj/project.pbxproj index b0f390f380..cf20302b8f 100644 --- a/extras/audio plugin host/build/mac/PluginHost.xcodeproj/project.pbxproj +++ b/extras/audio plugin host/build/mac/PluginHost.xcodeproj/project.pbxproj @@ -7,40 +7,48 @@ objects = { /* Begin PBXBuildFile section */ - 8411682E0CBBEE0500232E45 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8411682D0CBBEE0500232E45 /* OpenGL.framework */; }; - 84CF14390CD6367800A8D756 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84CF14380CD6367800A8D756 /* AudioUnit.framework */; }; + 84B59D6D0DE34F530041FA3D /* juce_LibrarySource.mm in Sources */ = {isa = PBXBuildFile; fileRef = 84B59D6C0DE34F530041FA3D /* juce_LibrarySource.mm */; }; + 84C0A38F0DE2D5C700606895 /* AGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A3810DE2D5C700606895 /* AGL.framework */; }; + 84C0A3900DE2D5C700606895 /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A3820DE2D5C700606895 /* ApplicationServices.framework */; }; + 84C0A3910DE2D5C700606895 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A3830DE2D5C700606895 /* AudioUnit.framework */; }; + 84C0A3920DE2D5C700606895 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A3840DE2D5C700606895 /* Carbon.framework */; }; + 84C0A3930DE2D5C700606895 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A3850DE2D5C700606895 /* Cocoa.framework */; }; + 84C0A3940DE2D5C700606895 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A3860DE2D5C700606895 /* CoreAudio.framework */; }; + 84C0A3950DE2D5C700606895 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A3870DE2D5C700606895 /* CoreFoundation.framework */; }; + 84C0A3960DE2D5C700606895 /* CoreMIDI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A3880DE2D5C700606895 /* CoreMIDI.framework */; }; + 84C0A3970DE2D5C700606895 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A3890DE2D5C700606895 /* CoreServices.framework */; }; + 84C0A3980DE2D5C700606895 /* DiscRecording.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A38A0DE2D5C700606895 /* DiscRecording.framework */; }; + 84C0A3990DE2D5C700606895 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A38B0DE2D5C700606895 /* IOKit.framework */; }; + 84C0A39A0DE2D5C700606895 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A38C0DE2D5C700606895 /* OpenGL.framework */; }; + 84C0A39B0DE2D5C700606895 /* QuickTime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A38D0DE2D5C700606895 /* QuickTime.framework */; }; + 84C0A39C0DE2D5C700606895 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84C0A38E0DE2D5C700606895 /* WebKit.framework */; }; 84FC4CD90CD8894600850651 /* juce.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 84FC4CD80CD8894600850651 /* juce.xcconfig */; }; 84FFAEAC0C6C8A6F009F6E72 /* FilterGraph.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84FFAE920C6C8A6F009F6E72 /* FilterGraph.cpp */; }; 84FFAEAD0C6C8A6F009F6E72 /* GraphEditorPanel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84FFAE940C6C8A6F009F6E72 /* GraphEditorPanel.cpp */; }; 84FFAEAE0C6C8A6F009F6E72 /* InternalFilters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84FFAE960C6C8A6F009F6E72 /* InternalFilters.cpp */; }; 84FFAEAF0C6C8A6F009F6E72 /* MainHostWindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84FFAE980C6C8A6F009F6E72 /* MainHostWindow.cpp */; }; 84FFAEB00C6C8A6F009F6E72 /* HostStartup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84FFAE9A0C6C8A6F009F6E72 /* HostStartup.cpp */; }; - 84FFAEFE0C6C8E80009F6E72 /* libjucedebug.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 84FFAEFC0C6C8E76009F6E72 /* libjucedebug.a */; }; - 84FFAF040C6C8ED5009F6E72 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84FFAEFF0C6C8ED5009F6E72 /* CoreAudio.framework */; }; - 84FFAF050C6C8ED5009F6E72 /* CoreMIDI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84FFAF000C6C8ED5009F6E72 /* CoreMIDI.framework */; }; - 84FFAF060C6C8ED5009F6E72 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84FFAF010C6C8ED5009F6E72 /* IOKit.framework */; }; - 84FFAF080C6C8ED5009F6E72 /* QuickTime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84FFAF030C6C8ED5009F6E72 /* QuickTime.framework */; }; - 84FFAF150C6C8EE8009F6E72 /* AGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84FFAF140C6C8EE8009F6E72 /* AGL.framework */; }; - 8D0C4E920486CD37000505A6 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 20286C33FDCF999611CA2CEA /* Carbon.framework */; }; /* End PBXBuildFile section */ -/* Begin PBXContainerItemProxy section */ - 84FFAEFB0C6C8E76009F6E72 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 84FFAEF70C6C8E76009F6E72 /* Juce.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = D2AAC046055464E500DB518D; - remoteInfo = Juce; - }; -/* End PBXContainerItemProxy section */ - /* Begin PBXFileReference section */ - 20286C33FDCF999611CA2CEA /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = ""; }; - 4A9504C8FFE6A3BC11CA0CBA /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = /System/Library/Frameworks/ApplicationServices.framework; sourceTree = ""; }; - 4A9504CAFFE6A41611CA0CBA /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = ""; }; - 508344B209E5C41E0093A071 /* Juce Plugin Host.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = "Juce Plugin Host.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - 8411682D0CBBEE0500232E45 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = ""; }; - 84CF14380CD6367800A8D756 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = ""; }; + 508344B209E5C41E0093A071 /* Juce Plugin Host.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Juce Plugin Host.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 84B59D6A0DE34F530041FA3D /* includes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = includes.h; path = ../../src/includes.h; sourceTree = SOURCE_ROOT; }; + 84B59D6B0DE34F530041FA3D /* juce_AppConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = juce_AppConfig.h; path = ../../src/juce_AppConfig.h; sourceTree = SOURCE_ROOT; }; + 84B59D6C0DE34F530041FA3D /* juce_LibrarySource.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = juce_LibrarySource.mm; path = ../../src/juce_LibrarySource.mm; sourceTree = SOURCE_ROOT; }; + 84C0A3810DE2D5C700606895 /* AGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AGL.framework; path = /System/Library/Frameworks/AGL.framework; sourceTree = ""; }; + 84C0A3820DE2D5C700606895 /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = /System/Library/Frameworks/ApplicationServices.framework; sourceTree = ""; }; + 84C0A3830DE2D5C700606895 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = ""; }; + 84C0A3840DE2D5C700606895 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = ""; }; + 84C0A3850DE2D5C700606895 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 84C0A3860DE2D5C700606895 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = ""; }; + 84C0A3870DE2D5C700606895 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = ""; }; + 84C0A3880DE2D5C700606895 /* CoreMIDI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = /System/Library/Frameworks/CoreMIDI.framework; sourceTree = ""; }; + 84C0A3890DE2D5C700606895 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = ""; }; + 84C0A38A0DE2D5C700606895 /* DiscRecording.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiscRecording.framework; path = /System/Library/Frameworks/DiscRecording.framework; sourceTree = ""; }; + 84C0A38B0DE2D5C700606895 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = ""; }; + 84C0A38C0DE2D5C700606895 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = ""; }; + 84C0A38D0DE2D5C700606895 /* QuickTime.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickTime.framework; path = /System/Library/Frameworks/QuickTime.framework; sourceTree = ""; }; + 84C0A38E0DE2D5C700606895 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = /System/Library/Frameworks/WebKit.framework; sourceTree = ""; }; 84FC4CD80CD8894600850651 /* juce.xcconfig */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.xcconfig; name = juce.xcconfig; path = ../../../../build/macosx/juce.xcconfig; sourceTree = SOURCE_ROOT; }; 84FFAE920C6C8A6F009F6E72 /* FilterGraph.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = FilterGraph.cpp; path = ../../src/host/FilterGraph.cpp; sourceTree = SOURCE_ROOT; }; 84FFAE930C6C8A6F009F6E72 /* FilterGraph.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = FilterGraph.h; path = ../../src/host/FilterGraph.h; sourceTree = SOURCE_ROOT; }; @@ -51,12 +59,6 @@ 84FFAE980C6C8A6F009F6E72 /* MainHostWindow.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = MainHostWindow.cpp; path = ../../src/host/MainHostWindow.cpp; sourceTree = SOURCE_ROOT; }; 84FFAE990C6C8A6F009F6E72 /* MainHostWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MainHostWindow.h; path = ../../src/host/MainHostWindow.h; sourceTree = SOURCE_ROOT; }; 84FFAE9A0C6C8A6F009F6E72 /* HostStartup.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = HostStartup.cpp; path = ../../src/HostStartup.cpp; sourceTree = SOURCE_ROOT; }; - 84FFAEF70C6C8E76009F6E72 /* Juce.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Juce.xcodeproj; path = ../../../../build/macosx/Juce.xcodeproj; sourceTree = SOURCE_ROOT; }; - 84FFAEFF0C6C8ED5009F6E72 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = ""; }; - 84FFAF000C6C8ED5009F6E72 /* CoreMIDI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = /System/Library/Frameworks/CoreMIDI.framework; sourceTree = ""; }; - 84FFAF010C6C8ED5009F6E72 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = ""; }; - 84FFAF030C6C8ED5009F6E72 /* QuickTime.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickTime.framework; path = /System/Library/Frameworks/QuickTime.framework; sourceTree = ""; }; - 84FFAF140C6C8EE8009F6E72 /* AGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AGL.framework; path = /System/Library/Frameworks/AGL.framework; sourceTree = ""; }; 8D0C4E960486CD37000505A6 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Info.plist; sourceTree = ""; }; /* End PBXFileReference section */ @@ -65,15 +67,20 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 84FFAEFE0C6C8E80009F6E72 /* libjucedebug.a in Frameworks */, - 8D0C4E920486CD37000505A6 /* Carbon.framework in Frameworks */, - 84FFAF040C6C8ED5009F6E72 /* CoreAudio.framework in Frameworks */, - 84FFAF050C6C8ED5009F6E72 /* CoreMIDI.framework in Frameworks */, - 84FFAF060C6C8ED5009F6E72 /* IOKit.framework in Frameworks */, - 84FFAF080C6C8ED5009F6E72 /* QuickTime.framework in Frameworks */, - 84FFAF150C6C8EE8009F6E72 /* AGL.framework in Frameworks */, - 8411682E0CBBEE0500232E45 /* OpenGL.framework in Frameworks */, - 84CF14390CD6367800A8D756 /* AudioUnit.framework in Frameworks */, + 84C0A38F0DE2D5C700606895 /* AGL.framework in Frameworks */, + 84C0A3900DE2D5C700606895 /* ApplicationServices.framework in Frameworks */, + 84C0A3910DE2D5C700606895 /* AudioUnit.framework in Frameworks */, + 84C0A3920DE2D5C700606895 /* Carbon.framework in Frameworks */, + 84C0A3930DE2D5C700606895 /* Cocoa.framework in Frameworks */, + 84C0A3940DE2D5C700606895 /* CoreAudio.framework in Frameworks */, + 84C0A3950DE2D5C700606895 /* CoreFoundation.framework in Frameworks */, + 84C0A3960DE2D5C700606895 /* CoreMIDI.framework in Frameworks */, + 84C0A3970DE2D5C700606895 /* CoreServices.framework in Frameworks */, + 84C0A3980DE2D5C700606895 /* DiscRecording.framework in Frameworks */, + 84C0A3990DE2D5C700606895 /* IOKit.framework in Frameworks */, + 84C0A39A0DE2D5C700606895 /* OpenGL.framework in Frameworks */, + 84C0A39B0DE2D5C700606895 /* QuickTime.framework in Frameworks */, + 84C0A39C0DE2D5C700606895 /* WebKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -111,6 +118,9 @@ 84FFAE980C6C8A6F009F6E72 /* MainHostWindow.cpp */, 84FFAE990C6C8A6F009F6E72 /* MainHostWindow.h */, 84FFAE9A0C6C8A6F009F6E72 /* HostStartup.cpp */, + 84B59D6B0DE34F530041FA3D /* juce_AppConfig.h */, + 84B59D6A0DE34F530041FA3D /* includes.h */, + 84B59D6C0DE34F530041FA3D /* juce_LibrarySource.mm */, 84FC4CD80CD8894600850651 /* juce.xcconfig */, ); name = Sources; @@ -127,29 +137,24 @@ 20286C32FDCF999611CA2CEA /* External Frameworks and Libraries */ = { isa = PBXGroup; children = ( - 84CF14380CD6367800A8D756 /* AudioUnit.framework */, - 8411682D0CBBEE0500232E45 /* OpenGL.framework */, - 84FFAF140C6C8EE8009F6E72 /* AGL.framework */, - 84FFAEFF0C6C8ED5009F6E72 /* CoreAudio.framework */, - 84FFAF000C6C8ED5009F6E72 /* CoreMIDI.framework */, - 84FFAF010C6C8ED5009F6E72 /* IOKit.framework */, - 84FFAF030C6C8ED5009F6E72 /* QuickTime.framework */, - 84FFAEF70C6C8E76009F6E72 /* Juce.xcodeproj */, - 20286C33FDCF999611CA2CEA /* Carbon.framework */, - 4A9504CAFFE6A41611CA0CBA /* CoreServices.framework */, - 4A9504C8FFE6A3BC11CA0CBA /* ApplicationServices.framework */, + 84C0A3810DE2D5C700606895 /* AGL.framework */, + 84C0A3820DE2D5C700606895 /* ApplicationServices.framework */, + 84C0A3830DE2D5C700606895 /* AudioUnit.framework */, + 84C0A3840DE2D5C700606895 /* Carbon.framework */, + 84C0A3850DE2D5C700606895 /* Cocoa.framework */, + 84C0A3860DE2D5C700606895 /* CoreAudio.framework */, + 84C0A3870DE2D5C700606895 /* CoreFoundation.framework */, + 84C0A3880DE2D5C700606895 /* CoreMIDI.framework */, + 84C0A3890DE2D5C700606895 /* CoreServices.framework */, + 84C0A38A0DE2D5C700606895 /* DiscRecording.framework */, + 84C0A38B0DE2D5C700606895 /* IOKit.framework */, + 84C0A38C0DE2D5C700606895 /* OpenGL.framework */, + 84C0A38D0DE2D5C700606895 /* QuickTime.framework */, + 84C0A38E0DE2D5C700606895 /* WebKit.framework */, ); name = "External Frameworks and Libraries"; sourceTree = ""; }; - 84FFAEF80C6C8E76009F6E72 /* Products */ = { - isa = PBXGroup; - children = ( - 84FFAEFC0C6C8E76009F6E72 /* libjucedebug.a */, - ); - name = Products; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -177,31 +182,17 @@ 20286C28FDCF999611CA2CEA /* Project object */ = { isa = PBXProject; buildConfigurationList = C0E91AC908A95435008D54AB /* Build configuration list for PBXProject "PluginHost" */; + compatibilityVersion = "Xcode 2.4"; hasScannedForEncodings = 1; mainGroup = 20286C29FDCF999611CA2CEA /* PluginHost */; projectDirPath = ""; - projectReferences = ( - { - ProductGroup = 84FFAEF80C6C8E76009F6E72 /* Products */; - ProjectRef = 84FFAEF70C6C8E76009F6E72 /* Juce.xcodeproj */; - }, - ); + projectRoot = ""; targets = ( 8D0C4E890486CD37000505A6 /* PluginHost */, ); }; /* End PBXProject section */ -/* Begin PBXReferenceProxy section */ - 84FFAEFC0C6C8E76009F6E72 /* libjucedebug.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libjucedebug.a; - remoteRef = 84FFAEFB0C6C8E76009F6E72 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; -/* End PBXReferenceProxy section */ - /* Begin PBXResourcesBuildPhase section */ 8D0C4E8C0486CD37000505A6 /* Resources */ = { isa = PBXResourcesBuildPhase; @@ -223,6 +214,7 @@ 84FFAEAE0C6C8A6F009F6E72 /* InternalFilters.cpp in Sources */, 84FFAEAF0C6C8A6F009F6E72 /* MainHostWindow.cpp in Sources */, 84FFAEB00C6C8A6F009F6E72 /* HostStartup.cpp in Sources */, + 84B59D6D0DE34F530041FA3D /* juce_LibrarySource.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/extras/audio plugin host/build/win32/PluginHost.vcproj b/extras/audio plugin host/build/win32/PluginHost.vcproj index 7f28f01a36..7979cc5c5c 100644 --- a/extras/audio plugin host/build/win32/PluginHost.vcproj +++ b/extras/audio plugin host/build/win32/PluginHost.vcproj @@ -178,6 +178,18 @@ RelativePath="..\..\src\HostStartup.cpp" > + + + + + + diff --git a/extras/audio plugin host/src/HostStartup.cpp b/extras/audio plugin host/src/HostStartup.cpp index 22074515f7..7bcb493ff2 100644 --- a/extras/audio plugin host/src/HostStartup.cpp +++ b/extras/audio plugin host/src/HostStartup.cpp @@ -29,7 +29,7 @@ ============================================================================== */ -#include "../../../juce.h" +#include "includes.h" #include "host/MainHostWindow.h" #include "host/InternalFilters.h" diff --git a/extras/audio plugin host/src/host/FilterGraph.cpp b/extras/audio plugin host/src/host/FilterGraph.cpp index a9b119419e..fd42248c6c 100644 --- a/extras/audio plugin host/src/host/FilterGraph.cpp +++ b/extras/audio plugin host/src/host/FilterGraph.cpp @@ -29,7 +29,7 @@ ============================================================================== */ -#include "../../../../juce.h" +#include "../includes.h" #include "FilterGraph.h" #include "InternalFilters.h" #include "GraphEditorPanel.h" diff --git a/extras/audio plugin host/src/host/FilterGraph.h b/extras/audio plugin host/src/host/FilterGraph.h index 3b8e05b3d1..39cff0d9e0 100644 --- a/extras/audio plugin host/src/host/FilterGraph.h +++ b/extras/audio plugin host/src/host/FilterGraph.h @@ -1,283 +1,282 @@ -/* - ============================================================================== - - This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-7 by Raw Material Software ltd. - - ------------------------------------------------------------------------------ - - JUCE can be redistributed and/or modified under the terms of the - GNU General Public License, as published by the Free Software Foundation; - either version 2 of the License, or (at your option) any later version. - - JUCE is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with JUCE; if not, visit www.gnu.org/licenses or write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - ------------------------------------------------------------------------------ - - If you'd like to release a closed-source product which uses JUCE, commercial - licenses are also available: visit www.rawmaterialsoftware.com/juce for - more information. - - ============================================================================== -*/ - -#ifndef __JUCE_FILTERGRAPH_JUCEHEADER__ -#define __JUCE_FILTERGRAPH_JUCEHEADER__ - -class FilterInGraph; -class FilterGraph; - -const char* const filenameSuffix = ".filtergraph"; -const char* const filenameWildcard = "*.filtergraph"; - - -//============================================================================== -/** - Represents a connection between two pins in a FilterGraph. -*/ -class FilterConnection -{ -public: - //============================================================================== - FilterConnection (FilterGraph& owner); - FilterConnection (const FilterConnection& other); - ~FilterConnection(); - - //============================================================================== - uint32 sourceFilterID; - int sourceChannel; - uint32 destFilterID; - int destChannel; - - //============================================================================== - juce_UseDebuggingNewOperator - -private: - FilterGraph& owner; - - const FilterConnection& operator= (const FilterConnection&); -}; - - -//============================================================================== -/** - Represents one of the filters in a FilterGraph. -*/ -/*class FilterInGraph : public ReferenceCountedObject -{ -public: - //============================================================================== - FilterInGraph (FilterGraph& owner, AudioPluginInstance* const plugin); - ~FilterInGraph(); - - //============================================================================== - AudioPluginInstance* const filter; - uint32 uid; - - //============================================================================== - void showUI (bool useGenericUI); - - double getX() const throw() { return x; } - double getY() const throw() { return y; } - void setPosition (double x, double y) throw(); - - XmlElement* createXml() const; - - static FilterInGraph* createForDescription (FilterGraph& owner, - const PluginDescription& desc, - String& errorMessage); - - static FilterInGraph* createFromXml (FilterGraph& owner, const XmlElement& xml); - - //============================================================================== - typedef ReferenceCountedObjectPtr Ptr; - - //============================================================================== - juce_UseDebuggingNewOperator - -private: - friend class FilterGraphPlayer; - FilterGraph& owner; - double x, y; - - friend class PluginWindow; - Component* activeUI; - Component* activeGenericUI; - int lastX, lastY; - - MidiBuffer outputMidi; - AudioSampleBuffer processedAudio; - MidiBuffer processedMidi; - - void prepareBuffers (int blockSize); - void renderBlock (int numSamples, - const ReferenceCountedArray & filters, - const OwnedArray & connections); - - FilterInGraph (const FilterInGraph&); - const FilterInGraph& operator= (const FilterInGraph&); -}; -*/ - -//============================================================================== -/** - A collection of filters and some connections between them. -*/ -class FilterGraph : public FileBasedDocument -{ -public: - //============================================================================== - FilterGraph(); - ~FilterGraph(); - - //============================================================================== - AudioProcessorGraph& getGraph() throw() { return graph; } - - int getNumFilters() const throw(); - const AudioProcessorGraph::Node::Ptr getNode (const int index) const throw(); - const AudioProcessorGraph::Node::Ptr getNodeForId (const uint32 uid) const throw(); - - void addFilter (const PluginDescription* desc, double x, double y); - - void removeFilter (const uint32 filterUID); - void disconnectFilter (const uint32 filterUID); - - void removeIllegalConnections(); - - void setNodePosition (const int nodeId, double x, double y); - void getNodePosition (const int nodeId, double& x, double& y) const; - - //============================================================================== - int getNumConnections() const throw(); - const AudioProcessorGraph::Connection* getConnection (const int index) const throw(); - - const AudioProcessorGraph::Connection* getConnectionBetween (uint32 sourceFilterUID, int sourceFilterChannel, - uint32 destFilterUID, int destFilterChannel) const throw(); - - bool canConnect (uint32 sourceFilterUID, int sourceFilterChannel, - uint32 destFilterUID, int destFilterChannel) const throw(); - - bool addConnection (uint32 sourceFilterUID, int sourceFilterChannel, - uint32 destFilterUID, int destFilterChannel); - - void removeConnection (const int index); - - void removeConnection (uint32 sourceFilterUID, int sourceFilterChannel, - uint32 destFilterUID, int destFilterChannel); - - void clear(); - - - //============================================================================== - - XmlElement* createXml() const; - void restoreFromXml (const XmlElement& xml); - - //============================================================================== - const String getDocumentTitle(); - const String loadDocument (const File& file); - const String saveDocument (const File& file); - const File getLastDocumentOpened(); - void setLastDocumentOpened (const File& file); - - /** The special channel index used to refer to a filter's midi channel. - */ - static const int midiChannelNumber; - - //============================================================================== - juce_UseDebuggingNewOperator - -private: - //friend class FilterGraphPlayer; - //ReferenceCountedArray filters; - //OwnedArray connections; - - AudioProcessorGraph graph; - AudioProcessorPlayer player; - - uint32 lastUID; - uint32 getNextUID() throw(); - - void createNodeFromXml (const XmlElement& xml); - - FilterGraph (const FilterGraph&); - const FilterGraph& operator= (const FilterGraph&); -}; - - -//============================================================================== -/** - -*/ -/*class FilterGraphPlayer : public AudioIODeviceCallback, - public MidiInputCallback, - public ChangeListener - -{ -public: - //============================================================================== - FilterGraphPlayer (FilterGraph& graph); - ~FilterGraphPlayer(); - - //============================================================================== - void setAudioDeviceManager (AudioDeviceManager* dm); - AudioDeviceManager* getAudioDeviceManager() const throw() { return deviceManager; } - - //============================================================================== - void audioDeviceIOCallback (const float** inputChannelData, - int totalNumInputChannels, - float** outputChannelData, - int totalNumOutputChannels, - int numSamples); - void audioDeviceAboutToStart (double sampleRate, int numSamplesPerBlock); - void audioDeviceStopped(); - - void handleIncomingMidiMessage (MidiInput* source, const MidiMessage& message); - - void changeListenerCallback (void*); - - //============================================================================== - static int compareElements (FilterInGraph* const first, FilterInGraph* const second) throw(); - - const float** inputChannelData; - int totalNumInputChannels; - float** outputChannelData; - int totalNumOutputChannels; - MidiBuffer incomingMidi; - - MidiKeyboardState keyState; - MidiMessageCollector messageCollector; - - //============================================================================== - class PlayerAwareFilter - { - public: - virtual void setPlayer (FilterGraphPlayer* newPlayer) = 0; - }; - -private: - FilterGraph& graph; - CriticalSection processLock; - double sampleRate; - int blockSize; - AudioDeviceManager* deviceManager; - - ReferenceCountedArray filters; - OwnedArray connections; - - void update(); - - FilterGraphPlayer (const FilterGraphPlayer&); - const FilterGraphPlayer& operator= (const FilterGraphPlayer&); -}; -*/ - -#endif +/* + ============================================================================== + + This file is part of the JUCE library - "Jules' Utility Class Extensions" + Copyright 2004-7 by Raw Material Software ltd. + + ------------------------------------------------------------------------------ + + JUCE can be redistributed and/or modified under the terms of the + GNU General Public License, as published by the Free Software Foundation; + either version 2 of the License, or (at your option) any later version. + + JUCE is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with JUCE; if not, visit www.gnu.org/licenses or write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + ------------------------------------------------------------------------------ + + If you'd like to release a closed-source product which uses JUCE, commercial + licenses are also available: visit www.rawmaterialsoftware.com/juce for + more information. + + ============================================================================== +*/ + +#ifndef __JUCE_FILTERGRAPH_JUCEHEADER__ +#define __JUCE_FILTERGRAPH_JUCEHEADER__ + +class FilterInGraph; +class FilterGraph; + +const char* const filenameSuffix = ".filtergraph"; +const char* const filenameWildcard = "*.filtergraph"; + +//============================================================================== +/** + Represents a connection between two pins in a FilterGraph. +*/ +class FilterConnection +{ +public: + //============================================================================== + FilterConnection (FilterGraph& owner); + FilterConnection (const FilterConnection& other); + ~FilterConnection(); + + //============================================================================== + uint32 sourceFilterID; + int sourceChannel; + uint32 destFilterID; + int destChannel; + + //============================================================================== + juce_UseDebuggingNewOperator + +private: + FilterGraph& owner; + + const FilterConnection& operator= (const FilterConnection&); +}; + + +//============================================================================== +/** + Represents one of the filters in a FilterGraph. +*/ +/*class FilterInGraph : public ReferenceCountedObject +{ +public: + //============================================================================== + FilterInGraph (FilterGraph& owner, AudioPluginInstance* const plugin); + ~FilterInGraph(); + + //============================================================================== + AudioPluginInstance* const filter; + uint32 uid; + + //============================================================================== + void showUI (bool useGenericUI); + + double getX() const throw() { return x; } + double getY() const throw() { return y; } + void setPosition (double x, double y) throw(); + + XmlElement* createXml() const; + + static FilterInGraph* createForDescription (FilterGraph& owner, + const PluginDescription& desc, + String& errorMessage); + + static FilterInGraph* createFromXml (FilterGraph& owner, const XmlElement& xml); + + //============================================================================== + typedef ReferenceCountedObjectPtr Ptr; + + //============================================================================== + juce_UseDebuggingNewOperator + +private: + friend class FilterGraphPlayer; + FilterGraph& owner; + double x, y; + + friend class PluginWindow; + Component* activeUI; + Component* activeGenericUI; + int lastX, lastY; + + MidiBuffer outputMidi; + AudioSampleBuffer processedAudio; + MidiBuffer processedMidi; + + void prepareBuffers (int blockSize); + void renderBlock (int numSamples, + const ReferenceCountedArray & filters, + const OwnedArray & connections); + + FilterInGraph (const FilterInGraph&); + const FilterInGraph& operator= (const FilterInGraph&); +}; +*/ + +//============================================================================== +/** + A collection of filters and some connections between them. +*/ +class FilterGraph : public FileBasedDocument +{ +public: + //============================================================================== + FilterGraph(); + ~FilterGraph(); + + //============================================================================== + AudioProcessorGraph& getGraph() throw() { return graph; } + + int getNumFilters() const throw(); + const AudioProcessorGraph::Node::Ptr getNode (const int index) const throw(); + const AudioProcessorGraph::Node::Ptr getNodeForId (const uint32 uid) const throw(); + + void addFilter (const PluginDescription* desc, double x, double y); + + void removeFilter (const uint32 filterUID); + void disconnectFilter (const uint32 filterUID); + + void removeIllegalConnections(); + + void setNodePosition (const int nodeId, double x, double y); + void getNodePosition (const int nodeId, double& x, double& y) const; + + //============================================================================== + int getNumConnections() const throw(); + const AudioProcessorGraph::Connection* getConnection (const int index) const throw(); + + const AudioProcessorGraph::Connection* getConnectionBetween (uint32 sourceFilterUID, int sourceFilterChannel, + uint32 destFilterUID, int destFilterChannel) const throw(); + + bool canConnect (uint32 sourceFilterUID, int sourceFilterChannel, + uint32 destFilterUID, int destFilterChannel) const throw(); + + bool addConnection (uint32 sourceFilterUID, int sourceFilterChannel, + uint32 destFilterUID, int destFilterChannel); + + void removeConnection (const int index); + + void removeConnection (uint32 sourceFilterUID, int sourceFilterChannel, + uint32 destFilterUID, int destFilterChannel); + + void clear(); + + + //============================================================================== + + XmlElement* createXml() const; + void restoreFromXml (const XmlElement& xml); + + //============================================================================== + const String getDocumentTitle(); + const String loadDocument (const File& file); + const String saveDocument (const File& file); + const File getLastDocumentOpened(); + void setLastDocumentOpened (const File& file); + + /** The special channel index used to refer to a filter's midi channel. + */ + static const int midiChannelNumber; + + //============================================================================== + juce_UseDebuggingNewOperator + +private: + //friend class FilterGraphPlayer; + //ReferenceCountedArray filters; + //OwnedArray connections; + + AudioProcessorGraph graph; + AudioProcessorPlayer player; + + uint32 lastUID; + uint32 getNextUID() throw(); + + void createNodeFromXml (const XmlElement& xml); + + FilterGraph (const FilterGraph&); + const FilterGraph& operator= (const FilterGraph&); +}; + + +//============================================================================== +/** + +*/ +/*class FilterGraphPlayer : public AudioIODeviceCallback, + public MidiInputCallback, + public ChangeListener + +{ +public: + //============================================================================== + FilterGraphPlayer (FilterGraph& graph); + ~FilterGraphPlayer(); + + //============================================================================== + void setAudioDeviceManager (AudioDeviceManager* dm); + AudioDeviceManager* getAudioDeviceManager() const throw() { return deviceManager; } + + //============================================================================== + void audioDeviceIOCallback (const float** inputChannelData, + int totalNumInputChannels, + float** outputChannelData, + int totalNumOutputChannels, + int numSamples); + void audioDeviceAboutToStart (double sampleRate, int numSamplesPerBlock); + void audioDeviceStopped(); + + void handleIncomingMidiMessage (MidiInput* source, const MidiMessage& message); + + void changeListenerCallback (void*); + + //============================================================================== + static int compareElements (FilterInGraph* const first, FilterInGraph* const second) throw(); + + const float** inputChannelData; + int totalNumInputChannels; + float** outputChannelData; + int totalNumOutputChannels; + MidiBuffer incomingMidi; + + MidiKeyboardState keyState; + MidiMessageCollector messageCollector; + + //============================================================================== + class PlayerAwareFilter + { + public: + virtual void setPlayer (FilterGraphPlayer* newPlayer) = 0; + }; + +private: + FilterGraph& graph; + CriticalSection processLock; + double sampleRate; + int blockSize; + AudioDeviceManager* deviceManager; + + ReferenceCountedArray filters; + OwnedArray connections; + + void update(); + + FilterGraphPlayer (const FilterGraphPlayer&); + const FilterGraphPlayer& operator= (const FilterGraphPlayer&); +}; +*/ + +#endif diff --git a/extras/audio plugin host/src/host/GraphEditorPanel.cpp b/extras/audio plugin host/src/host/GraphEditorPanel.cpp index 0b890156ec..a689d5c9b0 100644 --- a/extras/audio plugin host/src/host/GraphEditorPanel.cpp +++ b/extras/audio plugin host/src/host/GraphEditorPanel.cpp @@ -29,7 +29,7 @@ ============================================================================== */ -#include "../../../../juce.h" +#include "../includes.h" #include "GraphEditorPanel.h" #include "InternalFilters.h" #include "MainHostWindow.h" diff --git a/extras/audio plugin host/src/host/InternalFilters.cpp b/extras/audio plugin host/src/host/InternalFilters.cpp index e51213f4a8..4118781814 100644 --- a/extras/audio plugin host/src/host/InternalFilters.cpp +++ b/extras/audio plugin host/src/host/InternalFilters.cpp @@ -29,7 +29,7 @@ ============================================================================== */ -#include "../../../../juce.h" +#include "../includes.h" #include "InternalFilters.h" #include "FilterGraph.h" diff --git a/extras/audio plugin host/src/host/MainHostWindow.cpp b/extras/audio plugin host/src/host/MainHostWindow.cpp index 780c952026..fe179ce5e1 100644 --- a/extras/audio plugin host/src/host/MainHostWindow.cpp +++ b/extras/audio plugin host/src/host/MainHostWindow.cpp @@ -29,7 +29,7 @@ ============================================================================== */ -#include "../../../../juce.h" +#include "../includes.h" #include "MainHostWindow.h" #include "InternalFilters.h" diff --git a/extras/audio plugin host/src/includes.h b/extras/audio plugin host/src/includes.h new file mode 100644 index 0000000000..d35aa3458d --- /dev/null +++ b/extras/audio plugin host/src/includes.h @@ -0,0 +1,4 @@ + +#include "juce_AppConfig.h" +#include "../../../juce_amalgamated.h" +using juce::uint32; diff --git a/extras/audio plugin host/src/juce_AppConfig.h b/extras/audio plugin host/src/juce_AppConfig.h new file mode 100644 index 0000000000..9a885f3b51 --- /dev/null +++ b/extras/audio plugin host/src/juce_AppConfig.h @@ -0,0 +1,58 @@ +/* + ============================================================================== + + This file is part of the JUCE library - "Jules' Utility Class Extensions" + Copyright 2004-7 by Raw Material Software ltd. + + ------------------------------------------------------------------------------ + + JUCE can be redistributed and/or modified under the terms of the + GNU General Public License, as published by the Free Software Foundation; + either version 2 of the License, or (at your option) any later version. + + JUCE is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with JUCE; if not, visit www.gnu.org/licenses or write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + ------------------------------------------------------------------------------ + + If you'd like to release a closed-source product which uses JUCE, commercial + licenses are also available: visit www.rawmaterialsoftware.com/juce for + more information. + + ============================================================================== +*/ + +/* + This file contains settings that you might want to explicitly apply to + the your build. + + Most of these are turned on or off by default, but you can override + that setting here by un-commenting it and giving it a 1 or 0 value. +*/ + +#define JUCE_PLUGINHOST_VST 1 +#define JUCE_PLUGINHOST_AU 1 +//#define JUCE_ONLY_BUILD_CORE_LIBRARY 1 +//#define JUCE_FORCE_DEBUG 1 +//#define JUCE_LOG_ASSERTIONS 1 +//#define JUCE_ASIO 1 +//#define JUCE_ALSA 1 +//#define JUCE_QUICKTIME 1 +//#define JUCE_OPENGL 1 +//#define JUCE_USE_FLAC 1 +//#define JUCE_USE_OGGVORBIS 1 +//#define JUCE_USE_CDBURNER 1 +//#define JUCE_ENABLE_REPAINT_DEBUGGING 1 +//#define JUCE_USE_XINERAMA 1 +//#define JUCE_USE_XSHM 1 +//#define JUCE_BUILD_GUI_CLASSES 1 +//#define JUCE_CHECK_MEMORY_LEAKS 1 +//#define JUCE_CATCH_UNHANDLED_EXCEPTIONS 1 +//#define JUCE_STRINGS_ARE_UNICODE 1 diff --git a/extras/audio plugin host/src/juce_LibrarySource.cpp b/extras/audio plugin host/src/juce_LibrarySource.cpp new file mode 100644 index 0000000000..ab4357598c --- /dev/null +++ b/extras/audio plugin host/src/juce_LibrarySource.cpp @@ -0,0 +1,12 @@ + +/* + This file includes the entire juce source tree via the amalgamated file. + + You could add the amalgamated file directly to your project, but doing it + like this allows you to put your app's config settings in the + juce_AppConfig.h file and have them applied to both the juce headers and + the source code. +*/ + +#include "juce_AppConfig.h" +#include "../../../juce_amalgamated.cpp" diff --git a/extras/audio plugin host/src/juce_LibrarySource.mm b/extras/audio plugin host/src/juce_LibrarySource.mm new file mode 100644 index 0000000000..9493e3c6fc --- /dev/null +++ b/extras/audio plugin host/src/juce_LibrarySource.mm @@ -0,0 +1,12 @@ + +/* + This file includes the entire juce source tree via the amalgamated file. + + You could add the amalgamated file directly to your project, but doing it + like this allows you to put your app's config settings in the + juce_AppConfig.h file and have them applied to both the juce headers and + the source code. +*/ + +#include "juce_AppConfig.h" +#include "../../../juce_amalgamated.mm"