macOs build fixes. Plugin itself doesn't work properly...

This commit is contained in:
xenakios 2017-11-16 00:37:24 +02:00
parent c283d719d0
commit d32d855e64
4 changed files with 179 additions and 168 deletions

View File

@ -58,8 +58,13 @@ void PaulstretchpluginAudioProcessorEditor::buttonClicked(Button * but)
} }
if (but == &m_import_button) if (but == &m_import_button)
{ {
FileChooser myChooser("Please select audio file...", #ifdef WIN32
File("C:/MusicAudio/sourcesamples"), File initialloc("C:/MusicAudio/sourcesamples");
#else
File initialloc("/Users/teemu/AudioProjects/sourcesamples");
#endif
FileChooser myChooser("Please select audio file...",
initialloc,
"*.wav"); "*.wav");
if (myChooser.browseForFileToOpen()) if (myChooser.browseForFileToOpen())
{ {

View File

@ -13,6 +13,19 @@
#undef min #undef min
#undef max #undef max
template<typename F>
void callGUI(AudioProcessor* ap, F&& f, bool async)
{
auto ed = dynamic_cast<PaulstretchpluginAudioProcessorEditor*>(ap->getActiveEditor());
if (ed)
{
if (async == false)
f(ed);
else
MessageManager::callAsync([ed,f]() { f(ed); });
}
}
//============================================================================== //==============================================================================
PaulstretchpluginAudioProcessor::PaulstretchpluginAudioProcessor() PaulstretchpluginAudioProcessor::PaulstretchpluginAudioProcessor()
#ifndef JucePlugin_PreferredChannelConfigurations #ifndef JucePlugin_PreferredChannelConfigurations
@ -123,7 +136,7 @@ void PaulstretchpluginAudioProcessor::prepareToPlay(double sampleRate, int sampl
m_control->getStretchAudioSource()->setAudioBufferAsInputSource(&m_recbuffer, m_control->getStretchAudioSource()->setAudioBufferAsInputSource(&m_recbuffer,
getSampleRate(), getSampleRate(),
len); len);
callGUI([this,len](auto ed) { ed->setAudioBuffer(&m_recbuffer, getSampleRate(), len); },false); callGUI(this,[this,len](auto ed) { ed->setAudioBuffer(&m_recbuffer, getSampleRate(), len); },false);
} }
if (m_ready_to_play == false) if (m_ready_to_play == false)
{ {
@ -204,7 +217,7 @@ void PaulstretchpluginAudioProcessor::processBlock (AudioSampleBuffer& buffer, M
{ {
int recbuflenframes = m_max_reclen * getSampleRate(); int recbuflenframes = m_max_reclen * getSampleRate();
copyAudioBufferWrappingPosition(buffer, m_recbuffer, m_rec_pos, recbuflenframes); copyAudioBufferWrappingPosition(buffer, m_recbuffer, m_rec_pos, recbuflenframes);
callGUI([this, &buffer](PaulstretchpluginAudioProcessorEditor*ed) callGUI(this,[this, &buffer](PaulstretchpluginAudioProcessorEditor*ed)
{ {
ed->addAudioBlock(buffer, getSampleRate(), m_rec_pos); ed->addAudioBlock(buffer, getSampleRate(), m_rec_pos);
}, false); }, false);
@ -275,7 +288,7 @@ void PaulstretchpluginAudioProcessor::setStateInformation (const void* data, int
setAudioFile(f); setAudioFile(f);
Timer::callAfterDelay(500, [this,f]() Timer::callAfterDelay(500, [this,f]()
{ {
callGUI([f,this](PaulstretchpluginAudioProcessorEditor* ed) callGUI(this,[f,this](PaulstretchpluginAudioProcessorEditor* ed)
{ {
ed->setAudioFile(f); ed->setAudioFile(f);
ed->m_wavecomponent.setTimeSelection({ *getFloatParameter(5),*getFloatParameter(6) }); ed->m_wavecomponent.setTimeSelection({ *getFloatParameter(5),*getFloatParameter(6) });
@ -297,7 +310,7 @@ void PaulstretchpluginAudioProcessor::setRecordingEnabled(bool b)
m_recbuffer.setSize(2, m_max_reclen*getSampleRate()+4096); m_recbuffer.setSize(2, m_max_reclen*getSampleRate()+4096);
m_recbuffer.clear(); m_recbuffer.clear();
m_rec_pos = 0; m_rec_pos = 0;
callGUI([this,lenbufframes](PaulstretchpluginAudioProcessorEditor* ed) callGUI(this,[this,lenbufframes](PaulstretchpluginAudioProcessorEditor* ed)
{ {
ed->beginAddingAudioBlocks(2, getSampleRate(), lenbufframes); ed->beginAddingAudioBlocks(2, getSampleRate(), lenbufframes);
},false); },false);

View File

@ -79,18 +79,7 @@ private:
int m_cur_num_out_chans = 2; int m_cur_num_out_chans = 2;
std::mutex m_mutex; std::mutex m_mutex;
File m_current_file; File m_current_file;
template<typename F>
void callGUI(F&& f, bool async)
{
auto ed = dynamic_cast<PaulstretchpluginAudioProcessorEditor*>(getActiveEditor());
if (ed)
{
if (async == false)
f(ed);
else
MessageManager::callAsync([ed,f]() { f(ed); });
}
}
//============================================================================== //==============================================================================
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (PaulstretchpluginAudioProcessor) JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (PaulstretchpluginAudioProcessor)
}; };

View File

@ -1,150 +1,154 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<JUCERPROJECT id="fn1Rg8" name="paulstretchplugin" displaySplashScreen="0" <JUCERPROJECT id="fn1Rg8" name="paulstretchplugin" displaySplashScreen="0"
reportAppUsage="0" splashScreenColour="Dark" projectType="audioplug" reportAppUsage="0" splashScreenColour="Dark" projectType="audioplug"
version="1.0.0" bundleIdentifier="com.yourcompany.paulstretchplugin" version="1.0.0" bundleIdentifier="com.yourcompany.paulstretchplugin"
includeBinaryInAppConfig="1" cppLanguageStandard="latest" companyCopyright="" includeBinaryInAppConfig="1" cppLanguageStandard="latest" companyCopyright=""
buildVST="1" buildVST3="0" buildAU="1" buildAUv3="0" buildRTAS="0" buildVST="1" buildVST3="0" buildAU="0" buildAUv3="0" buildRTAS="0"
buildAAX="0" buildStandalone="1" enableIAA="0" pluginName="paulstretchplugin" buildAAX="0" buildStandalone="0" enableIAA="0" pluginName="paulstretchplugin"
pluginDesc="paulstretchplugin" pluginManufacturer="Xenakios" pluginDesc="paulstretchplugin" pluginManufacturer="Xenakios"
pluginManufacturerCode="XenS" pluginCode="Fn1r" pluginChannelConfigs="{2,2},{4,4}, {8,8}" pluginManufacturerCode="XenS" pluginCode="Fn1r" pluginChannelConfigs="{2,2},{4,4}, {8,8}"
pluginIsSynth="0" pluginWantsMidiIn="0" pluginProducesMidiOut="0" pluginIsSynth="0" pluginWantsMidiIn="0" pluginProducesMidiOut="0"
pluginIsMidiEffectPlugin="0" pluginEditorRequiresKeys="0" pluginAUExportPrefix="paulstretchpluginAU" pluginIsMidiEffectPlugin="0" pluginEditorRequiresKeys="0" pluginAUExportPrefix="paulstretchpluginAU"
pluginRTASCategory="" aaxIdentifier="com.yourcompany.paulstretchplugin" pluginRTASCategory="" aaxIdentifier="com.yourcompany.paulstretchplugin"
pluginAAXCategory="AAX_ePlugInCategory_Dynamics" jucerVersion="5.2.0" pluginAAXCategory="AAX_ePlugInCategory_Dynamics" jucerVersion="5.2.0"
headerPath="&#10;&#10;"> headerPath="&#10;&#10;">
<MAINGROUP id="nozXHl" name="paulstretchplugin"> <MAINGROUP id="nozXHl" name="paulstretchplugin">
<GROUP id="{03DA6B32-F666-FF60-F168-4385D0847058}" name="Source"> <GROUP id="{03DA6B32-F666-FF60-F168-4385D0847058}" name="Source">
<FILE id="TDOHpE" name="resample.cpp" compile="1" resource="0" file="Source/WDL/resample.cpp"/> <FILE id="TDOHpE" name="resample.cpp" compile="1" resource="0" file="Source/WDL/resample.cpp"/>
<GROUP id="{3B6D1AF9-E53E-2F78-24A5-D12A34009E6A}" name="PS_Source"> <GROUP id="{3B6D1AF9-E53E-2F78-24A5-D12A34009E6A}" name="PS_Source">
<FILE id="bnWZA4" name="BinauralBeats.cpp" compile="1" resource="0" <FILE id="bnWZA4" name="BinauralBeats.cpp" compile="1" resource="0"
file="Source/PS_Source/BinauralBeats.cpp"/> file="Source/PS_Source/BinauralBeats.cpp"/>
<FILE id="qAo4mG" name="FreeEdit.cpp" compile="1" resource="0" file="Source/PS_Source/FreeEdit.cpp"/> <FILE id="qAo4mG" name="FreeEdit.cpp" compile="1" resource="0" file="Source/PS_Source/FreeEdit.cpp"/>
<FILE id="gDsFRp" name="globals.h" compile="0" resource="0" file="Source/PS_Source/globals.h"/> <FILE id="gDsFRp" name="globals.h" compile="0" resource="0" file="Source/PS_Source/globals.h"/>
<FILE id="O0cKQ4" name="Mutex.h" compile="0" resource="0" file="Source/PS_Source/Mutex.h"/> <FILE id="O0cKQ4" name="Mutex.h" compile="0" resource="0" file="Source/PS_Source/Mutex.h"/>
<FILE id="Rl76Ct" name="PaulStretchControl.h" compile="0" resource="0" <FILE id="Rl76Ct" name="PaulStretchControl.h" compile="0" resource="0"
file="Source/PS_Source/PaulStretchControl.h"/> file="Source/PS_Source/PaulStretchControl.h"/>
<FILE id="MOQjrp" name="ProcessedStretch.h" compile="0" resource="0" <FILE id="MOQjrp" name="ProcessedStretch.h" compile="0" resource="0"
file="Source/PS_Source/ProcessedStretch.h"/> file="Source/PS_Source/ProcessedStretch.h"/>
<FILE id="TcGuiz" name="Stretch.h" compile="0" resource="0" file="Source/PS_Source/Stretch.h"/> <FILE id="TcGuiz" name="Stretch.h" compile="0" resource="0" file="Source/PS_Source/Stretch.h"/>
<FILE id="yz0SM3" name="StretchSource.h" compile="0" resource="0" file="Source/PS_Source/StretchSource.h"/> <FILE id="yz0SM3" name="StretchSource.h" compile="0" resource="0" file="Source/PS_Source/StretchSource.h"/>
<FILE id="G6XXRZ" name="AInputS.h" compile="0" resource="0" file="Source/PS_Source/Input/AInputS.h"/> <FILE id="G6XXRZ" name="AInputS.h" compile="0" resource="0" file="Source/PS_Source/Input/AInputS.h"/>
<FILE id="jSSkH5" name="InputS.h" compile="0" resource="0" file="Source/PS_Source/Input/InputS.h"/> <FILE id="jSSkH5" name="InputS.h" compile="0" resource="0" file="Source/PS_Source/Input/InputS.h"/>
<FILE id="iCUwyO" name="PaulStretchControl.cpp" compile="1" resource="0" <FILE id="iCUwyO" name="PaulStretchControl.cpp" compile="1" resource="0"
file="Source/PS_Source/PaulStretchControl.cpp"/> file="Source/PS_Source/PaulStretchControl.cpp"/>
<FILE id="EIKlL1" name="ProcessedStretch.cpp" compile="1" resource="0" <FILE id="EIKlL1" name="ProcessedStretch.cpp" compile="1" resource="0"
file="Source/PS_Source/ProcessedStretch.cpp"/> file="Source/PS_Source/ProcessedStretch.cpp"/>
<FILE id="x1qOMW" name="Stretch.cpp" compile="1" resource="0" file="Source/PS_Source/Stretch.cpp"/> <FILE id="x1qOMW" name="Stretch.cpp" compile="1" resource="0" file="Source/PS_Source/Stretch.cpp"/>
<FILE id="a7ur6I" name="StretchSource.cpp" compile="1" resource="0" <FILE id="a7ur6I" name="StretchSource.cpp" compile="1" resource="0"
file="Source/PS_Source/StretchSource.cpp"/> file="Source/PS_Source/StretchSource.cpp"/>
</GROUP> </GROUP>
<FILE id="KcXfhC" name="ps3_BufferingAudioSource.cpp" compile="1" resource="0" <FILE id="KcXfhC" name="ps3_BufferingAudioSource.cpp" compile="1" resource="0"
file="Source/ps3_BufferingAudioSource.cpp"/> file="Source/ps3_BufferingAudioSource.cpp"/>
<FILE id="oWbh5E" name="ps3_BufferingAudioSource.h" compile="0" resource="0" <FILE id="oWbh5E" name="ps3_BufferingAudioSource.h" compile="0" resource="0"
file="Source/ps3_BufferingAudioSource.h"/> file="Source/ps3_BufferingAudioSource.h"/>
<FILE id="jdPS0A" name="PluginProcessor.cpp" compile="1" resource="0" <FILE id="jdPS0A" name="PluginProcessor.cpp" compile="1" resource="0"
file="Source/PluginProcessor.cpp"/> file="Source/PluginProcessor.cpp"/>
<FILE id="pt5tX8" name="PluginProcessor.h" compile="0" resource="0" <FILE id="pt5tX8" name="PluginProcessor.h" compile="0" resource="0"
file="Source/PluginProcessor.h"/> file="Source/PluginProcessor.h"/>
<FILE id="lyNyYp" name="PluginEditor.cpp" compile="1" resource="0" <FILE id="lyNyYp" name="PluginEditor.cpp" compile="1" resource="0"
file="Source/PluginEditor.cpp"/> file="Source/PluginEditor.cpp"/>
<FILE id="IO7X2q" name="PluginEditor.h" compile="0" resource="0" file="Source/PluginEditor.h"/> <FILE id="IO7X2q" name="PluginEditor.h" compile="0" resource="0" file="Source/PluginEditor.h"/>
</GROUP> </GROUP>
</MAINGROUP> </MAINGROUP>
<EXPORTFORMATS> <EXPORTFORMATS>
<XCODE_MAC targetFolder="Builds/MacOSX"> <XCODE_MAC targetFolder="Builds/MacOSX" extraLinkerFlags="/usr/local/Cellar/fftw/3.3.6-pl2/lib/libfftw3f.a&#10;">
<CONFIGURATIONS> <CONFIGURATIONS>
<CONFIGURATION name="Debug" enablePluginBinaryCopyStep="1" isDebug="1" optimisation="1" <CONFIGURATION name="Debug" enablePluginBinaryCopyStep="1" isDebug="1" optimisation="1"
linkTimeOptimisation="0" targetName="paulstretchplugin" headerPath="Source/PS_Source&#10;Source/WDL&#10;"/> linkTimeOptimisation="0" targetName="paulstretchplugin" headerPath="Source/PS_Source&#10;Source/WDL&#10;"
<CONFIGURATION name="Release" enablePluginBinaryCopyStep="1" isDebug="0" optimisation="3" libraryPath="/usr/local/Cellar/fftw/3.3.6-pl2/lib" cppLibType="libc++"
linkTimeOptimisation="1" targetName="paulstretchplugin" headerPath="Source/PS_Source&#10;Source/WDL&#10;"/> osxArchitecture="64BitIntel" osxCompatibility="10.9 SDK"/>
</CONFIGURATIONS> <CONFIGURATION name="Release" enablePluginBinaryCopyStep="1" isDebug="0" optimisation="3"
<MODULEPATHS> linkTimeOptimisation="1" targetName="paulstretchplugin" headerPath="Source/PS_Source&#10;Source/WDL&#10;"
<MODULEPATH id="juce_core" path="../JUCE/modules"/> osxCompatibility="10.9 SDK" osxArchitecture="64BitIntel" cppLibType="libc++"
<MODULEPATH id="juce_events" path="../JUCE/modules"/> libraryPath="/usr/local/Cellar/fftw/3.3.6-pl2/lib"/>
<MODULEPATH id="juce_graphics" path="../JUCE/modules"/> </CONFIGURATIONS>
<MODULEPATH id="juce_data_structures" path="../JUCE/modules"/> <MODULEPATHS>
<MODULEPATH id="juce_gui_basics" path="../JUCE/modules"/> <MODULEPATH id="juce_core" path="../JUCE/modules"/>
<MODULEPATH id="juce_gui_extra" path="../JUCE/modules"/> <MODULEPATH id="juce_events" path="../JUCE/modules"/>
<MODULEPATH id="juce_cryptography" path="../JUCE/modules"/> <MODULEPATH id="juce_graphics" path="../JUCE/modules"/>
<MODULEPATH id="juce_opengl" path="../JUCE/modules"/> <MODULEPATH id="juce_data_structures" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_basics" path="../JUCE/modules"/> <MODULEPATH id="juce_gui_basics" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_devices" path="../JUCE/modules"/> <MODULEPATH id="juce_gui_extra" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_formats" path="../JUCE/modules"/> <MODULEPATH id="juce_cryptography" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_processors" path="../JUCE/modules"/> <MODULEPATH id="juce_opengl" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_plugin_client" path="../JUCE/modules"/> <MODULEPATH id="juce_audio_basics" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_utils" path="../JUCE/modules"/> <MODULEPATH id="juce_audio_devices" path="../JUCE/modules"/>
</MODULEPATHS> <MODULEPATH id="juce_audio_formats" path="../JUCE/modules"/>
</XCODE_MAC> <MODULEPATH id="juce_audio_processors" path="../JUCE/modules"/>
<VS2017 targetFolder="Builds/VisualStudio2017" externalLibraries="C:\ProgrammingProjects\gitrepos\fftw-3.3.6\fftw-3.3-libs\x64\Static-Release\libfftwf-3.3.lib"> <MODULEPATH id="juce_audio_plugin_client" path="../JUCE/modules"/>
<CONFIGURATIONS> <MODULEPATH id="juce_audio_utils" path="../JUCE/modules"/>
<CONFIGURATION name="Debug" winWarningLevel="4" generateManifest="1" winArchitecture="x64" </MODULEPATHS>
debugInformationFormat="ProgramDatabase" enablePluginBinaryCopyStep="1" </XCODE_MAC>
linkTimeOptimisation="0" isDebug="1" optimisation="1" targetName="paulstretchplugin" <VS2017 targetFolder="Builds/VisualStudio2017" externalLibraries="C:\ProgrammingProjects\gitrepos\fftw-3.3.6\fftw-3.3-libs\x64\Static-Release\libfftwf-3.3.lib">
headerPath="Source/PS_Source&#10;Source/WDL&#10;" vstBinaryLocation="C:\VSTPlugins"/> <CONFIGURATIONS>
<CONFIGURATION name="Release" winWarningLevel="4" generateManifest="1" winArchitecture="x64" <CONFIGURATION name="Debug" winWarningLevel="4" generateManifest="1" winArchitecture="x64"
debugInformationFormat="ProgramDatabase" enablePluginBinaryCopyStep="1" debugInformationFormat="ProgramDatabase" enablePluginBinaryCopyStep="1"
linkTimeOptimisation="0" isDebug="0" optimisation="3" targetName="paulstretchplugin" linkTimeOptimisation="0" isDebug="1" optimisation="1" targetName="paulstretchplugin"
headerPath="Source/PS_Source&#10;Source/WDL&#10;" vstBinaryLocation="C:\VSTPlugins"/> headerPath="Source/PS_Source&#10;Source/WDL&#10;" vstBinaryLocation="C:\VSTPlugins"/>
</CONFIGURATIONS> <CONFIGURATION name="Release" winWarningLevel="4" generateManifest="1" winArchitecture="x64"
<MODULEPATHS> debugInformationFormat="ProgramDatabase" enablePluginBinaryCopyStep="1"
<MODULEPATH id="juce_core" path="../JUCE/modules"/> linkTimeOptimisation="1" isDebug="0" optimisation="3" targetName="paulstretchplugin"
<MODULEPATH id="juce_events" path="../JUCE/modules"/> headerPath="Source/PS_Source&#10;Source/WDL&#10;" vstBinaryLocation="C:\VSTPlugins"/>
<MODULEPATH id="juce_graphics" path="../JUCE/modules"/> </CONFIGURATIONS>
<MODULEPATH id="juce_data_structures" path="../JUCE/modules"/> <MODULEPATHS>
<MODULEPATH id="juce_gui_basics" path="../JUCE/modules"/> <MODULEPATH id="juce_core" path="../JUCE/modules"/>
<MODULEPATH id="juce_gui_extra" path="../JUCE/modules"/> <MODULEPATH id="juce_events" path="../JUCE/modules"/>
<MODULEPATH id="juce_cryptography" path="../JUCE/modules"/> <MODULEPATH id="juce_graphics" path="../JUCE/modules"/>
<MODULEPATH id="juce_opengl" path="../JUCE/modules"/> <MODULEPATH id="juce_data_structures" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_basics" path="../JUCE/modules"/> <MODULEPATH id="juce_gui_basics" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_devices" path="../JUCE/modules"/> <MODULEPATH id="juce_gui_extra" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_formats" path="../JUCE/modules"/> <MODULEPATH id="juce_cryptography" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_processors" path="../JUCE/modules"/> <MODULEPATH id="juce_opengl" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_plugin_client" path="../JUCE/modules"/> <MODULEPATH id="juce_audio_basics" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_utils" path="../JUCE/modules"/> <MODULEPATH id="juce_audio_devices" path="../JUCE/modules"/>
</MODULEPATHS> <MODULEPATH id="juce_audio_formats" path="../JUCE/modules"/>
</VS2017> <MODULEPATH id="juce_audio_processors" path="../JUCE/modules"/>
<LINUX_MAKE targetFolder="Builds/LinuxMakefile"> <MODULEPATH id="juce_audio_plugin_client" path="../JUCE/modules"/>
<CONFIGURATIONS> <MODULEPATH id="juce_audio_utils" path="../JUCE/modules"/>
<CONFIGURATION name="Debug" isDebug="1" optimisation="1" linkTimeOptimisation="0" </MODULEPATHS>
targetName="paulstretchplugin"/> </VS2017>
<CONFIGURATION name="Release" isDebug="0" optimisation="3" linkTimeOptimisation="1" <LINUX_MAKE targetFolder="Builds/LinuxMakefile">
targetName="paulstretchplugin"/> <CONFIGURATIONS>
</CONFIGURATIONS> <CONFIGURATION name="Debug" isDebug="1" optimisation="1" linkTimeOptimisation="0"
<MODULEPATHS> targetName="paulstretchplugin"/>
<MODULEPATH id="juce_core" path="../JUCE/modules"/> <CONFIGURATION name="Release" isDebug="0" optimisation="3" linkTimeOptimisation="1"
<MODULEPATH id="juce_events" path="../JUCE/modules"/> targetName="paulstretchplugin"/>
<MODULEPATH id="juce_graphics" path="../JUCE/modules"/> </CONFIGURATIONS>
<MODULEPATH id="juce_data_structures" path="../JUCE/modules"/> <MODULEPATHS>
<MODULEPATH id="juce_gui_basics" path="../JUCE/modules"/> <MODULEPATH id="juce_core" path="../JUCE/modules"/>
<MODULEPATH id="juce_gui_extra" path="../JUCE/modules"/> <MODULEPATH id="juce_events" path="../JUCE/modules"/>
<MODULEPATH id="juce_cryptography" path="../JUCE/modules"/> <MODULEPATH id="juce_graphics" path="../JUCE/modules"/>
<MODULEPATH id="juce_opengl" path="../JUCE/modules"/> <MODULEPATH id="juce_data_structures" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_basics" path="../JUCE/modules"/> <MODULEPATH id="juce_gui_basics" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_devices" path="../JUCE/modules"/> <MODULEPATH id="juce_gui_extra" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_formats" path="../JUCE/modules"/> <MODULEPATH id="juce_cryptography" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_processors" path="../JUCE/modules"/> <MODULEPATH id="juce_opengl" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_plugin_client" path="../JUCE/modules"/> <MODULEPATH id="juce_audio_basics" path="../JUCE/modules"/>
<MODULEPATH id="juce_audio_utils" path="../JUCE/modules"/> <MODULEPATH id="juce_audio_devices" path="../JUCE/modules"/>
</MODULEPATHS> <MODULEPATH id="juce_audio_formats" path="../JUCE/modules"/>
</LINUX_MAKE> <MODULEPATH id="juce_audio_processors" path="../JUCE/modules"/>
</EXPORTFORMATS> <MODULEPATH id="juce_audio_plugin_client" path="../JUCE/modules"/>
<MODULES> <MODULEPATH id="juce_audio_utils" path="../JUCE/modules"/>
<MODULE id="juce_audio_basics" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> </MODULEPATHS>
<MODULE id="juce_audio_devices" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> </LINUX_MAKE>
<MODULE id="juce_audio_formats" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> </EXPORTFORMATS>
<MODULE id="juce_audio_plugin_client" showAllCode="1" useLocalCopy="0" <MODULES>
useGlobalPath="1"/> <MODULE id="juce_audio_basics" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
<MODULE id="juce_audio_processors" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> <MODULE id="juce_audio_devices" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
<MODULE id="juce_audio_utils" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> <MODULE id="juce_audio_formats" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
<MODULE id="juce_core" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> <MODULE id="juce_audio_plugin_client" showAllCode="1" useLocalCopy="0"
<MODULE id="juce_cryptography" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> useGlobalPath="1"/>
<MODULE id="juce_data_structures" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> <MODULE id="juce_audio_processors" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
<MODULE id="juce_events" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> <MODULE id="juce_audio_utils" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
<MODULE id="juce_graphics" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> <MODULE id="juce_core" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
<MODULE id="juce_gui_basics" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> <MODULE id="juce_cryptography" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
<MODULE id="juce_gui_extra" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> <MODULE id="juce_data_structures" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
<MODULE id="juce_opengl" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/> <MODULE id="juce_events" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
</MODULES> <MODULE id="juce_graphics" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
<JUCEOPTIONS JUCE_QUICKTIME="disabled"/> <MODULE id="juce_gui_basics" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
</JUCERPROJECT> <MODULE id="juce_gui_extra" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
<MODULE id="juce_opengl" showAllCode="1" useLocalCopy="0" useGlobalPath="1"/>
</MODULES>
<JUCEOPTIONS JUCE_QUICKTIME="disabled"/>
</JUCERPROJECT>