Audacity 3.2.0
LadspaEffect.h
Go to the documentation of this file.
1/**********************************************************************
2
3 Audacity: A Digital Audio Editor
4
5 LadspaEffect.h
6
7 Dominic Mazzoni
8
9**********************************************************************/
10#ifndef __AUDACITY_LADSPA_EFFECT__
11#define __AUDACITY_LADSPA_EFFECT__
12
13#include "LadspaEffectBase.h"
14
15#include <wx/dynlib.h> // member variable
16//#include <wx/event.h> // to inherit
17//#include <wx/weakref.h>
18
19#include "../StatelessPerTrackEffect.h"
20#include "PluginProvider.h"
21#include "PluginInterface.h"
22
23//#include "SampleFormat.h"
24
25class LadspaEffect final
26 : public LadspaEffectBase
28{
29public:
31 ~LadspaEffect() override;
32
33private:
34 int ShowClientInterface(const EffectPlugin &plugin, wxWindow &parent,
35 wxDialog &dialog, EffectEditor *pEditor, bool forceModal)
36 const override;
37
38 std::unique_ptr<EffectEditor> MakeEditor(
39 ShuttleGui & S, EffectInstance &instance,
40 EffectSettingsAccess &access, const EffectOutputs *pOutputs)
41 const override;
42
43 void ExportPresets(
44 const EffectPlugin &plugin, const EffectSettings &settings)
45 const override;
47 const EffectPlugin &plugin, EffectSettings &settings) const override;
48
49 void ShowOptions(const EffectPlugin &plugin) const override;
50};
51#endif
std::optional< std::unique_ptr< EffectSettingsAccess::Message > > OptionalMessage
Generalized interface for discovery of plug-ins for one protocol.
#define S(N)
Definition: ToChars.cpp:64
static Settings & settings()
Definition: TrackInfo.cpp:69
Performs effect computation.
Hold values to send to effect output meters.
Factory of instances of an effect.
Definition: EffectPlugin.h:36
An Effect that calls up a LADSPA plug in, i.e. many possible effects from this one class.
LadspaEffectBase(const wxString &path, int index)
An Effect that calls up a LADSPA plug in, i.e. many possible effects from this one class.
Definition: LadspaEffect.h:28
int ShowClientInterface(const EffectPlugin &plugin, wxWindow &parent, wxDialog &dialog, EffectEditor *pEditor, bool forceModal) const override
void ShowOptions(const EffectPlugin &plugin) const override
std::unique_ptr< EffectEditor > MakeEditor(ShuttleGui &S, EffectInstance &instance, EffectSettingsAccess &access, const EffectOutputs *pOutputs) const override
Called only from PopulateUI, to add controls to effect panel.
OptionalMessage ImportPresets(const EffectPlugin &plugin, EffectSettings &settings) const override
void ExportPresets(const EffectPlugin &plugin, const EffectSettings &settings) const override
~LadspaEffect() override
Derived from ShuttleGuiBase, an Audacity specific class for shuttling data to and from GUI.
Definition: ShuttleGui.h:640
Externalized state of a plug-in.