LV2 fixes for autiodprocessor
authorFilipe Coelho <falkTX>
Fri, 9 Feb 2018 23:00:00 +0000 (00:00 +0100)
committerIOhannes m zmölnig (Debian/GNU) <umlaeute@debian.org>
Mon, 31 Jan 2022 10:55:24 +0000 (11:55 +0100)
Origin: https://github.com/DISTRHO/juce/tree/9f6cdc3659df13169285464ee1d13ef14357f833
Reviewed-by: IOhannes m zmölnig
Gbp-Pq: Name LV2-audioprocessor.patch

modules/juce_audio_processors/processors/juce_AudioProcessor.h

index 3cb5b78e8aee85b300fe01779d7cc27bbdd33a9d..d21ad7e7a8889e5df5de7f4657684faf1fbea3fb 100644 (file)
@@ -928,6 +928,7 @@ public:
     */\r
     virtual void setNonRealtime (bool isNonRealtime) noexcept;\r
 \r
+   #if ! JUCE_AUDIOPROCESSOR_NO_GUI\r
     //==============================================================================\r
     /** Creates the processor's GUI.\r
 \r
@@ -977,6 +978,7 @@ public:
         This may call createEditor() internally to create the component.\r
     */\r
     AudioProcessorEditor* createEditorIfNeeded();\r
+   #endif\r
 \r
     //==============================================================================\r
     /** Returns the default number of steps for a parameter.\r
@@ -1118,6 +1120,11 @@ public:
     /** This method is called when the layout of the audio processor changes. */\r
     virtual void processorLayoutsChanged();\r
 \r
+    //==============================================================================\r
+    /** LV2 specific calls, saving/restore as string. */\r
+    virtual String getStateInformationString () { return String(); }\r
+    virtual void setStateInformationString (const String&) {}\r
+\r
     //==============================================================================\r
     /** Adds a listener that will be called when an aspect of this processor changes. */\r
     virtual void addListener (AudioProcessorListener* newListener);\r
@@ -1188,9 +1195,11 @@ public:
 \r
     virtual CurveData getResponseCurve (CurveData::Type /*curveType*/) const      { return {}; }\r
 \r
+   #if ! JUCE_AUDIOPROCESSOR_NO_GUI\r
     //==============================================================================\r
     /** Not for public use - this is called before deleting an editor component. */\r
     void editorBeingDeleted (AudioProcessorEditor*) noexcept;\r
+   #endif\r
 \r
     /** Flags to indicate the type of plugin context in which a processor is being used. */\r
     enum WrapperType\r
@@ -1204,6 +1213,7 @@ public:
         wrapperType_AAX,\r
         wrapperType_Standalone,\r
         wrapperType_Unity\r
+        , wrapperType_LV2\r
     };\r
 \r
     /** When loaded by a plugin wrapper, this flag will be set to indicate the type\r
@@ -1463,7 +1473,9 @@ private:
 \r
     //==============================================================================\r
     Array<AudioProcessorListener*> listeners;\r
+   #if ! JUCE_AUDIOPROCESSOR_NO_GUI\r
     Component::SafePointer<AudioProcessorEditor> activeEditor;\r
+   #endif\r
     double currentSampleRate = 0;\r
     int blockSize = 0, latencySamples = 0;\r
     bool suspended = false;\r