| @@ -44,6 +44,7 @@ public: | |||
| diagnosticsBox.setScrollbarsShown (true); | |||
| diagnosticsBox.setCaretVisible (false); | |||
| diagnosticsBox.setPopupMenuEnabled (true); | |||
| diagnosticsBox.setColour (TextEditor::textColourId, Colours::white); | |||
| diagnosticsBox.setColour (TextEditor::backgroundColourId, Colour (0x32ffffff)); | |||
| diagnosticsBox.setColour (TextEditor::outlineColourId, Colour (0x1c000000)); | |||
| diagnosticsBox.setColour (TextEditor::shadowColourId, Colour (0x16000000)); | |||
| @@ -85,6 +86,8 @@ public: | |||
| logMessage ("Current audio device: " + device->getName().quoted()); | |||
| logMessage ("Sample rate: " + String (device->getCurrentSampleRate()) + " Hz"); | |||
| logMessage ("Block size: " + String (device->getCurrentBufferSizeSamples()) + " samples"); | |||
| logMessage ("Output Latency: " + String (device->getOutputLatencyInSamples()) + " samples"); | |||
| logMessage ("Input Latency: " + String (device->getInputLatencyInSamples()) + " samples"); | |||
| logMessage ("Bit depth: " + String (device->getCurrentBitDepth())); | |||
| logMessage ("Input channel names: " + device->getInputChannelNames().joinIntoString (", ")); | |||
| logMessage ("Active input channels: " + getListOfActiveBits (device->getActiveInputChannels())); | |||
| @@ -105,6 +105,7 @@ public: | |||
| { | |||
| setOpaque (true); | |||
| // MIDI Inputs | |||
| addAndMakeVisible (midiInputListLabel); | |||
| midiInputListLabel.setText ("MIDI Input:", dontSendNotification); | |||
| midiInputListLabel.attachToComponent (&midiInputList, true); | |||
| @@ -115,7 +116,7 @@ public: | |||
| midiInputList.addItemList (midiInputs, 1); | |||
| midiInputList.addListener (this); | |||
| // find the first enabled device and use that bu default | |||
| // find the first enabled device and use that by default | |||
| for (int i = 0; i < midiInputs.size(); ++i) | |||
| { | |||
| if (deviceManager.isMidiInputEnabled (midiInputs[i])) | |||
| @@ -129,6 +130,17 @@ public: | |||
| if (midiInputList.getSelectedId() == 0) | |||
| setMidiInput (0); | |||
| // MIDI Outputs | |||
| addAndMakeVisible (midiOutputListLabel); | |||
| midiOutputListLabel.setText ("MIDI Output:", dontSendNotification); | |||
| midiOutputListLabel.attachToComponent (&midiOutputList, true); | |||
| addAndMakeVisible (midiOutputList); | |||
| midiOutputList.setTextWhenNoChoicesAvailable ("No MIDI Output Enabled"); | |||
| midiOutputList.addItemList (MidiOutput::getDevices(), 1); | |||
| midiOutputList.addListener (this); | |||
| addAndMakeVisible (keyboardComponent); | |||
| keyboardState.addListener (this); | |||
| @@ -154,14 +166,15 @@ public: | |||
| { | |||
| Rectangle<int> area (getLocalBounds()); | |||
| midiInputList.setBounds (area.removeFromTop (36).removeFromRight (getWidth() - 150).reduced (8)); | |||
| midiOutputList.setBounds (area.removeFromTop (36).removeFromRight (getWidth() - 150).reduced (8)); | |||
| keyboardComponent.setBounds (area.removeFromTop (80).reduced(8)); | |||
| messageListBox.setBounds (area.reduced (8)); | |||
| } | |||
| private: | |||
| AudioDeviceManager& deviceManager; | |||
| ComboBox midiInputList; | |||
| Label midiInputListLabel; | |||
| ComboBox midiInputList, midiOutputList; | |||
| Label midiInputListLabel, midiOutputListLabel; | |||
| int lastInputIndex; | |||
| bool isAddingFromMidiInput; | |||
| @@ -171,6 +184,7 @@ private: | |||
| ListBox messageListBox; | |||
| Array<MidiMessage> midiMessageList; | |||
| MidiLogListBoxModel midiLogListBoxModel; | |||
| ScopedPointer<MidiOutput> currentMidiOutput; | |||
| //============================================================================== | |||
| /** Starts listening to a MIDI input device, enabling it if necessary. */ | |||
| @@ -191,10 +205,22 @@ private: | |||
| lastInputIndex = index; | |||
| } | |||
| //============================================================================== | |||
| void setMidiOutput (int index) | |||
| { | |||
| currentMidiOutput = nullptr; | |||
| if (MidiOutput::getDevices() [index].isNotEmpty()) | |||
| { | |||
| currentMidiOutput = MidiOutput::openDevice (index); | |||
| jassert (currentMidiOutput); | |||
| } | |||
| } | |||
| void comboBoxChanged (ComboBox* box) override | |||
| { | |||
| if (box == &midiInputList) | |||
| setMidiInput (midiInputList.getSelectedItemIndex()); | |||
| if (box == &midiInputList) setMidiInput (midiInputList.getSelectedItemIndex()); | |||
| if (box == &midiOutputList) setMidiOutput (midiOutputList.getSelectedItemIndex()); | |||
| } | |||
| // These methods handle callbacks from the midi device + on-screen keyboard.. | |||
| @@ -243,6 +269,9 @@ private: | |||
| void postMessageToList (const MidiMessage& message) | |||
| { | |||
| if (currentMidiOutput != nullptr) | |||
| currentMidiOutput->sendMessageNow (message); | |||
| (new IncomingMessageCallback (this, message))->post(); | |||
| } | |||
| @@ -26,7 +26,7 @@ public: | |||
| //============================================================================== | |||
| void initialise (const String& commandLine) override | |||
| { | |||
| ignoreUnused (commandLine); | |||
| ignoreUnused (commandLine); | |||
| // This method is where you should put your application's initialisation code.. | |||
| mainWindow = new MainWindow (getApplicationName()); | |||
| @@ -49,7 +49,7 @@ public: | |||
| void anotherInstanceStarted (const String& commandLine) override | |||
| { | |||
| ignoreUnused (commandLine); | |||
| ignoreUnused (commandLine); | |||
| // When another instance of the app is launched while this one is running, | |||
| // this method is invoked, and the commandLine parameter tells you what | |||
| // the other instance's command-line arguments were. | |||
| @@ -56,7 +56,7 @@ public: | |||
| //============================================================================== | |||
| void paintListBoxItem (int row, Graphics& g, int width, int height, bool rowIsSelected) override | |||
| { | |||
| ignoreUnused (rowIsSelected); | |||
| ignoreUnused (rowIsSelected); | |||
| if (isPositiveAndBelow (row, oscLogList.size())) | |||
| { | |||
| @@ -26,7 +26,7 @@ public: | |||
| //============================================================================== | |||
| void initialise (const String& commandLine) override | |||
| { | |||
| ignoreUnused (commandLine); | |||
| ignoreUnused (commandLine); | |||
| // This method is where you should put your application's initialisation code.. | |||
| mainWindow = new MainWindow (getApplicationName()); | |||
| @@ -49,7 +49,7 @@ public: | |||
| void anotherInstanceStarted (const String& commandLine) override | |||
| { | |||
| ignoreUnused (commandLine); | |||
| ignoreUnused (commandLine); | |||
| // When another instance of the app is launched while this one is running, | |||
| // this method is invoked, and the commandLine parameter tells you what | |||
| // the other instance's command-line arguments were. | |||
| @@ -26,7 +26,7 @@ public: | |||
| //============================================================================== | |||
| void initialise (const String& commandLine) override | |||
| { | |||
| ignoreUnused (commandLine); | |||
| ignoreUnused (commandLine); | |||
| // This method is where you should put your application's initialisation code.. | |||
| mainWindow = new MainWindow (getApplicationName()); | |||
| @@ -49,7 +49,7 @@ public: | |||
| void anotherInstanceStarted (const String& commandLine) override | |||
| { | |||
| ignoreUnused (commandLine); | |||
| ignoreUnused (commandLine); | |||
| // When another instance of the app is launched while this one is running, | |||
| // this method is invoked, and the commandLine parameter tells you what | |||
| // the other instance's command-line arguments were. | |||
| @@ -250,7 +250,7 @@ void JuceDemoPluginAudioProcessor::process (AudioBuffer<FloatType>& buffer, | |||
| template <typename FloatType> | |||
| void JuceDemoPluginAudioProcessor::applyGain (AudioBuffer<FloatType>& buffer, AudioBuffer<FloatType>& delayBuffer) | |||
| { | |||
| ignoreUnused (delayBuffer); | |||
| ignoreUnused (delayBuffer); | |||
| const float gainLevel = *gainParam; | |||
| for (int channel = 0; channel < getNumInputChannels(); ++channel) | |||
| @@ -591,17 +591,17 @@ private: | |||
| overwriteFileIfDifferentOrThrow (file, mo); | |||
| } | |||
| struct ShouldFileBeCompiledPredicate | |||
| { | |||
| bool operator() (const Project::Item& projectItem) const { return projectItem.shouldBeCompiled(); } | |||
| }; | |||
| void writeAndroidMk (const File& file) const | |||
| { | |||
| Array<RelativePath> files; | |||
| struct Predicate | |||
| { | |||
| bool operator() (const Project::Item& projectItem) const { return projectItem.shouldBeCompiled(); } | |||
| }; | |||
| for (int i = 0; i < getAllGroups().size(); ++i) | |||
| findAllProjectItemsWithPredicate (getAllGroups().getReference(i), files, Predicate()); | |||
| findAllProjectItemsWithPredicate (getAllGroups().getReference(i), files, ShouldFileBeCompiledPredicate()); | |||
| MemoryOutputStream mo; | |||
| writeAndroidMk (mo, files); | |||
| @@ -70,8 +70,14 @@ public: | |||
| void createExporterProperties (PropertyListBuilder& props) override | |||
| { | |||
| AndroidProjectExporterBase::createExporterProperties (props); | |||
| props.add (new TextPropertyComponent (getNDKPlatformVersionValue(), "NDK Platform Version", 32, false), | |||
| "The value to use for android$user.ndk.platformVersion in Gradle"); | |||
| } | |||
| Value getNDKPlatformVersionValue() { return getSetting (Ids::androidNdkPlatformVersion); } | |||
| String getNDKPlatformVersionString() const { return settings [Ids::androidNdkPlatformVersion]; } | |||
| void create (const OwnedArray<LibraryModule>& modules) const override | |||
| { | |||
| const File targetFolder (getTargetFolder()); | |||
| @@ -245,14 +251,15 @@ private: | |||
| static String sanitisePath (String path) | |||
| { | |||
| if (path.startsWith ("~")) | |||
| { | |||
| const String homeFolder (File::getSpecialLocation (File::SpecialLocationType::userHomeDirectory).getFullPathName()); | |||
| return expandHomeFolderToken (path).replace ("\\", "\\\\"); | |||
| } | |||
| path = path.replaceSection (0, 1, homeFolder); | |||
| } | |||
| static String expandHomeFolderToken (const String& path) | |||
| { | |||
| String homeFolder = File::getSpecialLocation (File::userHomeDirectory).getFullPathName(); | |||
| return path.replace ("\\", "\\\\"); | |||
| return path.replace ("${user.home}", homeFolder) | |||
| .replace ("~", homeFolder); | |||
| } | |||
| void writeLocalDotProperties (const File& folder) const | |||
| @@ -366,6 +373,11 @@ private: | |||
| return result; | |||
| } | |||
| struct ShouldBeAddedToProjectPredicate | |||
| { | |||
| bool operator() (const Project::Item& projectItem) const { return projectItem.shouldBeAddedToTargetProject(); } | |||
| }; | |||
| StringArray getCPPFlags() const | |||
| { | |||
| StringArray result; | |||
| @@ -382,6 +394,7 @@ private: | |||
| { | |||
| StringPairArray preprocessorDefinitions = getAllPreprocessorDefs(); | |||
| preprocessorDefinitions.set ("JUCE_ANDROID", "1"); | |||
| preprocessorDefinitions.set ("JUCE_ANDROID_API_VERSION", getMinimumSDKVersionString()); | |||
| preprocessorDefinitions.set ("JUCE_ANDROID_ACTIVITY_CLASSNAME", getJNIActivityClassName().replaceCharacter ('/', '_')); | |||
| preprocessorDefinitions.set ("JUCE_ANDROID_ACTIVITY_CLASSPATH", "\\\"" + getActivityClassPath().replaceCharacter('.', '/') + "\\\""); | |||
| @@ -401,13 +414,8 @@ private: | |||
| Array<RelativePath> cppFiles; | |||
| const Array<Project::Item>& groups = getAllGroups(); | |||
| struct Predicate | |||
| { | |||
| bool operator() (const Project::Item& projectItem) const { return projectItem.shouldBeAddedToTargetProject(); } | |||
| }; | |||
| for (int i = 0; i < groups.size(); ++i) | |||
| findAllProjectItemsWithPredicate (groups.getReference (i), cppFiles, Predicate()); | |||
| findAllProjectItemsWithPredicate (groups.getReference (i), cppFiles, ShouldBeAddedToProjectPredicate()); | |||
| for (int i = 0; i < cppFiles.size(); ++i) | |||
| { | |||
| @@ -442,12 +450,17 @@ private: | |||
| String createModelDotAndroidNDK (const String& indent) const | |||
| { | |||
| String result; | |||
| const String platformVersion (getNDKPlatformVersionString()); | |||
| result << "android.ndk {" << newLine | |||
| << indent << "moduleName = \"juce_jni\"" << newLine | |||
| << indent << "stl = \"gnustl_static\"" << newLine | |||
| << indent << "toolchainVersion = 4.9" << newLine | |||
| << indent << "ext {" << newLine | |||
| << indent << "toolchainVersion = 4.9" << newLine; | |||
| if (platformVersion.isNotEmpty()) | |||
| result << indent << "platformVersion = " << getNDKPlatformVersionString() << newLine; | |||
| result << indent << "ext {" << newLine | |||
| << indent << indent << "juceRootDir = \"" << "${project.rootDir}/../../../../" << "\".toString()" << newLine | |||
| << indent << indent << "juceModuleDir = \"" << "${juceRootDir}/modules" << "\".toString()" << newLine | |||
| << indent << "}" << newLine; | |||
| @@ -155,6 +155,7 @@ namespace Ids | |||
| DECLARE_ID (androidTheme); | |||
| DECLARE_ID (androidStaticLibraries); | |||
| DECLARE_ID (androidSharedLibraries); | |||
| DECLARE_ID (androidNdkPlatformVersion); | |||
| DECLARE_ID (font); | |||
| DECLARE_ID (colour); | |||
| DECLARE_ID (userNotes); | |||
| @@ -1,160 +1,160 @@ | |||
| # Automatically generated makefile, created by the Introjucer | |||
| # Don't edit this file! Your changes will be overwritten when you re-save the Introjucer project! | |||
| # (this disables dependency generation if multiple architectures are set) | |||
| DEPFLAGS := $(if $(word 2, $(TARGET_ARCH)), , -MMD) | |||
| ifndef CONFIG | |||
| CONFIG=Debug | |||
| endif | |||
| ifeq ($(CONFIG),Debug) | |||
| BINDIR := build | |||
| LIBDIR := build | |||
| OBJDIR := build/intermediate/Debug | |||
| OUTDIR := build | |||
| ifeq ($(TARGET_ARCH),) | |||
| TARGET_ARCH := -march=native | |||
| endif | |||
| CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_6D53C8B4=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../../../modules | |||
| CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 | |||
| CXXFLAGS += $(CFLAGS) -std=c++11 | |||
| LDFLAGS += $(TARGET_ARCH) -L$(BINDIR) -L$(LIBDIR) -L/usr/X11R6/lib/ -lGL -lX11 -lXext -lXinerama -lasound -ldl -lfreetype -lpthread -lrt | |||
| TARGET := UnitTestRunner | |||
| BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH) | |||
| CLEANCMD = rm -rf $(OUTDIR)/$(TARGET) $(OBJDIR) | |||
| endif | |||
| ifeq ($(CONFIG),Release) | |||
| BINDIR := build | |||
| LIBDIR := build | |||
| OBJDIR := build/intermediate/Release | |||
| OUTDIR := build | |||
| ifeq ($(TARGET_ARCH),) | |||
| TARGET_ARCH := -march=native | |||
| endif | |||
| CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_6D53C8B4=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../../../modules | |||
| CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -O3 | |||
| CXXFLAGS += $(CFLAGS) -std=c++11 | |||
| LDFLAGS += $(TARGET_ARCH) -L$(BINDIR) -L$(LIBDIR) -fvisibility=hidden -L/usr/X11R6/lib/ -lGL -lX11 -lXext -lXinerama -lasound -ldl -lfreetype -lpthread -lrt | |||
| TARGET := UnitTestRunner | |||
| BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH) | |||
| CLEANCMD = rm -rf $(OUTDIR)/$(TARGET) $(OBJDIR) | |||
| endif | |||
| OBJECTS := \ | |||
| $(OBJDIR)/Main_90ebc5c2.o \ | |||
| $(OBJDIR)/juce_audio_basics_399a455e.o \ | |||
| $(OBJDIR)/juce_audio_devices_c1c9ba9c.o \ | |||
| $(OBJDIR)/juce_audio_formats_f04b043c.o \ | |||
| $(OBJDIR)/juce_audio_processors_eb9ae116.o \ | |||
| $(OBJDIR)/juce_core_1ee54a40.o \ | |||
| $(OBJDIR)/juce_cryptography_3b1f489a.o \ | |||
| $(OBJDIR)/juce_data_structures_84790dfc.o \ | |||
| $(OBJDIR)/juce_events_584896b4.o \ | |||
| $(OBJDIR)/juce_graphics_f9afc18.o \ | |||
| $(OBJDIR)/juce_gui_basics_90929794.o \ | |||
| $(OBJDIR)/juce_gui_extra_b81d9e1c.o \ | |||
| $(OBJDIR)/juce_opengl_1890bee0.o \ | |||
| $(OBJDIR)/juce_osc_72ef0f3c.o \ | |||
| $(OBJDIR)/juce_video_86a19d3c.o \ | |||
| .PHONY: clean | |||
| $(OUTDIR)/$(TARGET): $(OBJECTS) $(RESOURCES) | |||
| @echo Linking UnitTestRunner | |||
| -@mkdir -p $(BINDIR) | |||
| -@mkdir -p $(LIBDIR) | |||
| -@mkdir -p $(OUTDIR) | |||
| @$(BLDCMD) | |||
| clean: | |||
| @echo Cleaning UnitTestRunner | |||
| @$(CLEANCMD) | |||
| strip: | |||
| @echo Stripping UnitTestRunner | |||
| -@strip --strip-unneeded $(OUTDIR)/$(TARGET) | |||
| $(OBJDIR)/Main_90ebc5c2.o: ../../Source/Main.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling Main.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_audio_basics_399a455e.o: ../../../../modules/juce_audio_basics/juce_audio_basics.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_audio_basics.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_audio_devices_c1c9ba9c.o: ../../../../modules/juce_audio_devices/juce_audio_devices.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_audio_devices.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_audio_formats_f04b043c.o: ../../../../modules/juce_audio_formats/juce_audio_formats.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_audio_formats.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_audio_processors_eb9ae116.o: ../../../../modules/juce_audio_processors/juce_audio_processors.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_audio_processors.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_core_1ee54a40.o: ../../../../modules/juce_core/juce_core.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_core.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_cryptography_3b1f489a.o: ../../../../modules/juce_cryptography/juce_cryptography.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_cryptography.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_data_structures_84790dfc.o: ../../../../modules/juce_data_structures/juce_data_structures.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_data_structures.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_events_584896b4.o: ../../../../modules/juce_events/juce_events.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_events.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_graphics_f9afc18.o: ../../../../modules/juce_graphics/juce_graphics.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_graphics.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_gui_basics_90929794.o: ../../../../modules/juce_gui_basics/juce_gui_basics.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_gui_basics.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_gui_extra_b81d9e1c.o: ../../../../modules/juce_gui_extra/juce_gui_extra.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_gui_extra.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_opengl_1890bee0.o: ../../../../modules/juce_opengl/juce_opengl.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_opengl.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_osc_72ef0f3c.o: ../../../../modules/juce_osc/juce_osc.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_osc.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_video_86a19d3c.o: ../../../../modules/juce_video/juce_video.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_video.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| -include $(OBJECTS:%.o=%.d) | |||
| # Automatically generated makefile, created by the Introjucer | |||
| # Don't edit this file! Your changes will be overwritten when you re-save the Introjucer project! | |||
| # (this disables dependency generation if multiple architectures are set) | |||
| DEPFLAGS := $(if $(word 2, $(TARGET_ARCH)), , -MMD) | |||
| ifndef CONFIG | |||
| CONFIG=Debug | |||
| endif | |||
| ifeq ($(CONFIG),Debug) | |||
| BINDIR := build | |||
| LIBDIR := build | |||
| OBJDIR := build/intermediate/Debug | |||
| OUTDIR := build | |||
| ifeq ($(TARGET_ARCH),) | |||
| TARGET_ARCH := -march=native | |||
| endif | |||
| CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_6D53C8B4=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../../../modules | |||
| CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 | |||
| CXXFLAGS += $(CFLAGS) -std=c++11 | |||
| LDFLAGS += $(TARGET_ARCH) -L$(BINDIR) -L$(LIBDIR) -L/usr/X11R6/lib/ -lGL -lX11 -lXext -lXinerama -lasound -ldl -lfreetype -lpthread -lrt | |||
| TARGET := UnitTestRunner | |||
| BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH) | |||
| CLEANCMD = rm -rf $(OUTDIR)/$(TARGET) $(OBJDIR) | |||
| endif | |||
| ifeq ($(CONFIG),Release) | |||
| BINDIR := build | |||
| LIBDIR := build | |||
| OBJDIR := build/intermediate/Release | |||
| OUTDIR := build | |||
| ifeq ($(TARGET_ARCH),) | |||
| TARGET_ARCH := -march=native | |||
| endif | |||
| CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_6D53C8B4=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../../../modules | |||
| CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -O3 | |||
| CXXFLAGS += $(CFLAGS) -std=c++11 | |||
| LDFLAGS += $(TARGET_ARCH) -L$(BINDIR) -L$(LIBDIR) -fvisibility=hidden -L/usr/X11R6/lib/ -lGL -lX11 -lXext -lXinerama -lasound -ldl -lfreetype -lpthread -lrt | |||
| TARGET := UnitTestRunner | |||
| BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH) | |||
| CLEANCMD = rm -rf $(OUTDIR)/$(TARGET) $(OBJDIR) | |||
| endif | |||
| OBJECTS := \ | |||
| $(OBJDIR)/Main_90ebc5c2.o \ | |||
| $(OBJDIR)/juce_audio_basics_399a455e.o \ | |||
| $(OBJDIR)/juce_audio_devices_c1c9ba9c.o \ | |||
| $(OBJDIR)/juce_audio_formats_f04b043c.o \ | |||
| $(OBJDIR)/juce_audio_processors_eb9ae116.o \ | |||
| $(OBJDIR)/juce_core_1ee54a40.o \ | |||
| $(OBJDIR)/juce_cryptography_3b1f489a.o \ | |||
| $(OBJDIR)/juce_data_structures_84790dfc.o \ | |||
| $(OBJDIR)/juce_events_584896b4.o \ | |||
| $(OBJDIR)/juce_graphics_f9afc18.o \ | |||
| $(OBJDIR)/juce_gui_basics_90929794.o \ | |||
| $(OBJDIR)/juce_gui_extra_b81d9e1c.o \ | |||
| $(OBJDIR)/juce_opengl_1890bee0.o \ | |||
| $(OBJDIR)/juce_osc_72ef0f3c.o \ | |||
| $(OBJDIR)/juce_video_86a19d3c.o \ | |||
| .PHONY: clean | |||
| $(OUTDIR)/$(TARGET): $(OBJECTS) $(RESOURCES) | |||
| @echo Linking UnitTestRunner | |||
| -@mkdir -p $(BINDIR) | |||
| -@mkdir -p $(LIBDIR) | |||
| -@mkdir -p $(OUTDIR) | |||
| @$(BLDCMD) | |||
| clean: | |||
| @echo Cleaning UnitTestRunner | |||
| @$(CLEANCMD) | |||
| strip: | |||
| @echo Stripping UnitTestRunner | |||
| -@strip --strip-unneeded $(OUTDIR)/$(TARGET) | |||
| $(OBJDIR)/Main_90ebc5c2.o: ../../Source/Main.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling Main.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_audio_basics_399a455e.o: ../../../../modules/juce_audio_basics/juce_audio_basics.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_audio_basics.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_audio_devices_c1c9ba9c.o: ../../../../modules/juce_audio_devices/juce_audio_devices.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_audio_devices.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_audio_formats_f04b043c.o: ../../../../modules/juce_audio_formats/juce_audio_formats.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_audio_formats.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_audio_processors_eb9ae116.o: ../../../../modules/juce_audio_processors/juce_audio_processors.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_audio_processors.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_core_1ee54a40.o: ../../../../modules/juce_core/juce_core.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_core.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_cryptography_3b1f489a.o: ../../../../modules/juce_cryptography/juce_cryptography.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_cryptography.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_data_structures_84790dfc.o: ../../../../modules/juce_data_structures/juce_data_structures.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_data_structures.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_events_584896b4.o: ../../../../modules/juce_events/juce_events.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_events.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_graphics_f9afc18.o: ../../../../modules/juce_graphics/juce_graphics.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_graphics.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_gui_basics_90929794.o: ../../../../modules/juce_gui_basics/juce_gui_basics.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_gui_basics.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_gui_extra_b81d9e1c.o: ../../../../modules/juce_gui_extra/juce_gui_extra.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_gui_extra.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_opengl_1890bee0.o: ../../../../modules/juce_opengl/juce_opengl.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_opengl.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_osc_72ef0f3c.o: ../../../../modules/juce_osc/juce_osc.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_osc.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| $(OBJDIR)/juce_video_86a19d3c.o: ../../../../modules/juce_video/juce_video.cpp | |||
| -@mkdir -p $(OBJDIR) | |||
| @echo "Compiling juce_video.cpp" | |||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
| -include $(OBJECTS:%.o=%.d) | |||
| @@ -72,6 +72,7 @@ | |||
| 09D02F17787745163017E697 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_data_structures.h"; path = "../../../../modules/juce_data_structures/juce_data_structures.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 0A369ADB2FFC7511877CE104 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlDocument.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 0B4CE4907F3375DF10804FB2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCMessage.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCMessage.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 0B7895277BC23E85DD87B944 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Base64.cpp"; path = "../../../../modules/juce_core/text/juce_Base64.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 0C2C79B2A553FD550F81EE35 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Fonts.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_Fonts.mm"; sourceTree = "SOURCE_ROOT"; }; | |||
| 0C50FAE1C35E34FC7D0FC4EA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AbstractFifo.cpp"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 0C61E4BAB67CFE8E1E0E9ADE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageListener.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageListener.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -179,6 +180,7 @@ | |||
| 2AAC91C9F59493094CBDFCD2 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_video/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; | |||
| 2AD4699E0037E5EA8301A8FF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_android_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 2ADD79E73EAF0B99A04EF72C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Sampler.cpp"; path = "../../../../modules/juce_audio_formats/sampler/juce_Sampler.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 2AE053346CE60C8C90F08D4A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterBool.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 2B1830B30F75F02CA2585919 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyboardFocusTraverser.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 2B8385440D3E58EF0BF8D678 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel_V2.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V2.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 2B85DF39DC6F7E59C8F8288A = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_data_structures/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -247,6 +249,7 @@ | |||
| 4194BAC61CF36685C6577341 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JSON.cpp"; path = "../../../../modules/juce_core/javascript/juce_JSON.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 41ADF101EA8C63DB75DFA043 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 41B3D030B00266EA52F5EC05 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODevice.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODevice.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 41C41DEB28959CB1DF516EC8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterFloat.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterFloat.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 41FBBAEA5B88952DD3885A11 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UndoManager.cpp"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 4328B9B661A22244FF9070FE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableObjectResizer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 433570B5CB82EAAD5C34D9CE = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_processors/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -296,6 +299,7 @@ | |||
| 4FB7ACAECFBBC75BE6757F0C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SHA256.h"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 4FEE9CAE45BAEE1D1BBA83FE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageConvolutionKernel.h"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 5026CB2095EDB4805F9013AE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseCursor.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 5037C5F4567C7AD855532E28 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterChoice.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 5162BBA0C86C11D616F9F020 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DragAndDropContainer.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 517B4B514A39EC616BFA35CD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Misc.cpp"; path = "../../../../modules/juce_core/native/juce_android_Misc.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 51B55A31985E161A6DC2FC77 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -342,7 +346,6 @@ | |||
| 59EE21D372B3DFC1B453B8B4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPlayHead.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioPlayHead.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 5A0BC6E6D4AB2A287219C561 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Typeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 5A52B314306EB47411A20946 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Time.h"; path = "../../../../modules/juce_core/time/juce_Time.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 5B2BF3B40C9AABC83FA1E9F2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSampleBuffer.cpp"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 5B700FCF685F005DCC46AF6C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSubsectionReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioSubsectionReader.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 5B7207D43E415121202DE038 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Javascript.cpp"; path = "../../../../modules/juce_core/javascript/juce_Javascript.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 5B8939FA8DA30BBD5EA2B921 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -399,6 +402,7 @@ | |||
| 66E37EA9F2603E4AFD721A7B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CameraDevice.h"; path = "../../../../modules/juce_video/capture/juce_CameraDevice.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 672F2944E70066268A726D07 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPathListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 67BFDEE0B4C3E43D7080BE3C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeMovieComponent.h"; path = "../../../../modules/juce_video/playback/juce_QuickTimeMovieComponent.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 6850719123E3BEC076852604 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorParameters.cpp"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorParameters.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 691571797332562EB49B94FC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HeapBlock.h"; path = "../../../../modules/juce_core/memory/juce_HeapBlock.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 691E9B9DE8D4E05F08BB343B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorListener.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorListener.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 69522EAC01747563D7C7AA45 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPool.cpp"; path = "../../../../modules/juce_core/text/juce_StringPool.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -454,7 +458,9 @@ | |||
| 7B1D30C0166500C630DA6FB6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsPostScriptRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 7B3657F2E71AD880F9BDF5F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarComponent.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 7B6C00518CDA2A7BE9FB23E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colours.h"; path = "../../../../modules/juce_graphics/colour/juce_Colours.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 7B7B440EED4803D63433F276 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Base64.h"; path = "../../../../modules/juce_core/text/juce_Base64.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 7BC436F55CA94D4ED0A20BC6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginInstance.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioPluginInstance.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 7BED7885A640A32230199ECD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_curl_Network.cpp"; path = "../../../../modules/juce_core/native/juce_curl_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 7C0D994080DA49D7F857689E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MP3AudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_MP3AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| 7C1569CE706496770E9FF916 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GroupComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| 7C29E9FFCFFD30F863DF8E1D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiBuffer.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiBuffer.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -611,6 +617,7 @@ | |||
| A305D8BCDDEC11261066922E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Files.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| A33DDAC6F430E39DA8E28C22 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Expression.h"; path = "../../../../modules/juce_core/maths/juce_Expression.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| A370C41D4837013B7AD2FA97 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_HighResolutionTimer.cpp"; path = "../../../../modules/juce_core/threads/juce_HighResolutionTimer.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| A413B2A303984674A412461B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorValueTreeState.cpp"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| A41BB84E335B4F59F162CD82 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedPipe.h"; path = "../../../../modules/juce_core/network/juce_NamedPipe.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| A489ACC5B648D8D96D1E782B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInputSource.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| A4D744C6B381DF0CDCECC9C4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF32.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF32.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -637,6 +644,7 @@ | |||
| AA9786A0CFEB8A216C6C326F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PerformanceCounter.h"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| AABCB86C60D3D5677F296CD1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NativeMessageBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_NativeMessageBox.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| AAED8A25776EB53213A2AC8E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AnimatedAppComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_AnimatedAppComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| AB22692A2D791A3D54D8C032 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorValueTreeState.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| AB58695AF611FEF4B4B321CB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScrollBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| AB9A6F61976347D260DA5059 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF16.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF16.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| ABD7E90FBE176494D369E26E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Line.h"; path = "../../../../modules/juce_graphics/geometry/juce_Line.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -836,6 +844,7 @@ | |||
| E399B7DDFD4F84574BC6DE7F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableHeaderComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| E3D8F97C26B8E03820AFC971 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VSTPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| E3E86999B8D23D93B43E6EF8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CPlusPlusCodeTokeniserFunctions.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniserFunctions.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| E41ACBB472FE28CA91F50789 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterInt.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterInt.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| E41FCB08A114D8EDABD1FA43 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_core.h"; path = "../../../../modules/juce_core/juce_core.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| E4A2BA08BA5BC4C0902A80AC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| E4C47C328A8E254C9AE9CBEA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Decibels.h"; path = "../../../../modules/juce_audio_basics/effects/juce_Decibels.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -854,6 +863,7 @@ | |||
| E9A21F496D5DDC6CB7933A35 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_NSViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; | |||
| E9B14DC45CDADE518EEACF9A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CustomTypeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| E9C50B5DF0C6757DD6B3F67E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Slider.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| E9FA55F622DA134AF22EA129 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorParameterWithID.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorParameterWithID.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| EA1B643DE23EB2F415B84814 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IPAddress.h"; path = "../../../../modules/juce_core/network/juce_IPAddress.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| EA3EDA7EE4DF3EB95FE646A9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_QuickTimeMovieComponent.mm"; path = "../../../../modules/juce_video/native/juce_mac_QuickTimeMovieComponent.mm"; sourceTree = "SOURCE_ROOT"; }; | |||
| EA882C2C8B783A3FED2A407E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KnownPluginList.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_KnownPluginList.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -921,10 +931,10 @@ | |||
| FA70AFAE0BD47AD8C88A966F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ZipFile.h"; path = "../../../../modules/juce_core/zip/juce_ZipFile.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| FB125FA32A689C34D6B41485 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrayAllocationBase.h"; path = "../../../../modules/juce_core/containers/juce_ArrayAllocationBase.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| FC02C1C3A97FA6D57742D186 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MP3AudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_MP3AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| FCB76958E12B2D7F8277CD59 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; | |||
| 4678AA79EF868E0EF521E2CB = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = UnitTestRunner; sourceTree = "BUILT_PRODUCTS_DIR"; }; | |||
| FC1DDC35961882F3F8A0A861 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLHelpers.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLHelpers.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| FC425541E54465108E6AF87C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_CameraDevice.cpp"; path = "../../../../modules/juce_video/native/juce_win32_CameraDevice.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| FCB76958E12B2D7F8277CD59 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; | |||
| 4678AA79EF868E0EF521E2CB = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = UnitTestRunner; sourceTree = "BUILT_PRODUCTS_DIR"; }; | |||
| FCAFEE930E21FA7EED073445 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TooltipWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
| FD7E11DC3406DC0E308AA8CF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colour.h"; path = "../../../../modules/juce_graphics/colour/juce_Colour.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| FD9975BD63F041DB36EAFA85 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserListener.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserListener.h"; sourceTree = "SOURCE_ROOT"; }; | |||
| @@ -941,7 +951,6 @@ | |||
| DCDA5E047C87FC7346CEAC95 = {isa = PBXGroup; children = ( | |||
| 3119FD9D68523225E7F0D144, | |||
| 4B26E321B9E1B5C873CDA2C7, | |||
| 5B2BF3B40C9AABC83FA1E9F2, | |||
| 7E8909F2EAEC89A5DDFFE66A, | |||
| 6964A54EB78D6BEF39BAD6BE, | |||
| 1AB201C86687247ED1BE34C8, ); name = buffers; sourceTree = "<group>"; }; | |||
| @@ -1127,14 +1136,26 @@ | |||
| C49ACE35CA605BABC4997A77, | |||
| E906CEF0309D301B7495640E, | |||
| 1763FA2F0163DB596EF3700A, ); name = scanning; sourceTree = "<group>"; }; | |||
| 4661CAE20E855F3E2858F466 = {isa = PBXGroup; children = ( | |||
| 2AE053346CE60C8C90F08D4A, | |||
| 5037C5F4567C7AD855532E28, | |||
| 41C41DEB28959CB1DF516EC8, | |||
| E41ACBB472FE28CA91F50789, | |||
| 6850719123E3BEC076852604, | |||
| E9FA55F622DA134AF22EA129, | |||
| A413B2A303984674A412461B, | |||
| AB22692A2D791A3D54D8C032, ); name = utilities; sourceTree = "<group>"; }; | |||
| 67E024FB39CF9D5F419DFBF5 = {isa = PBXGroup; children = ( | |||
| 0CD4E1D56790D679DC1A71C4, | |||
| 0BCE646AE0A4FE768DCBA2CE, | |||
| C5DD3460F92C6FB3151B497C, | |||
| 116EF492D8ED939939B9A2A4, | |||
| 4661CAE20E855F3E2858F466, | |||
| 433570B5CB82EAAD5C34D9CE, | |||
| 7313349086C4EA845E401115, ); name = "juce_audio_processors"; sourceTree = "<group>"; }; | |||
| 960867EA1D637A31A30C1A7E = {isa = PBXGroup; children = ( | |||
| 0B7895277BC23E85DD87B944, | |||
| 7B7B440EED4803D63433F276, | |||
| 554308DDD8025AA615896FC4, | |||
| D7839FF284BB06FA60DCEEE0, | |||
| CE4C2262B73CB9E3D7D0F5A9, | |||
| @@ -1324,6 +1345,7 @@ | |||
| 4F7C3C74A4D98519D93BCA58, | |||
| 9D8D638179CCD34DE1EA728C, | |||
| 80DE7559F9A8537F036F47BE, | |||
| 7BED7885A640A32230199ECD, | |||
| 56F00A4C470A5E33F8702FEB, | |||
| A305D8BCDDEC11261066922E, | |||
| 39F41D98ED115B51A360386D, | |||
| @@ -2061,7 +2083,9 @@ | |||
| HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../../modules", "$(inherited)"); | |||
| INFOPLIST_FILE = Info.plist; | |||
| INSTALL_PATH = "/usr/bin"; | |||
| MACOSX_DEPLOYMENT_TARGET = 10.10; | |||
| MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; | |||
| OTHER_CPLUSPLUSFLAGS = "-pedantic-errors -Wreorder -Wconstant-conversion -Wint-conversion -Woverloaded-virtual -Wuninitialized -Wunused-parameter -Wshorten-64-to-32 -Wstrict-aliasing -Wshadow -Wconversion -Wsign-compare -Wsign-conversion"; | |||
| SDKROOT_ppc = macosx10.5; }; name = Debug; }; | |||
| CB72F298783F8212D048A91B = {isa = XCBuildConfiguration; buildSettings = { | |||
| CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; | |||
| @@ -2083,7 +2107,9 @@ | |||
| HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../../modules", "$(inherited)"); | |||
| INFOPLIST_FILE = Info.plist; | |||
| INSTALL_PATH = "/usr/bin"; | |||
| MACOSX_DEPLOYMENT_TARGET = 10.10; | |||
| MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; | |||
| OTHER_CPLUSPLUSFLAGS = "-pedantic-errors -Wreorder -Wconstant-conversion -Wint-conversion -Woverloaded-virtual -Wuninitialized -Wunused-parameter -Wshorten-64-to-32 -Wstrict-aliasing -Wshadow -Wconversion -Wsign-compare -Wsign-conversion"; | |||
| SDKROOT_ppc = macosx10.5; }; name = Release; }; | |||
| 53146F81C8222491DC6DF2A5 = {isa = XCBuildConfiguration; buildSettings = { | |||
| ALWAYS_SEARCH_USER_PATHS = NO; | |||
| @@ -133,9 +133,6 @@ | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_basics\buffers\juce_AudioDataConverters.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_basics\buffers\juce_AudioSampleBuffer.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_basics\buffers\juce_FloatVectorOperations.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| @@ -349,6 +346,15 @@ | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_processors\scanning\juce_PluginListComponent.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioProcessorParameters.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioProcessorValueTreeState.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_core\text\juce_Base64.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_core\text\juce_CharacterFunctions.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| @@ -541,6 +547,9 @@ | |||
| <ClCompile Include="..\..\..\..\modules\juce_core\native\juce_android_Threads.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_core\native\juce_curl_Network.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_core\native\juce_linux_CommonFile.cpp"> | |||
| <ExcludedFromBuild>true</ExcludedFromBuild> | |||
| </ClCompile> | |||
| @@ -1342,7 +1351,14 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\scanning\juce_KnownPluginList.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\scanning\juce_PluginDirectoryScanner.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\scanning\juce_PluginListComponent.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterInt.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioProcessorParameterWithID.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioProcessorValueTreeState.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_core\text\juce_Base64.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_core\text\juce_CharacterFunctions.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_core\text\juce_CharPointer_ASCII.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_core\text\juce_CharPointer_UTF8.h"/> | |||
| @@ -74,6 +74,9 @@ | |||
| <Filter Include="Juce Modules\juce_audio_processors\scanning"> | |||
| <UniqueIdentifier>{EB8DD942-E2CB-869F-D381-E02A65BA790B}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="Juce Modules\juce_audio_processors\utilities"> | |||
| <UniqueIdentifier>{8F91DFC0-7A71-1BA8-D8D9-6B4CF49151A4}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="Juce Modules\juce_core"> | |||
| <UniqueIdentifier>{95CA1506-2B94-0DEE-0C8D-85EDEBBC4E88}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -313,9 +316,6 @@ | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_basics\buffers\juce_AudioDataConverters.cpp"> | |||
| <Filter>Juce Modules\juce_audio_basics\buffers</Filter> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_basics\buffers\juce_AudioSampleBuffer.cpp"> | |||
| <Filter>Juce Modules\juce_audio_basics\buffers</Filter> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_basics\buffers\juce_FloatVectorOperations.cpp"> | |||
| <Filter>Juce Modules\juce_audio_basics\buffers</Filter> | |||
| </ClCompile> | |||
| @@ -538,6 +538,15 @@ | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_processors\scanning\juce_PluginListComponent.cpp"> | |||
| <Filter>Juce Modules\juce_audio_processors\scanning</Filter> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioProcessorParameters.cpp"> | |||
| <Filter>Juce Modules\juce_audio_processors\utilities</Filter> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioProcessorValueTreeState.cpp"> | |||
| <Filter>Juce Modules\juce_audio_processors\utilities</Filter> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_core\text\juce_Base64.cpp"> | |||
| <Filter>Juce Modules\juce_core\text</Filter> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_core\text\juce_CharacterFunctions.cpp"> | |||
| <Filter>Juce Modules\juce_core\text</Filter> | |||
| </ClCompile> | |||
| @@ -730,6 +739,9 @@ | |||
| <ClCompile Include="..\..\..\..\modules\juce_core\native\juce_android_Threads.cpp"> | |||
| <Filter>Juce Modules\juce_core\native</Filter> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_core\native\juce_curl_Network.cpp"> | |||
| <Filter>Juce Modules\juce_core\native</Filter> | |||
| </ClCompile> | |||
| <ClCompile Include="..\..\..\..\modules\juce_core\native\juce_linux_CommonFile.cpp"> | |||
| <Filter>Juce Modules\juce_core\native</Filter> | |||
| </ClCompile> | |||
| @@ -1779,9 +1791,30 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\scanning\juce_PluginListComponent.h"> | |||
| <Filter>Juce Modules\juce_audio_processors\scanning</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"> | |||
| <Filter>Juce Modules\juce_audio_processors\utilities</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"> | |||
| <Filter>Juce Modules\juce_audio_processors\utilities</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"> | |||
| <Filter>Juce Modules\juce_audio_processors\utilities</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterInt.h"> | |||
| <Filter>Juce Modules\juce_audio_processors\utilities</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioProcessorParameterWithID.h"> | |||
| <Filter>Juce Modules\juce_audio_processors\utilities</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioProcessorValueTreeState.h"> | |||
| <Filter>Juce Modules\juce_audio_processors\utilities</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"> | |||
| <Filter>Juce Modules\juce_audio_processors</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_core\text\juce_Base64.h"> | |||
| <Filter>Juce Modules\juce_core\text</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_core\text\juce_CharacterFunctions.h"> | |||
| <Filter>Juce Modules\juce_core\text</Filter> | |||
| </ClInclude> | |||
| @@ -22,7 +22,7 @@ BEGIN | |||
| BLOCK "VarFileInfo" | |||
| BEGIN | |||
| VALUE "Translation", 0x409, 65001 | |||
| VALUE "Translation", 0x409, 1252 | |||
| END | |||
| END | |||
| @@ -142,6 +142,10 @@ | |||
| //#define JUCE_INCLUDE_ZLIB_CODE | |||
| #endif | |||
| #ifndef JUCE_USE_CURL | |||
| //#define JUCE_USE_CURL | |||
| #endif | |||
| //============================================================================== | |||
| // juce_graphics flags: | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_audio_basics/juce_audio_basics.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_audio_devices/juce_audio_devices.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_audio_formats/juce_audio_formats.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_audio_processors/juce_audio_processors.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_core/juce_core.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_cryptography/juce_cryptography.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_data_structures/juce_data_structures.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_events/juce_events.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_graphics/juce_graphics.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_gui_basics/juce_gui_basics.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_gui_extra/juce_gui_extra.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_opengl/juce_opengl.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_osc/juce_osc.h" | |||
| @@ -2,4 +2,3 @@ | |||
| // module headers to the correct external folder. | |||
| #include "../../../../../modules/juce_video/juce_video.h" | |||
| @@ -45,6 +45,8 @@ class ConsoleUnitTestRunner : public UnitTestRunner | |||
| //============================================================================== | |||
| int main (int argc, char* argv[]) | |||
| { | |||
| ignoreUnused (argc, argv); | |||
| ScopedPointer<ConsoleLogger> logger; | |||
| Logger::setCurrentLogger (logger); | |||
| @@ -2,19 +2,19 @@ | |||
| <JUCERPROJECT id="Z2Xzcp" name="UnitTestRunner" projectType="consoleapp" version="1.0.0" | |||
| bundleIdentifier="com.yourcompany.UnitTestRunner" includeBinaryInAppConfig="1" | |||
| jucerVersion="3.2.0" defines="JUCE_UNIT_TESTS=1"> | |||
| jucerVersion="4.0.1" defines="JUCE_UNIT_TESTS=1"> | |||
| <MAINGROUP id="GZdWCU" name="UnitTestRunner"> | |||
| <GROUP id="{22894462-E1A9-036F-ED94-B51A50C87552}" name="Source"> | |||
| <FILE id="ynaYaM" name="Main.cpp" compile="1" resource="0" file="Source/Main.cpp"/> | |||
| </GROUP> | |||
| </MAINGROUP> | |||
| <EXPORTFORMATS> | |||
| <XCODE_MAC targetFolder="Builds/MacOSX"> | |||
| <XCODE_MAC targetFolder="Builds/MacOSX" extraCompilerFlags="-pedantic-errors -Wreorder -Wconstant-conversion -Wint-conversion -Woverloaded-virtual -Wuninitialized -Wunused-parameter -Wshorten-64-to-32 -Wstrict-aliasing -Wshadow -Wconversion -Wsign-compare -Wsign-conversion"> | |||
| <CONFIGURATIONS> | |||
| <CONFIGURATION name="Debug" osxSDK="default" osxCompatibility="default" osxArchitecture="default" | |||
| <CONFIGURATION name="Debug" osxSDK="default" osxCompatibility="10.10 SDK" osxArchitecture="default" | |||
| isDebug="1" optimisation="1" targetName="UnitTestRunner"/> | |||
| <CONFIGURATION name="Release" osxSDK="default" osxCompatibility="default" osxArchitecture="default" | |||
| isDebug="0" optimisation="3" targetName="UnitTestRunner"/> | |||
| <CONFIGURATION name="Release" osxSDK="default" osxCompatibility="10.10 SDK" | |||
| osxArchitecture="default" isDebug="0" optimisation="3" targetName="UnitTestRunner"/> | |||
| </CONFIGURATIONS> | |||
| <MODULEPATHS> | |||
| <MODULEPATH id="juce_core" path="../../modules"/> | |||
| @@ -131,8 +131,8 @@ public: | |||
| outputBuffer.setSize (jmax (1, numOutputChannels), actualBufferSize); | |||
| outputBuffer.clear(); | |||
| const int audioBuffersToEnqueue = hasLowLatencyAudioPath ? buffersToEnqueueForLowLatency | |||
| : buffersToEnqueueSlowAudio; | |||
| const int audioBuffersToEnqueue = hasLowLatencyAudioPath() ? buffersToEnqueueForLowLatency | |||
| : buffersToEnqueueSlowAudio; | |||
| DBG ("OpenSL: numInputChannels = " << numInputChannels | |||
| << ", numOutputChannels = " << numOutputChannels | |||
| @@ -352,14 +352,20 @@ public: | |||
| int getLatencyFromDevice (AudioObjectPropertyScope scope) const | |||
| { | |||
| UInt32 lat = 0; | |||
| UInt32 size = sizeof (lat); | |||
| UInt32 latency = 0; | |||
| UInt32 size = sizeof (latency); | |||
| AudioObjectPropertyAddress pa; | |||
| pa.mElement = kAudioObjectPropertyElementMaster; | |||
| pa.mSelector = kAudioDevicePropertyLatency; | |||
| pa.mScope = scope; | |||
| AudioObjectGetPropertyData (deviceID, &pa, 0, nullptr, &size, &lat); | |||
| return (int) lat; | |||
| AudioObjectGetPropertyData (deviceID, &pa, 0, nullptr, &size, &latency); | |||
| UInt32 safetyOffset = 0; | |||
| size = sizeof (safetyOffset); | |||
| pa.mSelector = kAudioDevicePropertySafetyOffset; | |||
| AudioObjectGetPropertyData (deviceID, &pa, 0, nullptr, &size, &safetyOffset); | |||
| return (int) (latency + safetyOffset); | |||
| } | |||
| int getBitDepthFromDevice (AudioObjectPropertyScope scope) const | |||
| @@ -249,7 +249,7 @@ namespace AiffFileHelpers | |||
| data += isGenre ? 118 : 50; | |||
| if (data[0] == 0) | |||
| if (data < dataEnd && data[0] == 0) | |||
| { | |||
| if (data + 52 < dataEnd && isValidTag (data + 50)) data += 50; | |||
| else if (data + 120 < dataEnd && isValidTag (data + 118)) data += 118; | |||
| @@ -374,6 +374,7 @@ public: | |||
| ^ ((int) componentDesc.componentSubType) | |||
| ^ ((int) componentDesc.componentManufacturer); | |||
| desc.lastFileModTime = Time(); | |||
| desc.lastInfoUpdateTime = Time::getCurrentTime(); | |||
| desc.pluginFormatName = "AudioUnit"; | |||
| desc.category = AudioUnitFormatHelpers::getCategory (componentDesc.componentType); | |||
| desc.manufacturerName = manufacturer; | |||
| @@ -220,6 +220,7 @@ public: | |||
| desc.fileOrIdentifier = module->file.getFullPathName(); | |||
| desc.uid = getUID(); | |||
| desc.lastFileModTime = module->file.getLastModificationTime(); | |||
| desc.lastInfoUpdateTime = Time::getCurrentTime(); | |||
| desc.pluginFormatName = "LADSPA"; | |||
| desc.category = getCategory(); | |||
| desc.manufacturerName = plugin != nullptr ? String (plugin->Maker) : String(); | |||
| @@ -110,6 +110,7 @@ static void createPluginDescription (PluginDescription& description, | |||
| { | |||
| description.fileOrIdentifier = pluginFile.getFullPathName(); | |||
| description.lastFileModTime = pluginFile.getLastModificationTime(); | |||
| description.lastInfoUpdateTime = Time::getCurrentTime(); | |||
| description.manufacturerName = company; | |||
| description.name = name; | |||
| description.descriptiveName = name; | |||
| @@ -804,6 +804,7 @@ public: | |||
| desc.fileOrIdentifier = module->file.getFullPathName(); | |||
| desc.uid = getUID(); | |||
| desc.lastFileModTime = module->file.getLastModificationTime(); | |||
| desc.lastInfoUpdateTime = Time::getCurrentTime(); | |||
| desc.pluginFormatName = "VST"; | |||
| desc.category = getCategory(); | |||
| @@ -44,6 +44,7 @@ PluginDescription::PluginDescription (const PluginDescription& other) | |||
| version (other.version), | |||
| fileOrIdentifier (other.fileOrIdentifier), | |||
| lastFileModTime (other.lastFileModTime), | |||
| lastInfoUpdateTime (other.lastInfoUpdateTime), | |||
| uid (other.uid), | |||
| isInstrument (other.isInstrument), | |||
| numInputChannels (other.numInputChannels), | |||
| @@ -64,6 +65,7 @@ PluginDescription& PluginDescription::operator= (const PluginDescription& other) | |||
| uid = other.uid; | |||
| isInstrument = other.isInstrument; | |||
| lastFileModTime = other.lastFileModTime; | |||
| lastInfoUpdateTime = other.lastInfoUpdateTime; | |||
| numInputChannels = other.numInputChannels; | |||
| numOutputChannels = other.numOutputChannels; | |||
| hasSharedContainer = other.hasSharedContainer; | |||
| @@ -108,6 +110,7 @@ XmlElement* PluginDescription::createXml() const | |||
| e->setAttribute ("uid", String::toHexString (uid)); | |||
| e->setAttribute ("isInstrument", isInstrument); | |||
| e->setAttribute ("fileTime", String::toHexString (lastFileModTime.toMilliseconds())); | |||
| e->setAttribute ("infoUpdateTime", String::toHexString (lastInfoUpdateTime.toMilliseconds())); | |||
| e->setAttribute ("numInputs", numInputChannels); | |||
| e->setAttribute ("numOutputs", numOutputChannels); | |||
| e->setAttribute ("isShell", hasSharedContainer); | |||
| @@ -129,6 +132,7 @@ bool PluginDescription::loadFromXml (const XmlElement& xml) | |||
| uid = xml.getStringAttribute ("uid").getHexValue32(); | |||
| isInstrument = xml.getBoolAttribute ("isInstrument", false); | |||
| lastFileModTime = Time (xml.getStringAttribute ("fileTime").getHexValue64()); | |||
| lastInfoUpdateTime = Time (xml.getStringAttribute ("infoUpdateTime").getHexValue64()); | |||
| numInputChannels = xml.getIntAttribute ("numInputs"); | |||
| numOutputChannels = xml.getIntAttribute ("numOutputs"); | |||
| hasSharedContainer = xml.getBoolAttribute ("isShell", false); | |||
| @@ -81,6 +81,11 @@ public: | |||
| */ | |||
| Time lastFileModTime; | |||
| /** The last time that this information was updated. This would typically have | |||
| been during a scan when this plugin was first tested or found to have changed. | |||
| */ | |||
| Time lastInfoUpdateTime; | |||
| /** A unique ID for the plug-in. | |||
| Note that this might not be unique between formats, e.g. a VST and some | |||
| @@ -263,6 +263,7 @@ struct PluginSorter | |||
| case KnownPluginList::sortByManufacturer: diff = first->manufacturerName.compareNatural (second->manufacturerName); break; | |||
| case KnownPluginList::sortByFormat: diff = first->pluginFormatName.compare (second->pluginFormatName); break; | |||
| case KnownPluginList::sortByFileSystemLocation: diff = lastPathPart (first->fileOrIdentifier).compare (lastPathPart (second->fileOrIdentifier)); break; | |||
| case KnownPluginList::sortByInfoUpdateTime: diff = compare (first->lastInfoUpdateTime, second->lastInfoUpdateTime); break; | |||
| default: break; | |||
| } | |||
| @@ -278,6 +279,14 @@ private: | |||
| return path.replaceCharacter ('\\', '/').upToLastOccurrenceOf ("/", false, false); | |||
| } | |||
| static int compare (Time a, Time b) noexcept | |||
| { | |||
| if (a < b) return -1; | |||
| if (b < a) return 1; | |||
| return 0; | |||
| } | |||
| const KnownPluginList::SortMethod method; | |||
| const int direction; | |||
| @@ -136,7 +136,8 @@ public: | |||
| sortByCategory, | |||
| sortByManufacturer, | |||
| sortByFormat, | |||
| sortByFileSystemLocation | |||
| sortByFileSystemLocation, | |||
| sortByInfoUpdateTime | |||
| }; | |||
| //============================================================================== | |||
| @@ -136,7 +136,7 @@ AudioParameterChoice::AudioParameterChoice (String pid, String nm, const StringA | |||
| AudioParameterChoice::~AudioParameterChoice() {} | |||
| int AudioParameterChoice::limitRange (int v) const noexcept { return jlimit (0, choices.size() - 1, v); } | |||
| float AudioParameterChoice::convertTo0to1 (int v) const noexcept { return limitRange (v) / (float) choices.size(); } | |||
| float AudioParameterChoice::convertTo0to1 (int v) const noexcept { return jlimit (0.0f, 1.0f, (v + 0.5f) / (float) choices.size()); } | |||
| int AudioParameterChoice::convertFrom0to1 (float v) const noexcept { return limitRange ((int) (v * (float) choices.size())); } | |||
| float AudioParameterChoice::getValue() const { return convertTo0to1 (roundToInt (value)); } | |||
| @@ -63,7 +63,7 @@ public: | |||
| higher, and additionally only if the device itself supports MIDI | |||
| over Bluetooth. | |||
| On deskrop platforms, this will typically be false as the bluetooth | |||
| On desktop platforms, this will typically be false as the bluetooth | |||
| pairing is not done inside the app but by other means. | |||
| @return true if the Bluetooth MIDI pairing dialogue is available, | |||
| @@ -164,13 +164,13 @@ | |||
| #define JUCE_STRINGIFY(item) JUCE_STRINGIFY_MACRO_HELPER (item) | |||
| //============================================================================== | |||
| #ifdef JUCE_COMPILER_SUPPORTS_STATIC_ASSERT | |||
| #if JUCE_COMPILER_SUPPORTS_STATIC_ASSERT | |||
| /** A compile-time assertion macro. | |||
| If the expression parameter is false, the macro will cause a compile error. (The actual error | |||
| message that the compiler generates may be completely bizarre and seem to have no relation to | |||
| the place where you put the static_assert though!) | |||
| */ | |||
| #define static_jassert(expression) static_assert (expression); | |||
| #define static_jassert(expression) static_assert(expression, #expression); | |||
| #else | |||
| #ifndef DOXYGEN | |||
| namespace juce | |||
| @@ -52,8 +52,8 @@ | |||
| //============================================================================== | |||
| #include <vector> // included before platform defs to provide a definition of _LIBCPP_VERSION | |||
| #include "juce_PlatformDefs.h" | |||
| #include "juce_CompilerSupport.h" | |||
| #include "juce_PlatformDefs.h" | |||
| //============================================================================== | |||
| // Now we'll include some common OS headers.. | |||
| @@ -165,7 +165,7 @@ public: | |||
| } | |||
| AndroidTypeface (const void* data, size_t size) | |||
| : Typeface (String(), String()) | |||
| : Typeface (String (static_cast<uint64> (reinterpret_cast<uintptr_t> (data))), String()) | |||
| { | |||
| JNIEnv* const env = getEnv(); | |||
| @@ -1090,7 +1090,15 @@ public: | |||
| static float getMousePressure (NSEvent* e) noexcept | |||
| { | |||
| return (float) e.pressure; | |||
| @try | |||
| { | |||
| if (e.type != NSMouseEntered && e.type != NSMouseExited) | |||
| return (float) e.pressure; | |||
| } | |||
| @catch (NSException* e) {} | |||
| @finally {} | |||
| return 0.0f; | |||
| } | |||
| static Point<float> getMousePos (NSEvent* e, NSView* view) | |||
| @@ -434,6 +434,10 @@ private: | |||
| { | |||
| jassert (socket != nullptr); | |||
| char buffer[oscBufferSize]; | |||
| socket->waitUntilReady (true, -1); | |||
| if (threadShouldExit()) | |||
| return; | |||
| const int bytesRead = socket->read (buffer, (int) sizeof (buffer), false); | |||