From 77a915e8dbbf44f8e33a7d797b7de978043d8004 Mon Sep 17 00:00:00 2001 From: hellerve Date: Mon, 19 Jun 2017 14:19:29 -0400 Subject: [PATCH] initial --- .gitignore | 2 + Builds/MacOSX/Info-AU.plist | 48 ++ Builds/MacOSX/Info-VST.plist | 29 + Builds/MacOSX/RecentFilesMenuTemplate.nib | Bin 0 -> 2842 bytes Builds/MacOSX/lampshade.entitlements | 8 + .../lampshade.xcodeproj/project.pbxproj | 521 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../UserInterfaceState.xcuserstate | Bin 0 -> 5493 bytes .../xcschemes/lampshade - AU.xcscheme | 80 +++ .../xcschemes/lampshade - All.xcscheme | 80 +++ .../lampshade - Shared Code.xcscheme | 80 +++ .../xcschemes/lampshade - VST.xcscheme | 80 +++ .../xcschemes/xcschememanagement.plist | 52 ++ Source/PluginEditor.cpp | 43 ++ Source/PluginEditor.h | 36 ++ Source/PluginProcessor.cpp | 178 ++++++ Source/PluginProcessor.h | 61 ++ lampshade.jucer | 65 +++ 18 files changed, 1370 insertions(+) create mode 100644 .gitignore create mode 100644 Builds/MacOSX/Info-AU.plist create mode 100644 Builds/MacOSX/Info-VST.plist create mode 100644 Builds/MacOSX/RecentFilesMenuTemplate.nib create mode 100644 Builds/MacOSX/lampshade.entitlements create mode 100644 Builds/MacOSX/lampshade.xcodeproj/project.pbxproj create mode 100644 Builds/MacOSX/lampshade.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 Builds/MacOSX/lampshade.xcodeproj/project.xcworkspace/xcuserdata/veitheller.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - AU.xcscheme create mode 100644 Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - All.xcscheme create mode 100644 Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - Shared Code.xcscheme create mode 100644 Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - VST.xcscheme create mode 100644 Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 Source/PluginEditor.cpp create mode 100644 Source/PluginEditor.h create mode 100644 Source/PluginProcessor.cpp create mode 100644 Source/PluginProcessor.h create mode 100644 lampshade.jucer diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e90011b --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +JuceLibraryCode/ +Build/ diff --git a/Builds/MacOSX/Info-AU.plist b/Builds/MacOSX/Info-AU.plist new file mode 100644 index 0000000..074bfd9 --- /dev/null +++ b/Builds/MacOSX/Info-AU.plist @@ -0,0 +1,48 @@ + + + + + + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleName + lampshade + CFBundleDisplayName + lampshade + CFBundlePackageType + BNDL + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0.0 + CFBundleVersion + 1.0.0 + NSHumanReadableCopyright + + NSHighResolutionCapable + + AudioComponents + + + name + yourcompany: lampshade + description + lampshade + factoryFunction + lampshadeAUFactory + manufacturer + Manu + type + aufx + subtype + Rels + version + 65536 + + + + diff --git a/Builds/MacOSX/Info-VST.plist b/Builds/MacOSX/Info-VST.plist new file mode 100644 index 0000000..670de24 --- /dev/null +++ b/Builds/MacOSX/Info-VST.plist @@ -0,0 +1,29 @@ + + + + + + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleName + lampshade + CFBundleDisplayName + lampshade + CFBundlePackageType + BNDL + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0.0 + CFBundleVersion + 1.0.0 + NSHumanReadableCopyright + + NSHighResolutionCapable + + + diff --git a/Builds/MacOSX/RecentFilesMenuTemplate.nib b/Builds/MacOSX/RecentFilesMenuTemplate.nib new file mode 100644 index 0000000000000000000000000000000000000000..cec7f7c72bb7b287e0d493d53b0c487866ed6038 GIT binary patch literal 2842 zcmai03v3kE6}|7xy!Xa&z`M5b4;%lM&tmWg|D6Ew7aQ2M@%n>tur*!}uy{Yt&e%Yj z!V5{9M2(VAB|&M`7EBWqMJYm*Qk147ZPe1JqQtSlrHBH7I0T_IjZ#F@)_t?%Ee=It zN7~t$ckeyto_pVY+c)U<=|*AUI3U0vfeZvFDn(`M9m85!_l1J%9ihIhn%B^~9BSCR z#V203IgHR?JfM+%hit2XfdZM33l3Ne`LGO1p%PYu3*68FouI-XJOW|Z2HRl=JO&&d zhbQ3$coFu%%kV0U!U6axya8{)&*3Qi0*=GG@E)9mKfr1D5GLTya1k!SWw;8Tz^8Bv z#i9%}4`re(l#OywE^?sxXaQP?79l5EjPlSDRDhPXJAy-g|6d>m?t@skA7;U9hyxqg zAs!MS5#~S=Btr_MLK@74bjW~=UYpJB>G0{kKEKxK3-*V$=^NdiW-IkI+77+L?P(2# zjEBWbU%%d=`iC^V!{PO-y1v1BXIcrL+E6ek^b*qPy|%dj#jrejZK-Zgwb!fZ0?Ft1 z89S!ULt$Z^e8-xJWJdjeuiG3r;V~TZa^A$tIOC;!6>sE?VWu%!dWA5EgB)G6@Q+_0~^K?-8y;x)BOkDvSy{=lWhr{ZQ15gGP z;OrD+%}2|n3LfAkKZ6HhIjn${@DNl(4b(y%)I$TTf<|cK_woDrQXa<_@>HJA=kaWw z%k#LC7w~0KMb-)xV!x@vI5dlFT3{Wtf(P25U5Mt=fYA2|)`3%3tXY&QT zh|lV(cB#IgX%)?M5LB%O3Eae3g&<9@V7f2dxg3SVLi^yav z41ga35QI>#&F=Pya@RjH7ukjfz9|JYZG%QTR?|*H}#w^&f>t!FfCQP8jBMcrs6j zn3_={EIo#5XjYir@PtUpTru??h27vh2TuvHM(&X7X(3q6Hza#rv}1K-s|kTTLwx}e zgwGX~pUzw)oz~Xi^J_i2wP+bveH1D9I{3aQ_wzhMR5UGG#l2kF54C*W-6{M)P^c3m zZdYwT&k|jhZYeGBGP|1xwP04O=GB769k93i>@@*=5ccyN0X?5*M#0}S!RvYM-CCt? z2Ivt187Zv*bZn^gYic;l6tLHp)N5AK#I6f@hlC!6ZZ23#AA?^`_tPjG1LxgPW;W!B z88R+vtMB(2XYZ)UOzYpzuwLBJ5DEuW<6a1Vn&Gpgt;45nyO+n=86No^)}a12R)3vg zU)a{D`3Jj&LNm9nIVG=%nNTdYQ$r|dxYVH7W?@UQ3YZ)<2a#2vD)`JCKuO|SK7B<; zkoBA-1~C?h))gH=))S7#_?nj-vc-uQ-!{nby+&CcRH0dsNN6^SLpEeb@hAZ$qB$rD zC8HFSiqggI%~8 zx8N?k2?wx_AHzHGF8mDMi+_w?$A|D?d*2`4pWg6Sed~ARjY?$q3ud*Mq zAF-dX{p<~N5j6 literal 0 HcmV?d00001 diff --git a/Builds/MacOSX/lampshade.entitlements b/Builds/MacOSX/lampshade.entitlements new file mode 100644 index 0000000..852fa1a --- /dev/null +++ b/Builds/MacOSX/lampshade.entitlements @@ -0,0 +1,8 @@ + + + + + com.apple.security.app-sandbox + + + diff --git a/Builds/MacOSX/lampshade.xcodeproj/project.pbxproj b/Builds/MacOSX/lampshade.xcodeproj/project.pbxproj new file mode 100644 index 0000000..071cc88 --- /dev/null +++ b/Builds/MacOSX/lampshade.xcodeproj/project.pbxproj @@ -0,0 +1,521 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + + CEFCC3F01BBBA612DA2CC2E7 = {isa = PBXBuildFile; fileRef = CB5B0D375AF54A8C0E368F0D; }; + 0A46715B5F713B0DE0BE7CB9 = {isa = PBXBuildFile; fileRef = 1B0AC63282540354559C329F; }; + 4383A3BBB78DF223C52E2ADE = {isa = PBXBuildFile; fileRef = 3EAB0DE93476A6919F9F423F; }; + 95136E084F4D0EE088073368 = {isa = PBXBuildFile; fileRef = A3A980F27E3F4D20274B6B78; }; + 81205223BCA9C7BCA1AFB5D6 = {isa = PBXBuildFile; fileRef = D65ACC661F20F0FFF51502A0; }; + A2F84A9190B64E02C6689E13 = {isa = PBXBuildFile; fileRef = EC7E622FD23986ADE0F2FB13; }; + C7BD40100A1492C40C863C00 = {isa = PBXBuildFile; fileRef = C661BBE7D46F20EBA8BD26EA; }; + D547FF226D986130166891BE = {isa = PBXBuildFile; fileRef = 50217C34D2AF48A6D8DD23F9; }; + B9C41F0022A5FA8A2F1989AD = {isa = PBXBuildFile; fileRef = 62A57D5AB67F3F46351829C1; }; + 947489CCF0EB3AA37A15C225 = {isa = PBXBuildFile; fileRef = 914F2A97A0D1C6BD69DEBC84; }; + 899D880FD50AA6167E6E7811 = {isa = PBXBuildFile; fileRef = 4ABCA305FE8545B99FA3CBEF; }; + 57E0D970CCF472AA4F220F1C = {isa = PBXBuildFile; fileRef = 7461C1A5B5565FAE529BF5D0; }; + 3847F684F71D74E88DE20333 = {isa = PBXBuildFile; fileRef = FF176F52120722CB9F8A71E7; }; + AB479A633A1BC7B7671207D3 = {isa = PBXBuildFile; fileRef = 4E284DBE383AC485FA4AF746; }; + 337684517E0AA287F0BCAF91 = {isa = PBXBuildFile; fileRef = 98E3514976D944A5EDF34526; }; + C0ED549D5028C8CC77BBA5CF = {isa = PBXBuildFile; fileRef = 4A5349BB8EC5BA01320D293A; }; + 5793CF50D29C4646E79F50F4 = {isa = PBXBuildFile; fileRef = 53737C6D846C073081CD5C36; }; + 638FF3450BF2CCA07FD80EB8 = {isa = PBXBuildFile; fileRef = CF147BD2FF0E785DBFC2E72F; }; + 259F6DAFA51F28B202BC4CB2 = {isa = PBXBuildFile; fileRef = 357BDFA552B71AD189EB1F06; }; + 6F48A22A014D6B77306A87B4 = {isa = PBXBuildFile; fileRef = E0B41DF091920514733B4BB1; }; + 17B788939D91ACF61B3653F3 = {isa = PBXBuildFile; fileRef = D067F279F2FFF53018E5ADFA; }; + 1401FF52A1CDC9D6B6E63792 = {isa = PBXBuildFile; fileRef = B67080FE154843E938DDC402; }; + 7A618AD9D44431E3B53779F1 = {isa = PBXBuildFile; fileRef = 0ABE7BE59FB299EF65FE7160; }; + 72CB8E05769AF952EF86D36A = {isa = PBXBuildFile; fileRef = 2EE0EDE646913553A09DA3FE; }; + 33BA39AC84FE9B8C874761D9 = {isa = PBXBuildFile; fileRef = 8DE39817C4E152BBEF05075A; }; + 2E7B13B3216BB6D8C6C4BE08 = {isa = PBXBuildFile; fileRef = 5225666E2D7B7D1A1C42B341; }; + C61861F33DE06174BD747B08 = {isa = PBXBuildFile; fileRef = 8ECD100DBD5686BCEC8F3D4E; }; + 606404CB92B5FAB49C887A88 = {isa = PBXBuildFile; fileRef = 96F20252EB056CAAA055E1E2; }; + ACD1181315382066A7F6C53A = {isa = PBXBuildFile; fileRef = FD7ACB75B2B2C64CDCAEDA9B; }; + 547743A1B734172C79900532 = {isa = PBXBuildFile; fileRef = C317417CF0C0FC45A78DC40B; }; + 071AA1EA28BBE654332C90E7 = {isa = PBXBuildFile; fileRef = 6CF987252EE811A5DC534907; }; + 333D7A98D06F0836AD147B3D = {isa = PBXBuildFile; fileRef = CD85F8E6AD4ABF7436B04BC5; }; + 179FD4E00C7B1E197006A963 = {isa = PBXBuildFile; fileRef = B3378FBD237294ABA1F74711; }; + EB0E23396A3118550BB0FB04 = {isa = PBXBuildFile; fileRef = A08B86F9049402D1DF772BE0; }; + C044CD3BB69C14811C127F49 = {isa = PBXBuildFile; fileRef = AEF0F119D7100F7126FDCF2A; }; + F0A2DB6168EF670D6E3D605A = {isa = PBXBuildFile; fileRef = F332D6A326A5372761F1BEA3; }; + 4275CF78B44602BB3F7D379F = {isa = PBXBuildFile; fileRef = 592C9B0EC0FDDB813554C9E9; }; + 86277E48E9E60B7DAADCF653 = {isa = PBXBuildFile; fileRef = D3DC1E4673B36C14C29A3DA0; }; + 52B54D8993F8BFF8B30B71C0 = {isa = PBXBuildFile; fileRef = 0262A05464462DC3DF47A6FF; }; + 0262A05464462DC3DF47A6FF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_video.mm"; path = "../../JuceLibraryCode/include_juce_video.mm"; sourceTree = "SOURCE_ROOT"; }; + 0ABE7BE59FB299EF65FE7160 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_audio_formats.mm"; path = "../../JuceLibraryCode/include_juce_audio_formats.mm"; sourceTree = "SOURCE_ROOT"; }; + CB5B0D375AF54A8C0E368F0D = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = lampshade.vst; sourceTree = "BUILT_PRODUCTS_DIR"; }; + 1B0AC63282540354559C329F = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = lampshade.component; sourceTree = "BUILT_PRODUCTS_DIR"; }; + 1BACA7532065216B613569B7 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_audio_formats"; path = "../../../JUCE/modules/juce_audio_formats"; sourceTree = "SOURCE_ROOT"; }; + 2DDBACA22DAE8B737846B7DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = "SOURCE_ROOT"; }; + 2EE0EDE646913553A09DA3FE = {isa = PBXFileReference; lastKnownFileType = file.r; name = "include_juce_audio_plugin_client_AU.r"; path = "../../JuceLibraryCode/include_juce_audio_plugin_client_AU.r"; sourceTree = "SOURCE_ROOT"; }; + 357BDFA552B71AD189EB1F06 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PluginProcessor.cpp; path = ../../Source/PluginProcessor.cpp; sourceTree = "SOURCE_ROOT"; }; + 369CB5F9FCE495BEE0C0EC9C = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_graphics"; path = "../../../JUCE/modules/juce_graphics"; sourceTree = "SOURCE_ROOT"; }; + 3CE2444CCA5A36275293039C = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_gui_basics"; path = "../../../JUCE/modules/juce_gui_basics"; sourceTree = "SOURCE_ROOT"; }; + 3EAB0DE93476A6919F9F423F = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = liblampshade.a; sourceTree = "BUILT_PRODUCTS_DIR"; }; + 41ACB4B30D94AAC775DB8A87 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PluginEditor.h; path = ../../Source/PluginEditor.h; sourceTree = "SOURCE_ROOT"; }; + 41D175753CA11D3FC51D2EB2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PluginProcessor.h; path = ../../Source/PluginProcessor.h; sourceTree = "SOURCE_ROOT"; }; + 466CE65794F12BC583EECE60 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_video"; path = "../../../JUCE/modules/juce_video"; sourceTree = "SOURCE_ROOT"; }; + 4A5349BB8EC5BA01320D293A = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 4ABCA305FE8545B99FA3CBEF = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudioKit.framework; path = System/Library/Frameworks/CoreAudioKit.framework; sourceTree = SDKROOT; }; + 4E284DBE383AC485FA4AF746 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; + 50217C34D2AF48A6D8DD23F9 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; + 5225666E2D7B7D1A1C42B341 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_audio_plugin_client_AU_2.mm"; path = "../../JuceLibraryCode/include_juce_audio_plugin_client_AU_2.mm"; sourceTree = "SOURCE_ROOT"; }; + 53737C6D846C073081CD5C36 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; + 590D3DAF7E4B2F2651323EBD = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_gui_extra"; path = "../../../JUCE/modules/juce_gui_extra"; sourceTree = "SOURCE_ROOT"; }; + 592C9B0EC0FDDB813554C9E9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_gui_extra.mm"; path = "../../JuceLibraryCode/include_juce_gui_extra.mm"; sourceTree = "SOURCE_ROOT"; }; + 5E4C58D4B40AF70DB0CBED51 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_opengl"; path = "../../../JUCE/modules/juce_opengl"; sourceTree = "SOURCE_ROOT"; }; + 5F3F9DA53DC49F773A1FD7FF = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "Info-VST.plist"; path = "Info-VST.plist"; sourceTree = "SOURCE_ROOT"; }; + 62A57D5AB67F3F46351829C1 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; + 6C6CBB42D4B4FB62A711381E = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_events"; path = "../../../JUCE/modules/juce_events"; sourceTree = "SOURCE_ROOT"; }; + 6CF987252EE811A5DC534907 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_core.mm"; path = "../../JuceLibraryCode/include_juce_core.mm"; sourceTree = "SOURCE_ROOT"; }; + 70B34A152379B947CCFB0310 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_core"; path = "../../../JUCE/modules/juce_core"; sourceTree = "SOURCE_ROOT"; }; + 7461C1A5B5565FAE529BF5D0 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; }; + 79498E91A4D9FACB0DC8A5EF = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_data_structures"; path = "../../../JUCE/modules/juce_data_structures"; sourceTree = "SOURCE_ROOT"; }; + 88FE2452013EFC7416A5807A = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "Info-AU.plist"; path = "Info-AU.plist"; sourceTree = "SOURCE_ROOT"; }; + 8A49567E568761FE65C669AF = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_audio_plugin_client"; path = "../../../JUCE/modules/juce_audio_plugin_client"; sourceTree = "SOURCE_ROOT"; }; + 8DE39817C4E152BBEF05075A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_audio_plugin_client_AU_1.mm"; path = "../../JuceLibraryCode/include_juce_audio_plugin_client_AU_1.mm"; sourceTree = "SOURCE_ROOT"; }; + 8ECD100DBD5686BCEC8F3D4E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "include_juce_audio_plugin_client_utils.cpp"; path = "../../JuceLibraryCode/include_juce_audio_plugin_client_utils.cpp"; sourceTree = "SOURCE_ROOT"; }; + 914F2A97A0D1C6BD69DEBC84 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; + 96F20252EB056CAAA055E1E2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_audio_plugin_client_VST_utils.mm"; path = "../../JuceLibraryCode/include_juce_audio_plugin_client_VST_utils.mm"; sourceTree = "SOURCE_ROOT"; }; + 98E3514976D944A5EDF34526 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; + A08B86F9049402D1DF772BE0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_events.mm"; path = "../../JuceLibraryCode/include_juce_events.mm"; sourceTree = "SOURCE_ROOT"; }; + A3A980F27E3F4D20274B6B78 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = System/Library/Frameworks/Accelerate.framework; sourceTree = SDKROOT; }; + AEF0F119D7100F7126FDCF2A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_graphics.mm"; path = "../../JuceLibraryCode/include_juce_graphics.mm"; sourceTree = "SOURCE_ROOT"; }; + B3378FBD237294ABA1F74711 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_data_structures.mm"; path = "../../JuceLibraryCode/include_juce_data_structures.mm"; sourceTree = "SOURCE_ROOT"; }; + B67080FE154843E938DDC402 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_audio_devices.mm"; path = "../../JuceLibraryCode/include_juce_audio_devices.mm"; sourceTree = "SOURCE_ROOT"; }; + C317417CF0C0FC45A78DC40B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_audio_processors.mm"; path = "../../JuceLibraryCode/include_juce_audio_processors.mm"; sourceTree = "SOURCE_ROOT"; }; + C661BBE7D46F20EBA8BD26EA = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; + CD85F8E6AD4ABF7436B04BC5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_cryptography.mm"; path = "../../JuceLibraryCode/include_juce_cryptography.mm"; sourceTree = "SOURCE_ROOT"; }; + CF147BD2FF0E785DBFC2E72F = {isa = PBXFileReference; lastKnownFileType = file.nib; name = RecentFilesMenuTemplate.nib; path = RecentFilesMenuTemplate.nib; sourceTree = "SOURCE_ROOT"; }; + D067F279F2FFF53018E5ADFA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_audio_basics.mm"; path = "../../JuceLibraryCode/include_juce_audio_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + D1038D107D213407E63A2E43 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_audio_basics"; path = "../../../JUCE/modules/juce_audio_basics"; sourceTree = "SOURCE_ROOT"; }; + D2AECDE64288539465F9F557 = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = lampshade.entitlements; path = lampshade.entitlements; sourceTree = "SOURCE_ROOT"; }; + D371ACC3139D87FA4E92DF2A = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_audio_devices"; path = "../../../JUCE/modules/juce_audio_devices"; sourceTree = "SOURCE_ROOT"; }; + D3AE5041571C4ABC6483EA1F = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_cryptography"; path = "../../../JUCE/modules/juce_cryptography"; sourceTree = "SOURCE_ROOT"; }; + D3DC1E4673B36C14C29A3DA0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_opengl.mm"; path = "../../JuceLibraryCode/include_juce_opengl.mm"; sourceTree = "SOURCE_ROOT"; }; + D47E5702A4A551473EA9802C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = "SOURCE_ROOT"; }; + D65ACC661F20F0FFF51502A0 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; + E0B41DF091920514733B4BB1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PluginEditor.cpp; path = ../../Source/PluginEditor.cpp; sourceTree = "SOURCE_ROOT"; }; + E8448CDE299CDD75C3BF3D10 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_audio_processors"; path = "../../../JUCE/modules/juce_audio_processors"; sourceTree = "SOURCE_ROOT"; }; + EC7E622FD23986ADE0F2FB13 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = System/Library/Frameworks/AudioUnit.framework; sourceTree = SDKROOT; }; + F332D6A326A5372761F1BEA3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_gui_basics.mm"; path = "../../JuceLibraryCode/include_juce_gui_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + FD7ACB75B2B2C64CDCAEDA9B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "include_juce_audio_plugin_client_VST2.cpp"; path = "../../JuceLibraryCode/include_juce_audio_plugin_client_VST2.cpp"; sourceTree = "SOURCE_ROOT"; }; + FF176F52120722CB9F8A71E7 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = System/Library/Frameworks/CoreMIDI.framework; sourceTree = SDKROOT; }; + 8835223CB197327916FBE2A3 = {isa = PBXGroup; children = ( + 357BDFA552B71AD189EB1F06, + 41D175753CA11D3FC51D2EB2, + E0B41DF091920514733B4BB1, + 41ACB4B30D94AAC775DB8A87, ); name = Source; sourceTree = ""; }; + 82457E72363392CECB3CC988 = {isa = PBXGroup; children = ( + 8835223CB197327916FBE2A3, ); name = lampshade; sourceTree = ""; }; + B83936A3A32FE80EEB070357 = {isa = PBXGroup; children = ( + D1038D107D213407E63A2E43, + D371ACC3139D87FA4E92DF2A, + 1BACA7532065216B613569B7, + 8A49567E568761FE65C669AF, + E8448CDE299CDD75C3BF3D10, + 70B34A152379B947CCFB0310, + D3AE5041571C4ABC6483EA1F, + 79498E91A4D9FACB0DC8A5EF, + 6C6CBB42D4B4FB62A711381E, + 369CB5F9FCE495BEE0C0EC9C, + 3CE2444CCA5A36275293039C, + 590D3DAF7E4B2F2651323EBD, + 5E4C58D4B40AF70DB0CBED51, + 466CE65794F12BC583EECE60, ); name = "Juce Modules"; sourceTree = ""; }; + 0866B93B953AC730685EF3D1 = {isa = PBXGroup; children = ( + 2DDBACA22DAE8B737846B7DE, + D067F279F2FFF53018E5ADFA, + B67080FE154843E938DDC402, + 0ABE7BE59FB299EF65FE7160, + 2EE0EDE646913553A09DA3FE, + 8DE39817C4E152BBEF05075A, + 5225666E2D7B7D1A1C42B341, + 8ECD100DBD5686BCEC8F3D4E, + 96F20252EB056CAAA055E1E2, + FD7ACB75B2B2C64CDCAEDA9B, + C317417CF0C0FC45A78DC40B, + 6CF987252EE811A5DC534907, + CD85F8E6AD4ABF7436B04BC5, + B3378FBD237294ABA1F74711, + A08B86F9049402D1DF772BE0, + AEF0F119D7100F7126FDCF2A, + F332D6A326A5372761F1BEA3, + 592C9B0EC0FDDB813554C9E9, + D3DC1E4673B36C14C29A3DA0, + 0262A05464462DC3DF47A6FF, + D47E5702A4A551473EA9802C, ); name = "Juce Library Code"; sourceTree = ""; }; + 586A34A8E5491718D6ED6352 = {isa = PBXGroup; children = ( + 5F3F9DA53DC49F773A1FD7FF, + 88FE2452013EFC7416A5807A, + CF147BD2FF0E785DBFC2E72F, ); name = Resources; sourceTree = ""; }; + 31F35B2FCF27F294AC29B078 = {isa = PBXGroup; children = ( + A3A980F27E3F4D20274B6B78, + D65ACC661F20F0FFF51502A0, + EC7E622FD23986ADE0F2FB13, + C661BBE7D46F20EBA8BD26EA, + 50217C34D2AF48A6D8DD23F9, + 62A57D5AB67F3F46351829C1, + 914F2A97A0D1C6BD69DEBC84, + 4ABCA305FE8545B99FA3CBEF, + 7461C1A5B5565FAE529BF5D0, + FF176F52120722CB9F8A71E7, + 4E284DBE383AC485FA4AF746, + 98E3514976D944A5EDF34526, + 4A5349BB8EC5BA01320D293A, + 53737C6D846C073081CD5C36, ); name = Frameworks; sourceTree = ""; }; + 225178B7D29DE2B299E3C4BF = {isa = PBXGroup; children = ( + CB5B0D375AF54A8C0E368F0D, + 1B0AC63282540354559C329F, + 3EAB0DE93476A6919F9F423F, ); name = Products; sourceTree = ""; }; + 40100F5571E92C0438849085 = {isa = PBXGroup; children = ( + D2AECDE64288539465F9F557, + 82457E72363392CECB3CC988, + B83936A3A32FE80EEB070357, + 0866B93B953AC730685EF3D1, + 586A34A8E5491718D6ED6352, + 31F35B2FCF27F294AC29B078, + 225178B7D29DE2B299E3C4BF, ); name = Source; sourceTree = ""; }; + F44AC628BEE920D4B70D2191 = {isa = XCBuildConfiguration; buildSettings = { }; name = Debug; }; + 4C951B17EDD4043C0464D1EB = {isa = XCBuildConfiguration; buildSettings = { }; name = Release; }; + AFD5BFDE31165A8B4BA61EFC = {isa = XCBuildConfiguration; buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + CLANG_LINK_OBJC_RUNTIME = NO; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; + COPY_PHASE_STRIP = NO; + DEPLOYMENT_LOCATION = YES; + DSTROOT = /; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_DEBUG=1", + "DEBUG=1", + "JUCER_XCODE_MAC_F6D2F4CF=1", + "JUCE_APP_VERSION=1.0.0", + "JUCE_APP_VERSION_HEX=0x10000", + "JucePlugin_Build_VST=1", + "JucePlugin_Build_VST3=0", + "JucePlugin_Build_AU=0", + "JucePlugin_Build_AUv3=0", + "JucePlugin_Build_RTAS=0", + "JucePlugin_Build_AAX=0", + "JucePlugin_Build_Standalone=0", ); + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GENERATE_PKGINFO_FILE = YES; + HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../JUCE/modules", "../../../JUCE/modules/juce_audio_plugin_client", "$(inherited)"); + INFOPLIST_FILE = Info-VST.plist; + INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/VST/"; + LIBRARY_STYLE = Bundle; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + OTHER_LDFLAGS = "-bundle -llampshade"; + PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.lampshade; + SDKROOT_ppc = macosx10.5; + USE_HEADERMAP = NO; + WRAPPER_EXTENSION = vst; }; name = Debug; }; + DD317CEB8A1547942B3F5646 = {isa = XCBuildConfiguration; buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + CLANG_LINK_OBJC_RUNTIME = NO; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; + DEAD_CODE_STRIPPING = YES; + DEPLOYMENT_LOCATION = YES; + DSTROOT = /; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_NDEBUG=1", + "NDEBUG=1", + "JUCER_XCODE_MAC_F6D2F4CF=1", + "JUCE_APP_VERSION=1.0.0", + "JUCE_APP_VERSION_HEX=0x10000", + "JucePlugin_Build_VST=1", + "JucePlugin_Build_VST3=0", + "JucePlugin_Build_AU=0", + "JucePlugin_Build_AUv3=0", + "JucePlugin_Build_RTAS=0", + "JucePlugin_Build_AAX=0", + "JucePlugin_Build_Standalone=0", ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GENERATE_PKGINFO_FILE = YES; + HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../JUCE/modules", "../../../JUCE/modules/juce_audio_plugin_client", "$(inherited)"); + INFOPLIST_FILE = Info-VST.plist; + INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/VST/"; + LIBRARY_STYLE = Bundle; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + OTHER_LDFLAGS = "-bundle -llampshade"; + PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.lampshade; + SDKROOT_ppc = macosx10.5; + USE_HEADERMAP = NO; + WRAPPER_EXTENSION = vst; }; name = Release; }; + 514E022CC9539742E0444811 = {isa = XCBuildConfiguration; buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + CLANG_LINK_OBJC_RUNTIME = NO; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; + COPY_PHASE_STRIP = NO; + DEPLOYMENT_LOCATION = YES; + DSTROOT = /; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_DEBUG=1", + "DEBUG=1", + "JUCER_XCODE_MAC_F6D2F4CF=1", + "JUCE_APP_VERSION=1.0.0", + "JUCE_APP_VERSION_HEX=0x10000", + "JucePlugin_Build_VST=0", + "JucePlugin_Build_VST3=0", + "JucePlugin_Build_AU=1", + "JucePlugin_Build_AUv3=0", + "JucePlugin_Build_RTAS=0", + "JucePlugin_Build_AAX=0", + "JucePlugin_Build_Standalone=0", ); + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GENERATE_PKGINFO_FILE = YES; + HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../JUCE/modules", "../../../JUCE/modules/juce_audio_plugin_client", "$(inherited)"); + INFOPLIST_FILE = Info-AU.plist; + INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/"; + LIBRARY_STYLE = Bundle; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + OTHER_LDFLAGS = "-bundle -llampshade"; + OTHER_REZFLAGS = "-d ppc_$ppc -d i386_$i386 -d ppc64_$ppc64 -d x86_64_$x86_64 -I /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Versions/A/Headers -I \"$(DEVELOPER_DIR)/Extras/CoreAudio/AudioUnits/AUPublic/AUBase\""; + PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.lampshade; + SDKROOT_ppc = macosx10.5; + USE_HEADERMAP = NO; + WRAPPER_EXTENSION = component; }; name = Debug; }; + D9A198C73E6C834D831225CA = {isa = XCBuildConfiguration; buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + CLANG_LINK_OBJC_RUNTIME = NO; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; + DEAD_CODE_STRIPPING = YES; + DEPLOYMENT_LOCATION = YES; + DSTROOT = /; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_NDEBUG=1", + "NDEBUG=1", + "JUCER_XCODE_MAC_F6D2F4CF=1", + "JUCE_APP_VERSION=1.0.0", + "JUCE_APP_VERSION_HEX=0x10000", + "JucePlugin_Build_VST=0", + "JucePlugin_Build_VST3=0", + "JucePlugin_Build_AU=1", + "JucePlugin_Build_AUv3=0", + "JucePlugin_Build_RTAS=0", + "JucePlugin_Build_AAX=0", + "JucePlugin_Build_Standalone=0", ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GENERATE_PKGINFO_FILE = YES; + HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../JUCE/modules", "../../../JUCE/modules/juce_audio_plugin_client", "$(inherited)"); + INFOPLIST_FILE = Info-AU.plist; + INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/"; + LIBRARY_STYLE = Bundle; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + OTHER_LDFLAGS = "-bundle -llampshade"; + OTHER_REZFLAGS = "-d ppc_$ppc -d i386_$i386 -d ppc64_$ppc64 -d x86_64_$x86_64 -I /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Versions/A/Headers -I \"$(DEVELOPER_DIR)/Extras/CoreAudio/AudioUnits/AUPublic/AUBase\""; + PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.lampshade; + SDKROOT_ppc = macosx10.5; + USE_HEADERMAP = NO; + WRAPPER_EXTENSION = component; }; name = Release; }; + 13042465903F6396A4FE9A2C = {isa = XCBuildConfiguration; buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + CLANG_LINK_OBJC_RUNTIME = NO; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_DEBUG=1", + "DEBUG=1", + "JUCER_XCODE_MAC_F6D2F4CF=1", + "JUCE_APP_VERSION=1.0.0", + "JUCE_APP_VERSION_HEX=0x10000", + "JucePlugin_Build_VST=1", + "JucePlugin_Build_VST3=0", + "JucePlugin_Build_AU=1", + "JucePlugin_Build_AUv3=0", + "JucePlugin_Build_RTAS=0", + "JucePlugin_Build_AAX=0", + "JucePlugin_Build_Standalone=0", + "JUCE_SHARED_CODE=1", ); + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../JUCE/modules", "../../../JUCE/modules/juce_audio_plugin_client", "$(inherited)"); + INSTALL_PATH = "@executable_path/../Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.lampshade; + SDKROOT_ppc = macosx10.5; + USE_HEADERMAP = NO; }; name = Debug; }; + 95C99054C1158870AB314D10 = {isa = XCBuildConfiguration; buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + CLANG_LINK_OBJC_RUNTIME = NO; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; + DEAD_CODE_STRIPPING = YES; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_NDEBUG=1", + "NDEBUG=1", + "JUCER_XCODE_MAC_F6D2F4CF=1", + "JUCE_APP_VERSION=1.0.0", + "JUCE_APP_VERSION_HEX=0x10000", + "JucePlugin_Build_VST=1", + "JucePlugin_Build_VST3=0", + "JucePlugin_Build_AU=1", + "JucePlugin_Build_AUv3=0", + "JucePlugin_Build_RTAS=0", + "JucePlugin_Build_AAX=0", + "JucePlugin_Build_Standalone=0", + "JUCE_SHARED_CODE=1", ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../JUCE/modules", "../../../JUCE/modules/juce_audio_plugin_client", "$(inherited)"); + INSTALL_PATH = "@executable_path/../Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.lampshade; + SDKROOT_ppc = macosx10.5; + USE_HEADERMAP = NO; }; name = Release; }; + B65C0A6A2715E6E5A88FBE66 = {isa = XCBuildConfiguration; buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + DEBUG_INFORMATION_FORMAT = "dwarf"; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = c11; + GCC_INLINES_ARE_PRIVATE_EXTERN = YES; + GCC_MODEL_TUNING = G5; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; + GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = "lampshade"; + WARNING_CFLAGS = -Wreorder; + ZERO_LINK = NO; }; name = Debug; }; + 5314DDF7ABD20DF302ADAD42 = {isa = XCBuildConfiguration; buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + DEBUG_INFORMATION_FORMAT = "dwarf"; + GCC_C_LANGUAGE_STANDARD = c11; + GCC_INLINES_ARE_PRIVATE_EXTERN = YES; + GCC_MODEL_TUNING = G5; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; + GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + PRODUCT_NAME = "lampshade"; + WARNING_CFLAGS = -Wreorder; + ZERO_LINK = NO; }; name = Release; }; + FDEA5830C98CFA19F1FC7B39 = {isa = PBXTargetDependency; target = 348ED034FDD0364809BA969F; }; + F087D9AE4C1E622C1D044D3E = {isa = PBXTargetDependency; target = 7A061C45E4D523B54BC569E8; }; + 9226BE662B3152A79783E23E = {isa = PBXTargetDependency; target = CA9D59CE54C5806061F9AE4F; }; + 43DF39385E953106AB26A30C = {isa = XCConfigurationList; buildConfigurations = ( + B65C0A6A2715E6E5A88FBE66, + 5314DDF7ABD20DF302ADAD42, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + 586FE1406A99C7E14ADDFF0E = {isa = XCConfigurationList; buildConfigurations = ( + F44AC628BEE920D4B70D2191, + 4C951B17EDD4043C0464D1EB, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + A341F220FAA920124253C262 = {isa = PBXAggregateTarget; buildConfigurationList = 586FE1406A99C7E14ADDFF0E; buildPhases = ( ); buildRules = ( ); dependencies = ( + FDEA5830C98CFA19F1FC7B39, + F087D9AE4C1E622C1D044D3E, + 9226BE662B3152A79783E23E, ); name = "lampshade - All"; productName = lampshade; }; + 5DB1815F3C3FF5C9571674C7 = {isa = XCConfigurationList; buildConfigurations = ( + AFD5BFDE31165A8B4BA61EFC, + DD317CEB8A1547942B3F5646, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + B305A6744B692D3BDD71FB78 = {isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 638FF3450BF2CCA07FD80EB8, ); runOnlyForDeploymentPostprocessing = 0; }; + A1D6D78DAB8C582892FC971C = {isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + ACD1181315382066A7F6C53A, ); runOnlyForDeploymentPostprocessing = 0; }; + FD27DBC8D4EA97CDA0FC8D83 = {isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 95136E084F4D0EE088073368, + 81205223BCA9C7BCA1AFB5D6, + C7BD40100A1492C40C863C00, + D547FF226D986130166891BE, + B9C41F0022A5FA8A2F1989AD, + 947489CCF0EB3AA37A15C225, + 57E0D970CCF472AA4F220F1C, + 3847F684F71D74E88DE20333, + AB479A633A1BC7B7671207D3, + 337684517E0AA287F0BCAF91, + C0ED549D5028C8CC77BBA5CF, + 5793CF50D29C4646E79F50F4, ); runOnlyForDeploymentPostprocessing = 0; }; + 348ED034FDD0364809BA969F = {isa = PBXNativeTarget; buildConfigurationList = 5DB1815F3C3FF5C9571674C7; buildPhases = ( + B305A6744B692D3BDD71FB78, + A1D6D78DAB8C582892FC971C, + FD27DBC8D4EA97CDA0FC8D83, ); buildRules = ( ); dependencies = ( + 9226BE662B3152A79783E23E, ); name = "lampshade - VST"; productName = lampshade; productReference = CB5B0D375AF54A8C0E368F0D; productType = "com.apple.product-type.bundle"; }; + 82A7AA635442B01598D9FEDA = {isa = XCConfigurationList; buildConfigurations = ( + 514E022CC9539742E0444811, + D9A198C73E6C834D831225CA, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + 4D19C0C4AECA34AD1580D7C4 = {isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 638FF3450BF2CCA07FD80EB8, ); runOnlyForDeploymentPostprocessing = 0; }; + 175F622A87475BB02C5B587F = {isa = PBXRezBuildPhase; buildActionMask = 2147483647; files = ( + 72CB8E05769AF952EF86D36A, ); runOnlyForDeploymentPostprocessing = 0; }; + 4BE73FF648CD8F95C6E7D885 = {isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 33BA39AC84FE9B8C874761D9, + 2E7B13B3216BB6D8C6C4BE08, ); runOnlyForDeploymentPostprocessing = 0; }; + EC158B2836BF6D5456E32F9A = {isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 95136E084F4D0EE088073368, + 81205223BCA9C7BCA1AFB5D6, + A2F84A9190B64E02C6689E13, + C7BD40100A1492C40C863C00, + D547FF226D986130166891BE, + B9C41F0022A5FA8A2F1989AD, + 947489CCF0EB3AA37A15C225, + 899D880FD50AA6167E6E7811, + 57E0D970CCF472AA4F220F1C, + 3847F684F71D74E88DE20333, + AB479A633A1BC7B7671207D3, + 337684517E0AA287F0BCAF91, + C0ED549D5028C8CC77BBA5CF, + 5793CF50D29C4646E79F50F4, ); runOnlyForDeploymentPostprocessing = 0; }; + 7A061C45E4D523B54BC569E8 = {isa = PBXNativeTarget; buildConfigurationList = 82A7AA635442B01598D9FEDA; buildPhases = ( + 4D19C0C4AECA34AD1580D7C4, + 175F622A87475BB02C5B587F, + 4BE73FF648CD8F95C6E7D885, + EC158B2836BF6D5456E32F9A, ); buildRules = ( ); dependencies = ( + 9226BE662B3152A79783E23E, ); name = "lampshade - AU"; productName = lampshade; productReference = 1B0AC63282540354559C329F; productType = "com.apple.product-type.bundle"; }; + 9C47DD4352D36D713C3F719C = {isa = XCConfigurationList; buildConfigurations = ( + 13042465903F6396A4FE9A2C, + 95C99054C1158870AB314D10, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + 1D80CA6DBE617F5EB3C6B776 = {isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 259F6DAFA51F28B202BC4CB2, + 6F48A22A014D6B77306A87B4, + 17B788939D91ACF61B3653F3, + 1401FF52A1CDC9D6B6E63792, + 7A618AD9D44431E3B53779F1, + C61861F33DE06174BD747B08, + 606404CB92B5FAB49C887A88, + 547743A1B734172C79900532, + 071AA1EA28BBE654332C90E7, + 333D7A98D06F0836AD147B3D, + 179FD4E00C7B1E197006A963, + EB0E23396A3118550BB0FB04, + C044CD3BB69C14811C127F49, + F0A2DB6168EF670D6E3D605A, + 4275CF78B44602BB3F7D379F, + 86277E48E9E60B7DAADCF653, + 52B54D8993F8BFF8B30B71C0, ); runOnlyForDeploymentPostprocessing = 0; }; + CA9D59CE54C5806061F9AE4F = {isa = PBXNativeTarget; buildConfigurationList = 9C47DD4352D36D713C3F719C; buildPhases = ( + 1D80CA6DBE617F5EB3C6B776, ); buildRules = ( ); dependencies = ( ); name = "lampshade - Shared Code"; productName = lampshade; productReference = 3EAB0DE93476A6919F9F423F; productType = "com.apple.product-type.library.static"; }; + 29BF130969512AB5E1CABA14 = {isa = PBXProject; buildConfigurationList = 43DF39385E953106AB26A30C; attributes = { LastUpgradeCheck = 0830; TargetAttributes = { A341F220FAA920124253C262 = { SystemCapabilities = {com.apple.InAppPurchase = { enabled = 0; }; com.apple.InterAppAudio = { enabled = 0; }; com.apple.Sandbox = { enabled = 0; }; }; };348ED034FDD0364809BA969F = { SystemCapabilities = {com.apple.InAppPurchase = { enabled = 0; }; com.apple.InterAppAudio = { enabled = 0; }; com.apple.Sandbox = { enabled = 0; }; }; };7A061C45E4D523B54BC569E8 = { SystemCapabilities = {com.apple.InAppPurchase = { enabled = 0; }; com.apple.InterAppAudio = { enabled = 0; }; com.apple.Sandbox = { enabled = 0; }; }; };CA9D59CE54C5806061F9AE4F = { SystemCapabilities = {com.apple.InAppPurchase = { enabled = 0; }; com.apple.InterAppAudio = { enabled = 0; }; com.apple.Sandbox = { enabled = 0; }; }; }; }; }; compatibilityVersion = "Xcode 3.2"; hasScannedForEncodings = 0; mainGroup = 40100F5571E92C0438849085; projectDirPath = ""; projectRoot = ""; targets = (A341F220FAA920124253C262, 348ED034FDD0364809BA969F, 7A061C45E4D523B54BC569E8, CA9D59CE54C5806061F9AE4F); }; + }; + rootObject = 29BF130969512AB5E1CABA14; +} diff --git a/Builds/MacOSX/lampshade.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Builds/MacOSX/lampshade.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/Builds/MacOSX/lampshade.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Builds/MacOSX/lampshade.xcodeproj/project.xcworkspace/xcuserdata/veitheller.xcuserdatad/UserInterfaceState.xcuserstate b/Builds/MacOSX/lampshade.xcodeproj/project.xcworkspace/xcuserdata/veitheller.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..4d5ab754d835d90047000fe459990c382618282c GIT binary patch literal 5493 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 Hsp9_ts?>Z@ literal 0 HcmV?d00001 diff --git a/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - AU.xcscheme b/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - AU.xcscheme new file mode 100644 index 0000000..8b8786e --- /dev/null +++ b/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - AU.xcscheme @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - All.xcscheme b/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - All.xcscheme new file mode 100644 index 0000000..a105b32 --- /dev/null +++ b/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - All.xcscheme @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - Shared Code.xcscheme b/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - Shared Code.xcscheme new file mode 100644 index 0000000..884875b --- /dev/null +++ b/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - Shared Code.xcscheme @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - VST.xcscheme b/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - VST.xcscheme new file mode 100644 index 0000000..7ed1c62 --- /dev/null +++ b/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/lampshade - VST.xcscheme @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/xcschememanagement.plist b/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..c360a33 --- /dev/null +++ b/Builds/MacOSX/lampshade.xcodeproj/xcuserdata/veitheller.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,52 @@ + + + + + SchemeUserState + + lampshade - AU.xcscheme + + orderHint + 2 + + lampshade - All.xcscheme + + orderHint + 0 + + lampshade - Shared Code.xcscheme + + orderHint + 3 + + lampshade - VST.xcscheme + + orderHint + 1 + + + SuppressBuildableAutocreation + + 348ED034FDD0364809BA969F + + primary + + + 7A061C45E4D523B54BC569E8 + + primary + + + A341F220FAA920124253C262 + + primary + + + CA9D59CE54C5806061F9AE4F + + primary + + + + + diff --git a/Source/PluginEditor.cpp b/Source/PluginEditor.cpp new file mode 100644 index 0000000..98ec375 --- /dev/null +++ b/Source/PluginEditor.cpp @@ -0,0 +1,43 @@ +/* + ============================================================================== + + This file was auto-generated! + + It contains the basic framework code for a JUCE plugin editor. + + ============================================================================== +*/ + +#include "PluginProcessor.h" +#include "PluginEditor.h" + + +//============================================================================== +LampshadeAudioProcessorEditor::LampshadeAudioProcessorEditor (LampshadeAudioProcessor& p) + : AudioProcessorEditor (&p), processor (p) +{ + // Make sure that before the constructor has finished, you've set the + // editor's size to whatever you need it to be. + setSize (400, 300); +} + +LampshadeAudioProcessorEditor::~LampshadeAudioProcessorEditor() +{ +} + +//============================================================================== +void LampshadeAudioProcessorEditor::paint (Graphics& g) +{ + // (Our component is opaque, so we must completely fill the background with a solid colour) + g.fillAll (getLookAndFeel().findColour (ResizableWindow::backgroundColourId)); + + g.setColour (Colours::white); + g.setFont (15.0f); + g.drawFittedText ("Hello World!", getLocalBounds(), Justification::centred, 1); +} + +void LampshadeAudioProcessorEditor::resized() +{ + // This is generally where you'll want to lay out the positions of any + // subcomponents in your editor.. +} diff --git a/Source/PluginEditor.h b/Source/PluginEditor.h new file mode 100644 index 0000000..06d292e --- /dev/null +++ b/Source/PluginEditor.h @@ -0,0 +1,36 @@ +/* + ============================================================================== + + This file was auto-generated! + + It contains the basic framework code for a JUCE plugin editor. + + ============================================================================== +*/ + +#pragma once + +#include "../JuceLibraryCode/JuceHeader.h" +#include "PluginProcessor.h" + + +//============================================================================== +/** +*/ +class LampshadeAudioProcessorEditor : public AudioProcessorEditor +{ +public: + LampshadeAudioProcessorEditor (LampshadeAudioProcessor&); + ~LampshadeAudioProcessorEditor(); + + //============================================================================== + void paint (Graphics&) override; + void resized() override; + +private: + // This reference is provided as a quick way for your editor to + // access the processor object that created it. + LampshadeAudioProcessor& processor; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (LampshadeAudioProcessorEditor) +}; diff --git a/Source/PluginProcessor.cpp b/Source/PluginProcessor.cpp new file mode 100644 index 0000000..1f8a551 --- /dev/null +++ b/Source/PluginProcessor.cpp @@ -0,0 +1,178 @@ +/* + ============================================================================== + + This file was auto-generated! + + It contains the basic framework code for a JUCE plugin processor. + + ============================================================================== +*/ + +#include "PluginProcessor.h" +#include "PluginEditor.h" + + +//============================================================================== +LampshadeAudioProcessor::LampshadeAudioProcessor() +#ifndef JucePlugin_PreferredChannelConfigurations + : AudioProcessor (BusesProperties() + #if ! JucePlugin_IsMidiEffect + #if ! JucePlugin_IsSynth + .withInput ("Input", AudioChannelSet::stereo(), true) + #endif + .withOutput ("Output", AudioChannelSet::stereo(), true) + #endif + ) +#endif +{ +} + +LampshadeAudioProcessor::~LampshadeAudioProcessor() +{ +} + +//============================================================================== +const String LampshadeAudioProcessor::getName() const +{ + return JucePlugin_Name; +} + +bool LampshadeAudioProcessor::acceptsMidi() const +{ + #if JucePlugin_WantsMidiInput + return true; + #else + return false; + #endif +} + +bool LampshadeAudioProcessor::producesMidi() const +{ + #if JucePlugin_ProducesMidiOutput + return true; + #else + return false; + #endif +} + +double LampshadeAudioProcessor::getTailLengthSeconds() const +{ + return 0.0; +} + +int LampshadeAudioProcessor::getNumPrograms() +{ + return 1; // NB: some hosts don't cope very well if you tell them there are 0 programs, + // so this should be at least 1, even if you're not really implementing programs. +} + +int LampshadeAudioProcessor::getCurrentProgram() +{ + return 0; +} + +void LampshadeAudioProcessor::setCurrentProgram (int index) +{ +} + +const String LampshadeAudioProcessor::getProgramName (int index) +{ + return {}; +} + +void LampshadeAudioProcessor::changeProgramName (int index, const String& newName) +{ +} + +//============================================================================== +void LampshadeAudioProcessor::prepareToPlay (double sampleRate, int samplesPerBlock) +{ + // Use this method as the place to do any pre-playback + // initialisation that you need.. +} + +void LampshadeAudioProcessor::releaseResources() +{ + // When playback stops, you can use this as an opportunity to free up any + // spare memory, etc. +} + +#ifndef JucePlugin_PreferredChannelConfigurations +bool LampshadeAudioProcessor::isBusesLayoutSupported (const BusesLayout& layouts) const +{ + #if JucePlugin_IsMidiEffect + ignoreUnused (layouts); + return true; + #else + // This is the place where you check if the layout is supported. + // In this template code we only support mono or stereo. + if (layouts.getMainOutputChannelSet() != AudioChannelSet::mono() + && layouts.getMainOutputChannelSet() != AudioChannelSet::stereo()) + return false; + + // This checks if the input layout matches the output layout + #if ! JucePlugin_IsSynth + if (layouts.getMainOutputChannelSet() != layouts.getMainInputChannelSet()) + return false; + #endif + + return true; + #endif +} +#endif + +void LampshadeAudioProcessor::processBlock (AudioSampleBuffer& buffer, MidiBuffer& midiMessages) +{ + const int totalNumInputChannels = getTotalNumInputChannels(); + const int totalNumOutputChannels = getTotalNumOutputChannels(); + + // In case we have more outputs than inputs, this code clears any output + // channels that didn't contain input data, (because these aren't + // guaranteed to be empty - they may contain garbage). + // This is here to avoid people getting screaming feedback + // when they first compile a plugin, but obviously you don't need to keep + // this code if your algorithm always overwrites all the output channels. + for (int i = totalNumInputChannels; i < totalNumOutputChannels; ++i) + buffer.clear (i, 0, buffer.getNumSamples()); + + // This is the place where you'd normally do the guts of your plugin's + // audio processing... + for (int channel = 0; channel < totalNumInputChannels; ++channel) + { + float* channelData = buffer.getWritePointer (channel); + + // ..do something to the data... + } +} + +//============================================================================== +bool LampshadeAudioProcessor::hasEditor() const +{ + return true; // (change this to false if you choose to not supply an editor) +} + +AudioProcessorEditor* LampshadeAudioProcessor::createEditor() +{ + return new LampshadeAudioProcessorEditor (*this); +} + +//============================================================================== +void LampshadeAudioProcessor::getStateInformation (MemoryBlock& destData) +{ + // You should use this method to store your parameters in the memory block. + // You could do that either as raw data, or use the XML or ValueTree classes + // as intermediaries to make it easy to save and load complex data. +} + +void LampshadeAudioProcessor::setStateInformation (const void* data, int sizeInBytes) +{ + // You should use this method to restore your parameters from this memory block, + // whose contents will have been created by the getStateInformation() call. +} + +//============================================================================== +// This creates new instances of the plugin.. +AudioProcessor* JUCE_CALLTYPE createPluginFilter() +{ + return new LampshadeAudioProcessor(); +} diff --git a/Source/PluginProcessor.h b/Source/PluginProcessor.h new file mode 100644 index 0000000..4e181dc --- /dev/null +++ b/Source/PluginProcessor.h @@ -0,0 +1,61 @@ +/* + ============================================================================== + + This file was auto-generated! + + It contains the basic framework code for a JUCE plugin processor. + + ============================================================================== +*/ + +#pragma once + +#include "../JuceLibraryCode/JuceHeader.h" + + +//============================================================================== +/** +*/ +class LampshadeAudioProcessor : public AudioProcessor +{ +public: + //============================================================================== + LampshadeAudioProcessor(); + ~LampshadeAudioProcessor(); + + //============================================================================== + void prepareToPlay (double sampleRate, int samplesPerBlock) override; + void releaseResources() override; + + #ifndef JucePlugin_PreferredChannelConfigurations + bool isBusesLayoutSupported (const BusesLayout& layouts) const override; + #endif + + void processBlock (AudioSampleBuffer&, MidiBuffer&) override; + + //============================================================================== + AudioProcessorEditor* createEditor() override; + bool hasEditor() const override; + + //============================================================================== + const String getName() const override; + + bool acceptsMidi() const override; + bool producesMidi() const override; + double getTailLengthSeconds() const override; + + //============================================================================== + int getNumPrograms() override; + int getCurrentProgram() override; + void setCurrentProgram (int index) override; + const String getProgramName (int index) override; + void changeProgramName (int index, const String& newName) override; + + //============================================================================== + void getStateInformation (MemoryBlock& destData) override; + void setStateInformation (const void* data, int sizeInBytes) override; + +private: + //============================================================================== + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (LampshadeAudioProcessor) +}; diff --git a/lampshade.jucer b/lampshade.jucer new file mode 100644 index 0000000..c46c7d8 --- /dev/null +++ b/lampshade.jucer @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +