11#ifndef __AUDACITY_EFFECTPLUGIN_H__
12#define __AUDACITY_EFFECTPLUGIN_H__
std::optional< std::unique_ptr< EffectSettingsAccess::Message > > OptionalMessage
static Settings & settings()
Performs effect computation.
~EffectInstanceEx() override
virtual bool Process(EffectSettings &settings)=0
Actually do the effect here.
Performs effect computation.
Factory of instances of an effect.
static const wxString kUserPresetIdent
virtual bool HasOptions() const =0
virtual void SetBatchProcessing()=0
std::shared_ptr< EffectInstanceEx > InstancePointer
virtual bool DoEffect(EffectSettings &settings, const InstanceFinder &finder, double projectRate, TrackList *list, WaveTrackFactory *factory, NotifyingSelectedRegion &selectedRegion, unsigned flags, const EffectSettingsAccessPtr &pAccess=nullptr)=0
std::function< std::optional< InstancePointer >(EffectSettings &settings) > InstanceFinder
virtual bool CanExportPresets() const =0
Whether the effect supports export of presets to files, and importing too.
std::shared_ptr< EffectSettingsAccess > EffectSettingsAccessPtr
static const wxString kFactoryPresetIdent
virtual void UnsetBatchProcessing()=0
virtual bool SaveSettingsAsString(const EffectSettings &settings, wxString &parms) const =0
virtual const EffectSettingsManager & GetDefinition() const =0
virtual bool IsBatchProcessing() const =0
virtual OptionalMessage LoadSettingsFromString(const wxString &parms, EffectSettings &settings) const =0
static const wxString kCurrentSettingsIdent
static const wxString kFactoryDefaultsIdent
EffectPlugin & operator=(EffectPlugin &)=delete
EffectSettingsManager is an EffectDefinitionInterface that adds a factory function for EffectSettings...
A flat linked list of tracks supporting Add, Remove, Clear, and Contains, serialization of the list o...
Used to create or clone a WaveTrack, with appropriate context from the project that will own the trac...
Externalized state of a plug-in.