From 147755d11384bcd8b424de22ba815fc05ff733f8 Mon Sep 17 00:00:00 2001 From: Filipe Coelho Date: Sat, 10 Feb 2018 00:00:00 +0100 Subject: [PATCH] LV2 fixes for autiodprocessor MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Origin: https://github.com/DISTRHO/juce/tree/9f6cdc3659df13169285464ee1d13ef14357f833 Reviewed-by: IOhannes m zmölnig Gbp-Pq: Name LV2-audioprocessor.patch --- .../processors/juce_AudioProcessor.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessor.h b/modules/juce_audio_processors/processors/juce_AudioProcessor.h index 836b09c7..c3909a71 100644 --- a/modules/juce_audio_processors/processors/juce_AudioProcessor.h +++ b/modules/juce_audio_processors/processors/juce_AudioProcessor.h @@ -927,6 +927,7 @@ public: */ virtual void setNonRealtime (bool isNonRealtime) noexcept; + #if ! JUCE_AUDIOPROCESSOR_NO_GUI //============================================================================== /** Creates the processor's GUI. @@ -976,6 +977,7 @@ public: This may call createEditor() internally to create the component. */ AudioProcessorEditor* createEditorIfNeeded(); + #endif //============================================================================== /** Returns the default number of steps for a parameter. @@ -1117,6 +1119,11 @@ public: /** This method is called when the layout of the audio processor changes. */ virtual void processorLayoutsChanged(); + //============================================================================== + /** LV2 specific calls, saving/restore as string. */ + virtual String getStateInformationString () { return String(); } + virtual void setStateInformationString (const String&) {} + //============================================================================== /** Adds a listener that will be called when an aspect of this processor changes. */ virtual void addListener (AudioProcessorListener* newListener); @@ -1187,9 +1194,11 @@ public: virtual CurveData getResponseCurve (CurveData::Type /*curveType*/) const { return {}; } + #if ! JUCE_AUDIOPROCESSOR_NO_GUI //============================================================================== /** Not for public use - this is called before deleting an editor component. */ void editorBeingDeleted (AudioProcessorEditor*) noexcept; + #endif /** Flags to indicate the type of plugin context in which a processor is being used. */ enum WrapperType @@ -1203,6 +1212,7 @@ public: wrapperType_AAX, wrapperType_Standalone, wrapperType_Unity + , wrapperType_LV2 }; /** When loaded by a plugin wrapper, this flag will be set to indicate the type @@ -1463,7 +1473,9 @@ private: //============================================================================== Array listeners; + #if ! JUCE_AUDIOPROCESSOR_NO_GUI Component::SafePointer activeEditor; + #endif double currentSampleRate = 0; int blockSize = 0, latencySamples = 0; bool suspended = false, nonRealtime = false; -- 2.30.2