13#ifndef __AUDACITY_VST_EFFECT_BASE__
14#define __AUDACITY_VST_EFFECT_BASE__
22#define VSTPLUGINTYPE XO("VST")
24#define audacityVSTID CCONST('a', 'u', 'D', 'y');
65 bool DoLoadFactoryPreset(
int id);
67 bool InitializePlugin();
69 std::shared_ptr<EffectInstance>
MakeInstance()
const override;
77 std::vector<int> GetEffectIDs();
std::optional< std::unique_ptr< EffectSettingsAccess::Message > > OptionalMessage
wxString PluginPath
type alias for identifying a Plugin supplied by a module, each module defining its own interpretation...
std::vector< RegistryPath > RegistryPaths
static Settings & settings()
CommandParameters, derived from wxFileConfig, is essentially doing the same things as the SettingsVis...
ComponentInterfaceSymbol pairs a persistent string identifier used internally with an optional,...
virtual EffectType GetType() const =0
Type determines how it behaves.
RealtimeSince
In which versions of Audacity was an effect realtime capable?
bool SaveSettings(const EffectSettings &settings, CommandParameters &parms) const override
Store settings as keys and values.
RealtimeSince RealtimeSupport() const override
Since which version of Audacity has the effect supported realtime?
bool SaveUserPreset(const RegistryPath &name, const EffectSettings &settings) const override
Save settings in the configuration file as a user-named preset.
bool SupportsAutomation() const override
Whether the effect has any automatable controls.
bool LoadSettings(const CommandParameters &parms, EffectSettings &settings) const override
Restore settings from keys and values.
TranslatableString GetDescription() const override
OptionalMessage LoadFactoryPreset(int id, EffectSettings &settings) const override
bool HasOptions() const override
wxString GetVersion() const override
PluginPath GetPath() const override
VendorSymbol GetVendor() const override
OptionalMessage LoadUserPreset(const RegistryPath &name, EffectSettings &settings) const override
bool CanExportPresets() const override
Whether the effect supports export of presets to files, and importing too.
EffectFamilySymbol GetFamily() const override
Report identifier and user-visible name of the effect protocol.
bool IsDefault() const override
Whether the effect sorts "above the line" in the menus.
RegistryPaths GetFactoryPresets() const override
Report names of factory presets.
bool IsInteractive() const override
Whether the effect needs a dialog for entry of settings.
virtual std::shared_ptr< EffectInstance > MakeInstance() const =0
Make an object maintaining short-term state of an Effect.
virtual EffectSettings MakeSettings() const
Base class for many of the effects in Audacity.
Holds a msgid for the translation catalog; may also bind format arguments.
~VSTEffectBase() override
Externalized state of a plug-in.
ComponentInterfaceSymbol GetSymbol() const