Audacity 3.2.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
VST3EffectBase Class Reference

Objects of this class connect Audacity with VST3 effects. More...

#include <VST3EffectBase.h>

Inheritance diagram for VST3EffectBase:
[legend]
Collaboration diagram for VST3EffectBase:
[legend]

Public Member Functions

 VST3EffectBase (std::shared_ptr< VST3::Hosting::Module > module, VST3::Hosting::ClassInfo effectClassInfo)
 
 VST3EffectBase (const VST3EffectBase &)=delete
 
 VST3EffectBase (VST3EffectBase &&)=delete
 
VST3EffectBaseoperator= (const VST3EffectBase &)=delete
 
VST3EffectBaseoperator= (VST3EffectBase &)=delete
 
 ~VST3EffectBase () override
 
PluginPath GetPath () const override
 
ComponentInterfaceSymbol GetSymbol () const override
 
VendorSymbol GetVendor () const override
 
wxString GetVersion () const override
 
TranslatableString GetDescription () const override
 
EffectType GetType () const override
 Type determines how it behaves. More...
 
EffectFamilySymbol GetFamily () const override
 Report identifier and user-visible name of the effect protocol. More...
 
bool IsInteractive () const override
 Whether the effect needs a dialog for entry of settings. More...
 
bool IsDefault () const override
 Whether the effect sorts "above the line" in the menus. More...
 
RealtimeSince RealtimeSupport () const override
 Since which version of Audacity has the effect supported realtime? More...
 
bool SupportsAutomation () const override
 Whether the effect has any automatable controls. More...
 
bool SaveSettings (const EffectSettings &settings, CommandParameters &parms) const override
 Store settings as keys and values. More...
 
bool LoadSettings (const CommandParameters &parms, EffectSettings &settings) const override
 Restore settings from keys and values. More...
 
OptionalMessage LoadUserPreset (const RegistryPath &name, EffectSettings &settings) const override
 
bool SaveUserPreset (const RegistryPath &name, const EffectSettings &settings) const override
 Save settings in the configuration file as a user-named preset. More...
 
RegistryPaths GetFactoryPresets () const override
 Report names of factory presets. More...
 
OptionalMessage LoadFactoryPreset (int id, EffectSettings &settings) const override
 
std::shared_ptr< EffectInstanceMakeInstance () const override
 Make an object maintaining short-term state of an Effect. More...
 
bool CanExportPresets () const override
 Whether the effect supports export of presets to files, and importing too. More...
 
bool HasOptions () const override
 
EffectSettings MakeSettings () const override
 
bool CopySettingsContents (const EffectSettings &src, EffectSettings &dst) const override
 Update one settings object from another. More...
 
- Public Member Functions inherited from PerTrackEffect
 ~PerTrackEffect () override
 
- Public Member Functions inherited from Effect
 Effect ()
 
virtual ~Effect ()
 
PluginPath GetPath () const override
 
bool VisitSettings (SettingsVisitor &visitor, EffectSettings &settings) override
 
bool VisitSettings (ConstSettingsVisitor &visitor, const EffectSettings &settings) const override
 
ComponentInterfaceSymbol GetSymbol () const override
 
VendorSymbol GetVendor () const override
 
wxString GetVersion () const override
 
TranslatableString GetDescription () const override
 
EffectFamilySymbol GetFamily () const override
 Report identifier and user-visible name of the effect protocol. More...
 
bool IsInteractive () const override
 Whether the effect needs a dialog for entry of settings. More...
 
bool IsDefault () const override
 Whether the effect sorts "above the line" in the menus. More...
 
RealtimeSince RealtimeSupport () const override
 Since which version of Audacity has the effect supported realtime? More...
 
bool SupportsAutomation () const override
 Whether the effect has any automatable controls. More...
 
bool SaveSettings (const EffectSettings &settings, CommandParameters &parms) const override
 Store settings as keys and values. More...
 
bool LoadSettings (const CommandParameters &parms, EffectSettings &settings) const override
 Restore settings from keys and values. More...
 
OptionalMessage LoadUserPreset (const RegistryPath &name, EffectSettings &settings) const override
 
bool SaveUserPreset (const RegistryPath &name, const EffectSettings &settings) const override
 Save settings in the configuration file as a user-named preset. More...
 
RegistryPaths GetFactoryPresets () const override
 Report names of factory presets. More...
 
OptionalMessage LoadFactoryPreset (int id, EffectSettings &settings) const override
 
OptionalMessage LoadFactoryDefaults (EffectSettings &settings) const override
 
virtual const EffectParameterMethodsParameters () const
 
bool CanExportPresets () const override
 Whether the effect supports export of presets to files, and importing too. More...
 
bool HasOptions () const override
 
const EffectSettingsManagerGetDefinition () const override
 
virtual NumericFormatID GetSelectionFormat ()
 
bool SaveSettingsAsString (const EffectSettings &settings, wxString &parms) const override
 
OptionalMessage LoadSettingsFromString (const wxString &parms, EffectSettings &settings) const override
 
bool IsBatchProcessing () const override
 
void SetBatchProcessing () override
 
void UnsetBatchProcessing () override
 
unsigned TestUIFlags (unsigned mask)
 
bool Delegate (Effect &delegate, EffectSettings &settings, InstanceFinder finder={})
 Re-invoke DoEffect on another Effect object that implements the work. More...
 
- Public Member Functions inherited from EffectBase
 EffectBase ()
 
 ~EffectBase () override
 
bool IsLinearEffect () const
 
bool PreviewsFullSelection () const
 
void SetTracks (TrackList *pTracks)
 
virtual std::any BeginPreview (const EffectSettings &settings)
 Called when Preview() starts, to allow temporary effect state changes. More...
 
bool DoEffect (EffectSettings &settings, const InstanceFinder &finder, double projectRate, TrackList *list, WaveTrackFactory *factory, NotifyingSelectedRegion &selectedRegion, unsigned flags, const EffectSettingsAccessPtr &pAccess) override
 
virtual double CalcPreviewInputLength (const EffectSettings &settings, double previewLength) const =0
 
void CountWaveTracks ()
 
- Public Member Functions inherited from EffectPlugin
EffectPluginoperator= (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 EffectSettingsManagerGetDefinition () 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< EffectInstanceMakeInstance () 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 std::unique_ptr< EffectOutputsMakeOutputs () 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 Member Functions

static EffectFamilySymbol GetFamilySymbol ()
 
- Static Public Member Functions inherited from Effect
static EffectFetchParameters (Effect &e, EffectSettings &)
 
- Static Public Member Functions inherited from EffectBase
static std::optional< InstancePointerFindInstance (EffectPlugin &plugin)
 
static InstanceFinder DefaultInstanceFinder (EffectPlugin &plugin)
 
- Static Public Member Functions inherited from EffectDefinitionInterface
static Identifier GetSquashedName (const Identifier &ident)
 A utility that strips spaces and CamelCases a name. More...
 

Protected Member Functions

void LoadPreset (const wxString &id, EffectSettings &settings) const
 
- Protected Member Functions inherited from PerTrackEffect
bool DoPass1 () const
 
bool DoPass2 () const
 
bool Process (EffectInstance &instance, EffectSettings &settings) const
 
std::shared_ptr< EffectOutputTracksMakeOutputTracks ()
 
void DestroyOutputTracks () const
 
- Protected Member Functions inherited from Effect
bool CheckWhetherSkipEffect (const EffectSettings &settings) const override
 Default implementation returns false. More...
 
double CalcPreviewInputLength (const EffectSettings &settings, double previewLength) const override
 Default implementation returns previewLength More...
 
bool TotalProgress (double frac, const TranslatableString &={}) const
 
bool TrackProgress (int whichTrack, double frac, const TranslatableString &={}) const
 
bool TrackGroupProgress (int whichGroup, double frac, const TranslatableString &={}) const
 
int GetNumWaveTracks () const
 
int GetNumWaveGroups () const
 
void GetBounds (const WaveTrack &track, sampleCount *start, sampleCount *len)
 
- Protected Member Functions inherited from EffectBase
virtual bool CheckWhetherSkipEffect (const EffectSettings &settings) const =0
 After Init(), tell whether Process() should be skipped. More...
 
void SetLinearEffectFlag (bool linearEffectFlag)
 
void SetPreviewFullSelectionFlag (bool previewDurationFlag)
 
bool IsPreviewing () const
 
const TrackListinputTracks () const
 
const AudacityProjectFindProject () const
 

Protected Attributes

std::shared_ptr< VST3::Hosting::Module > mModule
 
const VST3::Hosting::ClassInfo mEffectClassInfo
 
bool mRescanFactoryPresets { true }
 
RegistryPaths mFactoryPresetNames
 
std::vector< wxString > mFactoryPresetIDs
 
- Protected Attributes inherited from PerTrackEffect
sampleCount mSampleCnt {}
 
- Protected Attributes inherited from EffectBase
double mF0 {}
 
double mF1 {}
 
wxArrayString mPresetNames
 
unsigned mUIFlags { 0 }
 

Friends

class VST3PluginValidator
 

Additional Inherited Members

- Public Types inherited from EffectPlugin
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 Attributes inherited from EffectBase
std::shared_ptr< TrackListmTracks {}
 
int mNumTracks {}
 
BasicUI::ProgressDialogmProgress {}
 
double mProjectRate {}
 
WaveTrackFactorymFactory {}
 
double mT0 {}
 
double mT1 {}
 
bool mIsPreview { false }
 
- Static Public Attributes inherited from EffectPlugin
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>")
 

Detailed Description

Objects of this class connect Audacity with VST3 effects.

Definition at line 22 of file VST3EffectBase.h.

Constructor & Destructor Documentation

◆ VST3EffectBase() [1/3]

VST3EffectBase::VST3EffectBase ( std::shared_ptr< VST3::Hosting::Module >  module,
VST3::Hosting::ClassInfo  effectClassInfo 
)

Definition at line 27 of file VST3EffectBase.cpp.

30 : mModule(std::move(module)), mEffectClassInfo(std::move(effectClassInfo))
31{
32}
const VST3::Hosting::ClassInfo mEffectClassInfo
std::shared_ptr< VST3::Hosting::Module > mModule

◆ VST3EffectBase() [2/3]

VST3EffectBase::VST3EffectBase ( const VST3EffectBase )
delete

◆ VST3EffectBase() [3/3]

VST3EffectBase::VST3EffectBase ( VST3EffectBase &&  )
delete

◆ ~VST3EffectBase()

VST3EffectBase::~VST3EffectBase ( )
overridedefault

Member Function Documentation

◆ CanExportPresets()

bool VST3EffectBase::CanExportPresets ( ) const
overridevirtual

Whether the effect supports export of presets to files, and importing too.

Reimplemented from Effect.

Definition at line 162 of file VST3EffectBase.cpp.

163{
164 return true;
165}

◆ CopySettingsContents()

bool VST3EffectBase::CopySettingsContents ( const EffectSettings src,
EffectSettings dst 
) const
overridevirtual

Update one settings object from another.

This may run in a worker thread, and should avoid memory allocations. Therefore do not copy the underlying std::any, but copy the contents of the contained objects.

Assume that src and dst were created and previously modified only by this

Default implementation does nothing and returns true

Parameters
srcsettings to copy from
dstsettings to copy into
copyDirectiondirection in which copy is performed
Returns
success

Reimplemented from EffectSettingsManager.

Definition at line 185 of file VST3EffectBase.cpp.

186{
188 return true;
189}
static void CopySettingsContents(const EffectSettings &src, EffectSettings &dst)

References VST3Wrapper::CopySettingsContents().

Here is the call graph for this function:

◆ GetDescription()

TranslatableString VST3EffectBase::GetDescription ( ) const
overridevirtual

Reimplemented from Effect.

Definition at line 54 of file VST3EffectBase.cpp.

55{
56 //i18n-hint VST3 effect description string
57 return XO("SubCategories: %s").Format( mEffectClassInfo.subCategoriesString() );
58}
XO("Cut/Copy/Paste")

References mEffectClassInfo, and XO().

Here is the call graph for this function:

◆ GetFactoryPresets()

RegistryPaths VST3EffectBase::GetFactoryPresets ( ) const
overridevirtual

Report names of factory presets.

Reimplemented from Effect.

Definition at line 127 of file VST3EffectBase.cpp.

128{
130 return mFactoryPresetNames;
131
133 for(auto& desc : wrapper.FindFactoryPresets())
134 {
135 mFactoryPresetNames.push_back(desc.displayName);
136 mFactoryPresetIDs.push_back(desc.id);
137 }
138 mRescanFactoryPresets = false;
139
140 return mFactoryPresetNames;
141}
std::vector< wxString > mFactoryPresetIDs
bool mRescanFactoryPresets
RegistryPaths mFactoryPresetNames
const TranslatableString desc
Definition: ExportPCM.cpp:51

References anonymous_namespace{ExportPCM.cpp}::desc, VST3Wrapper::FindFactoryPresets(), mEffectClassInfo, mFactoryPresetIDs, mFactoryPresetNames, mModule, and mRescanFactoryPresets.

Here is the call graph for this function:

◆ GetFamily()

EffectFamilySymbol VST3EffectBase::GetFamily ( ) const
overridevirtual

Report identifier and user-visible name of the effect protocol.

Reimplemented from Effect.

Definition at line 73 of file VST3EffectBase.cpp.

74{
76}
static EffectFamilySymbol GetFamilySymbol()

References GetFamilySymbol().

Here is the call graph for this function:

◆ GetFamilySymbol()

EffectFamilySymbol VST3EffectBase::GetFamilySymbol ( )
static

Definition at line 20 of file VST3EffectBase.cpp.

21{
22 return XO("VST3");
23}

References XO().

Referenced by GetFamily(), and VST3EffectsModule::GetOptionalFamilySymbol().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetPath()

PluginPath VST3EffectBase::GetPath ( ) const
overridevirtual

Reimplemented from Effect.

Definition at line 34 of file VST3EffectBase.cpp.

35{
36 return VST3Utils::MakePluginPathString( { mModule->getPath() }, mEffectClassInfo.ID().toString());
37}
static wxString MakePluginPathString(const wxString &modulePath, const std::string &effectUIDString)
Definition: VST3Utils.cpp:69

References VST3Utils::MakePluginPathString(), mEffectClassInfo, and mModule.

Here is the call graph for this function:

◆ GetSymbol()

ComponentInterfaceSymbol VST3EffectBase::GetSymbol ( ) const
overridevirtual

Reimplemented from Effect.

Definition at line 39 of file VST3EffectBase.cpp.

40{
41 return wxString { mEffectClassInfo.name() };
42}

◆ GetType()

EffectType VST3EffectBase::GetType ( ) const
overridevirtual

Type determines how it behaves.

Implements EffectDefinitionInterface.

Definition at line 60 of file VST3EffectBase.cpp.

61{
62 using namespace Steinberg::Vst::PlugType;
63 if(mEffectClassInfo.subCategoriesString() == kFxGenerator)
64 return EffectTypeGenerate;
65 const auto& cats = mEffectClassInfo.subCategories();
66
67 if(std::find(cats.begin(), cats.end(), kFx) != cats.end())
68 return EffectTypeProcess;
69
70 return EffectTypeNone;
71}
@ EffectTypeGenerate
@ EffectTypeNone
@ EffectTypeProcess

References EffectTypeGenerate, EffectTypeNone, EffectTypeProcess, and mEffectClassInfo.

Referenced by VST3Effect::PopulateUI(), and RealtimeSupport().

Here is the caller graph for this function:

◆ GetVendor()

VendorSymbol VST3EffectBase::GetVendor ( ) const
overridevirtual

Reimplemented from Effect.

Definition at line 44 of file VST3EffectBase.cpp.

45{
46 return wxString { mEffectClassInfo.vendor() };
47}

References mEffectClassInfo.

◆ GetVersion()

wxString VST3EffectBase::GetVersion ( ) const
overridevirtual

Reimplemented from Effect.

Definition at line 49 of file VST3EffectBase.cpp.

50{
51 return mEffectClassInfo.version();
52}

References mEffectClassInfo.

◆ HasOptions()

bool VST3EffectBase::HasOptions ( ) const
overridevirtual

Whether there are preferences applying to the effect's family, for which a UI may be needed to change them

Reimplemented from Effect.

Definition at line 167 of file VST3EffectBase.cpp.

168{
169 return true;
170}

◆ IsDefault()

bool VST3EffectBase::IsDefault ( ) const
overridevirtual

Whether the effect sorts "above the line" in the menus.

Reimplemented from Effect.

Definition at line 83 of file VST3EffectBase.cpp.

84{
85 return false;
86}

◆ IsInteractive()

bool VST3EffectBase::IsInteractive ( ) const
overridevirtual

Whether the effect needs a dialog for entry of settings.

Reimplemented from Effect.

Definition at line 78 of file VST3EffectBase.cpp.

79{
80 return true;
81}

◆ LoadFactoryPreset()

OptionalMessage VST3EffectBase::LoadFactoryPreset ( int  id,
EffectSettings settings 
) const
overridevirtual

Change settings to the preset whose name is GetFactoryPresets()[id]

Returns
nullopt for failure

Reimplemented from Effect.

Definition at line 143 of file VST3EffectBase.cpp.

144{
145 if(index >= 0 && index < mFactoryPresetIDs.size())
146 {
148 wrapper.InitializeComponents();
149 wrapper.LoadPreset(mFactoryPresetIDs[index]);
150 wrapper.FlushParameters(settings);
151 wrapper.StoreSettings(settings);
152 return { nullptr };
153 }
154 return { };
155}
static Settings & settings()
Definition: TrackInfo.cpp:47

References VST3Wrapper::FlushParameters(), VST3Wrapper::InitializeComponents(), VST3Wrapper::LoadPreset(), mEffectClassInfo, mFactoryPresetIDs, mModule, settings(), and VST3Wrapper::StoreSettings().

Here is the call graph for this function:

◆ LoadPreset()

void VST3EffectBase::LoadPreset ( const wxString &  id,
EffectSettings settings 
) const
protected

Definition at line 172 of file VST3EffectBase.cpp.

173{
174 auto wrapper = std::make_unique<VST3Wrapper>(*mModule, mEffectClassInfo);
175 wrapper->InitializeComponents();
176 wrapper->LoadPreset(id);
177 wrapper->StoreSettings(settings);
178}

References mEffectClassInfo, mModule, and settings().

Referenced by VST3Effect::ImportPresets().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LoadSettings()

bool VST3EffectBase::LoadSettings ( const CommandParameters parms,
EffectSettings settings 
) const
overridevirtual

Restore settings from keys and values.

Returns
true on success

Reimplemented from Effect.

Definition at line 107 of file VST3EffectBase.cpp.

109{
111 return true;
112}
static void LoadSettings(const CommandParameters &parms, EffectSettings &settings)

References VST3Wrapper::LoadSettings(), and settings().

Here is the call graph for this function:

◆ LoadUserPreset()

OptionalMessage VST3EffectBase::LoadUserPreset ( const RegistryPath name,
EffectSettings settings 
) const
overridevirtual

Change settings to a user-named preset

Returns
nullopt for failure

Reimplemented from Effect.

Definition at line 114 of file VST3EffectBase.cpp.

116{
118}
const TranslatableString name
Definition: Distortion.cpp:76
static OptionalMessage LoadUserPreset(const EffectDefinitionInterface &effect, const RegistryPath &name, EffectSettings &settings)

References VST3Wrapper::LoadUserPreset(), name, and settings().

Here is the call graph for this function:

◆ MakeInstance()

std::shared_ptr< EffectInstance > VST3EffectBase::MakeInstance ( ) const
overridevirtual

Make an object maintaining short-term state of an Effect.

One effect may have multiple instances extant simultaneously. Instances have state, may be implemented in foreign code, and are temporary, whereas EffectSettings represents persistent effect state that can be saved and reloaded from files.

Parameters
settingsmay be assumed to have a lifetime enclosing the instance's
Postcondition
true (no promises that the result isn't null)

Implements EffectInstanceFactory.

Definition at line 157 of file VST3EffectBase.cpp.

158{
159 return std::make_shared<VST3Instance>(*this, *mModule, mEffectClassInfo);
160}

References mEffectClassInfo, and mModule.

◆ MakeSettings()

EffectSettings VST3EffectBase::MakeSettings ( ) const
overridevirtual

Produce an object holding new, independent settings

Default implementation returns an empty any

Reimplemented from EffectSettingsManager.

Definition at line 180 of file VST3EffectBase.cpp.

181{
183}
static EffectSettings MakeSettings()

References VST3Wrapper::MakeSettings().

Here is the call graph for this function:

◆ operator=() [1/2]

VST3EffectBase & VST3EffectBase::operator= ( const VST3EffectBase )
delete

◆ operator=() [2/2]

VST3EffectBase & VST3EffectBase::operator= ( VST3EffectBase )
delete

◆ RealtimeSupport()

auto VST3EffectBase::RealtimeSupport ( ) const
overridevirtual

Since which version of Audacity has the effect supported realtime?

Reimplemented from Effect.

Definition at line 88 of file VST3EffectBase.cpp.

References EffectDefinitionInterface::After_3_1, EffectTypeProcess, GetType(), and EffectDefinitionInterface::Never.

Here is the call graph for this function:

◆ SaveSettings()

bool VST3EffectBase::SaveSettings ( const EffectSettings settings,
CommandParameters parms 
) const
overridevirtual

Store settings as keys and values.

The override may assume parms is initially empty

Returns
true on success

Reimplemented from Effect.

Definition at line 100 of file VST3EffectBase.cpp.

102{
104 return true;
105}
static void SaveSettings(const EffectSettings &settings, CommandParameters &parms)

References VST3Wrapper::SaveSettings(), and settings().

Here is the call graph for this function:

◆ SaveUserPreset()

bool VST3EffectBase::SaveUserPreset ( const RegistryPath name,
const EffectSettings settings 
) const
overridevirtual

Save settings in the configuration file as a user-named preset.

Reimplemented from Effect.

Definition at line 120 of file VST3EffectBase.cpp.

122{
124 return true;
125}
static void SaveUserPreset(const EffectDefinitionInterface &effect, const RegistryPath &name, const EffectSettings &settings)

References name, VST3Wrapper::SaveUserPreset(), and settings().

Here is the call graph for this function:

◆ SupportsAutomation()

bool VST3EffectBase::SupportsAutomation ( ) const
overridevirtual

Whether the effect has any automatable controls.

Reimplemented from Effect.

Definition at line 95 of file VST3EffectBase.cpp.

96{
97 return true;
98}

Friends And Related Function Documentation

◆ VST3PluginValidator

friend class VST3PluginValidator
friend

Definition at line 24 of file VST3EffectBase.h.

Member Data Documentation

◆ mEffectClassInfo

const VST3::Hosting::ClassInfo VST3EffectBase::mEffectClassInfo
protected

◆ mFactoryPresetIDs

std::vector<wxString> VST3EffectBase::mFactoryPresetIDs
mutableprotected

Definition at line 35 of file VST3EffectBase.h.

Referenced by GetFactoryPresets(), and LoadFactoryPreset().

◆ mFactoryPresetNames

RegistryPaths VST3EffectBase::mFactoryPresetNames
mutableprotected

Definition at line 34 of file VST3EffectBase.h.

Referenced by GetFactoryPresets().

◆ mModule

std::shared_ptr<VST3::Hosting::Module> VST3EffectBase::mModule
protected

◆ mRescanFactoryPresets

bool VST3EffectBase::mRescanFactoryPresets { true }
mutableprotected

Definition at line 33 of file VST3EffectBase.h.

Referenced by GetFactoryPresets().


The documentation for this class was generated from the following files: