Audacity 3.2.0
|
Factory of instances of an effect. More...
#include <EffectPlugin.h>
Public Types | |
using | EffectSettingsAccessPtr = std::shared_ptr< EffectSettingsAccess > |
using | InstancePointer = std::shared_ptr< EffectInstanceEx > |
using | InstanceFinder = std::function< std::optional< InstancePointer >(EffectSettings &settings) > |
Public Types inherited from EffectDefinitionInterface | |
enum class | RealtimeSince : unsigned { Never , After_3_1 , Always } |
In which versions of Audacity was an effect realtime capable? More... | |
Public Member Functions | |
EffectPlugin & | operator= (EffectPlugin &)=delete |
virtual | ~EffectPlugin () |
virtual bool | HasOptions () const =0 |
virtual bool | CanExportPresets () const =0 |
Whether the effect supports export of presets to files, and importing too. More... | |
virtual const EffectSettingsManager & | GetDefinition () const =0 |
virtual bool | SaveSettingsAsString (const EffectSettings &settings, wxString &parms) const =0 |
virtual OptionalMessage | LoadSettingsFromString (const wxString &parms, EffectSettings &settings) const =0 |
virtual bool | IsBatchProcessing () const =0 |
virtual void | SetBatchProcessing ()=0 |
virtual void | UnsetBatchProcessing ()=0 |
virtual bool | DoEffect (EffectSettings &settings, const InstanceFinder &finder, double projectRate, TrackList *list, WaveTrackFactory *factory, NotifyingSelectedRegion &selectedRegion, unsigned flags, const EffectSettingsAccessPtr &pAccess=nullptr)=0 |
Public Member Functions inherited from EffectInstanceFactory | |
virtual | ~EffectInstanceFactory () |
virtual std::shared_ptr< EffectInstance > | MakeInstance () const =0 |
Make an object maintaining short-term state of an Effect. More... | |
Public Member Functions inherited from EffectSettingsManager | |
virtual | ~EffectSettingsManager () |
virtual bool | VisitSettings (SettingsVisitor &visitor, EffectSettings &settings) |
virtual bool | VisitSettings (ConstSettingsVisitor &visitor, const EffectSettings &settings) const |
virtual EffectSettings | MakeSettings () const |
virtual bool | CopySettingsContents (const EffectSettings &src, EffectSettings &dst) const |
Update one settings object from another. More... | |
virtual bool | SaveSettings (const EffectSettings &settings, CommandParameters &parms) const =0 |
Store settings as keys and values. More... | |
virtual bool | LoadSettings (const CommandParameters &parms, EffectSettings &settings) const =0 |
Restore settings from keys and values. More... | |
virtual RegistryPaths | GetFactoryPresets () const =0 |
Report names of factory presets. More... | |
virtual OptionalMessage | LoadUserPreset (const RegistryPath &name, EffectSettings &settings) const =0 |
virtual bool | SaveUserPreset (const RegistryPath &name, const EffectSettings &settings) const =0 |
Save settings in the configuration file as a user-named preset. More... | |
virtual OptionalMessage | LoadFactoryPreset (int id, EffectSettings &settings) const =0 |
virtual OptionalMessage | LoadFactoryDefaults (EffectSettings &settings) const =0 |
virtual std::unique_ptr< EffectOutputs > | MakeOutputs () const |
Produce an object to hold values to send to effect output meters. More... | |
Public Member Functions inherited from EffectDefinitionInterface | |
virtual | ~EffectDefinitionInterface () |
virtual EffectType | GetType () const =0 |
Type determines how it behaves. More... | |
virtual EffectType | GetClassification () const |
Determines which menu it appears in; default same as GetType(). More... | |
virtual EffectFamilySymbol | GetFamily () const =0 |
Report identifier and user-visible name of the effect protocol. More... | |
virtual bool | IsInteractive () const =0 |
Whether the effect needs a dialog for entry of settings. More... | |
virtual bool | IsDefault () const =0 |
Whether the effect sorts "above the line" in the menus. More... | |
virtual RealtimeSince | RealtimeSupport () const =0 |
Since which version of Audacity has the effect supported realtime? More... | |
bool | SupportsRealtime () const |
virtual bool | SupportsAutomation () const =0 |
Whether the effect has any automatable controls. More... | |
virtual bool | EnablesDebug () const |
Whether the effect dialog should have a Debug button; default, always false. More... | |
virtual ManualPageID | ManualPage () const |
Name of a page in the Audacity alpha manual, default is empty. More... | |
virtual FilePath | HelpPage () const |
Fully qualified local help file name, default is empty. More... | |
virtual bool | IsHiddenFromMenus () const |
Default is false. More... | |
Public Member Functions inherited from ComponentInterface | |
virtual | ~ComponentInterface () |
virtual PluginPath | GetPath () const =0 |
virtual ComponentInterfaceSymbol | GetSymbol () const =0 |
virtual VendorSymbol | GetVendor () const =0 |
virtual wxString | GetVersion () const =0 |
virtual TranslatableString | GetDescription () const =0 |
TranslatableString | GetName () const |
Static Public Attributes | |
static const wxString | kUserPresetIdent = wxT("User Preset:") |
static const wxString | kFactoryPresetIdent = wxT("Factory Preset:") |
static const wxString | kCurrentSettingsIdent = wxT("<Current Settings>") |
static const wxString | kFactoryDefaultsIdent = wxT("<Factory Defaults>") |
Additional Inherited Members | |
Static Public Member Functions inherited from EffectDefinitionInterface | |
static Identifier | GetSquashedName (const Identifier &ident) |
A utility that strips spaces and CamelCases a name. More... | |
Factory of instances of an effect.
Definition at line 34 of file EffectPlugin.h.
using EffectPlugin::EffectSettingsAccessPtr = std::shared_ptr<EffectSettingsAccess> |
Definition at line 38 of file EffectPlugin.h.
using EffectPlugin::InstanceFinder = std::function< std::optional<InstancePointer>(EffectSettings &settings) > |
nullopt for failure is distinct from successful null return If a non-null pointer is returned, assume Init() also succeeded on it If a null pointer, then DoEffect will use MakeInstance()
Definition at line 70 of file EffectPlugin.h.
using EffectPlugin::InstancePointer = std::shared_ptr<EffectInstanceEx> |
Definition at line 66 of file EffectPlugin.h.
|
virtualdefault |
|
pure virtual |
Whether the effect supports export of presets to files, and importing too.
Implemented in AudioUnitEffectBase, Effect, LadspaEffectBase, LV2EffectBase, VSTEffectBase, and VST3EffectBase.
Referenced by EffectUIHost::OnMenu().
|
pure virtual |
Will only operate on tracks that have the "selected" flag set to true, which is consistent with Audacity's standard UI, and only when finder succeeds
settings | Always given; only for processing |
pAccess | Sometimes given; only for UI |
Implemented in EffectBase.
|
pure virtual |
Implemented in Effect.
Referenced by EffectUIHost::BuildTopBar(), EffectUIHost::DoCancel(), EffectBase::DoEffect(), EffectUIHost::EffectUIHost(), GetID(), GetUserPresets(), HasCurrentSettings(), HasFactoryDefaults(), EffectUIHost::Initialize(), EffectUIHost::LoadUserPresets(), EffectUIHost::OnApply(), EffectUIHost::OnDefaults(), EffectUIHost::OnDeletePreset(), EffectUIHost::OnFactoryPreset(), EffectUIHost::OnMenu(), EffectUIHost::OnSaveAs(), EffectUIHost::OnUserPreset(), EffectUIHost::ShowModal(), and EffectUIHost::TransferDataFromWindow().
|
pure virtual |
Whether there are preferences applying to the effect's family, for which a UI may be needed to change them
Implemented in AudioUnitEffectBase, Effect, LadspaEffectBase, LV2EffectBase, VSTEffectBase, and VST3EffectBase.
Referenced by EffectUIHost::OnMenu().
|
pure virtual |
Implemented in Effect.
Referenced by EffectUIHost::Initialize().
|
pure virtual |
Implemented in Effect.
Referenced by BasicEffectUIServices::ImportPresets().
|
delete |
|
pure virtual |
Implemented in Effect.
Referenced by BasicEffectUIServices::ExportPresets().
|
pure virtual |
Implemented in Effect.
|
pure virtual |
Implemented in Effect.
Definition at line 42 of file EffectPlugin.h.
Referenced by EffectManager::GetDefaultPreset(), Effect::LoadSettingsFromString(), EffectPresetsDialog::SetPrefix(), EffectPresetsDialog::SetSelected(), and EffectPresetsDialog::UpdateUI().
|
static |
Definition at line 43 of file EffectPlugin.h.
Referenced by EffectManager::GetDefaultPreset(), Effect::LoadSettingsFromString(), EffectPresetsDialog::SetPrefix(), EffectPresetsDialog::SetSelected(), and EffectPresetsDialog::UpdateUI().
|
static |
Definition at line 41 of file EffectPlugin.h.
Referenced by Effect::LoadSettingsFromString(), EffectPresetsDialog::SetPrefix(), EffectPresetsDialog::SetSelected(), and EffectPresetsDialog::UpdateUI().
|
static |
Definition at line 40 of file EffectPlugin.h.
Referenced by Effect::LoadSettingsFromString(), EffectPresetsDialog::SetPrefix(), EffectPresetsDialog::SetSelected(), and EffectPresetsDialog::UpdateUI().