14#ifndef __AUDACITY_EFFECT_BASE__
15#define __AUDACITY_EFFECT_BASE__
52 const EffectSettingsAccessPtr &pAccess
78 void SetLinearEffectFlag(
bool linearEffectFlag);
82 void SetPreviewFullSelectionFlag(
bool previewDurationFlag);
90 void IncludeNotSelectedPreviewTracks(
bool includeNotSelected);
98 void ReplaceProcessedTracks(
const bool bGoodResult);
101 double mProjectRate{};
110#ifdef EXPERIMENTAL_SPECTRAL_EDITING
115 unsigned mUIFlags{ 0 };
146#define NYQUISTEFFECTS_FAMILY ( EffectFamilySymbol{ XO("Nyquist") } )
std::function< DialogFactoryResults(wxWindow &parent, EffectPlugin &, EffectUIClientInterface &, EffectSettingsAccess &) > EffectDialogFactory
Type of function that creates a dialog for an effect.
static Settings & settings()
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
Abstraction of a progress dialog with well defined time-to-completion estimate.
Base class for many of the effects in Audacity.
std::shared_ptr< TrackList > mOutputTracks
std::vector< Track * > mOMap
bool IsPreviewing() const
const TrackList * inputTracks() const
virtual bool CheckWhetherSkipEffect(const EffectSettings &settings) const =0
After Init(), tell whether Process() should be skipped.
bool mPreviewWithNotSelected
bool mPreviewFullSelection
virtual double CalcPreviewInputLength(const EffectSettings &settings, double previewLength) const =0
std::vector< Track * > mIMap
wxArrayString mPresetNames
double GetDefaultDuration()
wxWeakRef< wxDialog > mUIDialog
This weak pointer may be the same as mUIParent, or null.
void SetTracks(TrackList *pTracks)
bool mIsLinearEffect
This weak pointer may be the same as mHostUIDialog, or null.
Base class for many of the effects in Audacity.
Factory of instances of an effect and of dialogs to control them.
virtual void Preview(EffectSettingsAccess &access, bool dryOnly)=0
EffectUIClientInterface is an abstract base class to populate a UI and validate UI values....
Abstract base class for an object holding data associated with points on a time axis.
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...
AUDACITY_DLL_API bool DoEffect(const PluginID &ID, const CommandContext &context, unsigned flags)
'Repeat Last Effect'.
static RegisteredToolbarFactory factory
Externalized state of a plug-in.