![]() |
Audacity 3.2.0
|
Objects of this class connect Audacity with VST3 effects. More...
#include <VST3Effect.h>
Public Member Functions | |
VST3Effect (std::shared_ptr< VST3::Hosting::Module > module, VST3::Hosting::ClassInfo effectClassInfo) | |
VST3Effect (const VST3Effect &other) | |
~VST3Effect () 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... | |
bool | SupportsRealtime () const override |
Whether the effect supports realtime previewing (while audio is playing). 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... | |
bool | LoadUserPreset (const RegistryPath &name, EffectSettings &settings) const override |
Change settings to a user-named preset. More... | |
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... | |
bool | LoadFactoryPreset (int id, EffectSettings &settings) const override |
Change settings to the preset whose name is GetFactoryPresets()[id] More... | |
bool | LoadFactoryDefaults (EffectSettings &) const override |
Change settings back to "factory default". More... | |
unsigned | GetAudioInCount () const override |
How many input buffers to allocate at once. More... | |
unsigned | GetAudioOutCount () const override |
How many output buffers to allocate at once. More... | |
int | GetMidiInCount () const override |
Function that has not yet found a use. More... | |
int | GetMidiOutCount () const override |
Function that has not yet found a use. More... | |
size_t | SetBlockSize (size_t maxBlockSize) override |
size_t | GetBlockSize () const override |
sampleCount | GetLatency () override |
bool | ProcessInitialize (EffectSettings &settings, double sampleRate, sampleCount totalLen, ChannelNames chanMap) override |
bool | ProcessFinalize () override |
size_t | ProcessBlock (EffectSettings &settings, const float *const *inBlock, float *const *outBlock, size_t blockLen) override |
Called for destructive effect computation. More... | |
bool | RealtimeInitialize (EffectSettings &settings, double sampleRate) override |
bool | RealtimeAddProcessor (EffectSettings &settings, unsigned numChannels, float sampleRate) override |
bool | RealtimeFinalize (EffectSettings &settings) noexcept override |
bool | RealtimeSuspend () override |
bool | RealtimeResume () override |
bool | RealtimeProcessStart (EffectSettings &settings) override |
settings are possibly changed, since last call, by an asynchronous dialog More... | |
size_t | RealtimeProcess (size_t group, EffectSettings &settings, const float *const *inbuf, float *const *outbuf, size_t numSamples) override |
bool | RealtimeProcessEnd (EffectSettings &settings) noexcept override |
settings can be updated to let a dialog change appearance at idle More... | |
int | ShowClientInterface (wxWindow &parent, wxDialog &dialog, bool forceModal) override |
bool | InitializePlugin () |
std::shared_ptr< EffectInstance > | MakeInstance () const override |
Make an object maintaining short-term state of an Effect. More... | |
std::shared_ptr< EffectInstance > | DoMakeInstance () |
bool | IsGraphicalUI () override |
std::unique_ptr< EffectUIValidator > | PopulateUI (ShuttleGui &S, EffectInstance &instance, EffectSettingsAccess &access) override |
Adds controls to a panel that is given as the parent window of S More... | |
bool | ValidateUI (EffectSettings &) override |
bool | CloseUI () override |
bool | CanExportPresets () override |
void | ExportPresets (const EffectSettings &settings) const override |
void | ImportPresets (EffectSettings &settings) override |
bool | HasOptions () override |
void | ShowOptions () override |
std::shared_ptr< EffectInstance > | MakeInstance () const override |
Make an object maintaining short-term state of an Effect. More... | |
size_t | SetBlockSize (size_t maxBlockSize) override |
size_t | GetBlockSize () const override |
virtual sampleCount | GetLatency () |
virtual bool | ProcessInitialize (EffectSettings &settings, double sampleRate, sampleCount totalLen, ChannelNames chanMap=nullptr) |
virtual bool | ProcessFinalize () |
virtual size_t | ProcessBlock (EffectSettings &settings, const float *const *inBlock, float *const *outBlock, size_t blockLen) |
Called for destructive effect computation. More... | |
![]() | |
virtual bool | Init () |
Call once to set up state for whole list of tracks to be processed. More... | |
virtual bool | Process (EffectInstance &instance, EffectSettings &settings)=0 |
Actually do the effect here. More... | |
virtual bool | RealtimeInitialize (EffectSettings &settings, double sampleRate) |
virtual bool | RealtimeAddProcessor (EffectSettings &settings, unsigned numChannels, float sampleRate) |
virtual bool | RealtimeSuspend () |
virtual bool | RealtimeResume () |
virtual bool | RealtimeProcessStart (EffectSettings &settings) |
settings are possibly changed, since last call, by an asynchronous dialog More... | |
virtual size_t | RealtimeProcess (size_t group, EffectSettings &settings, const float *const *inBuf, float *const *outBuf, size_t numSamples) |
virtual bool | RealtimeProcessEnd (EffectSettings &settings) noexcept |
settings can be updated to let a dialog change appearance at idle More... | |
virtual bool | RealtimeFinalize (EffectSettings &settings) noexcept |
virtual size_t | SetBlockSize (size_t maxBlockSize) |
virtual size_t | GetBlockSize () const |
![]() | |
~PerTrackEffect () override | |
![]() | |
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 |
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... | |
bool | SupportsRealtime () const override |
Whether the effect supports realtime previewing (while audio is playing). 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... | |
bool | LoadUserPreset (const RegistryPath &name, EffectSettings &settings) const override |
Change settings to a user-named preset. More... | |
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... | |
bool | LoadFactoryPreset (int id, EffectSettings &settings) const override |
Change settings to the preset whose name is GetFactoryPresets()[id] More... | |
bool | LoadFactoryDefaults (EffectSettings &settings) const override |
Change settings back to "factory default". More... | |
unsigned | GetAudioInCount () const override |
How many input buffers to allocate at once. More... | |
unsigned | GetAudioOutCount () const override |
How many output buffers to allocate at once. More... | |
virtual const EffectParameterMethods & | Parameters () const |
int | ShowClientInterface (wxWindow &parent, wxDialog &dialog, bool forceModal=false) override |
std::unique_ptr< EffectUIValidator > | PopulateUI (ShuttleGui &S, EffectInstance &instance, EffectSettingsAccess &access) override |
Adds controls to a panel that is given as the parent window of S More... | |
bool | IsGraphicalUI () override |
bool | ValidateUI (EffectSettings &) override |
bool | CloseUI () override |
bool | CanExportPresets () override |
void | ExportPresets (const EffectSettings &settings) const override |
void | ImportPresets (EffectSettings &settings) override |
bool | HasOptions () override |
void | ShowOptions () override |
const EffectSettingsManager & | GetDefinition () const override |
virtual NumericFormatSymbol | GetSelectionFormat () |
int | ShowHostInterface (wxWindow &parent, const EffectDialogFactory &factory, std::shared_ptr< EffectInstance > &pInstance, EffectSettingsAccess &access, bool forceModal=false) override |
Usually applies factory to self and given access. More... | |
bool | SaveSettingsAsString (const EffectSettings &settings, wxString &parms) const override |
bool | LoadSettingsFromString (const wxString &parms, EffectSettings &settings) const override |
bool | IsBatchProcessing () const override |
void | SetBatchProcessing () override |
void | UnsetBatchProcessing () override |
bool | TransferDataToWindow (const EffectSettings &settings) override |
Update controls for the settings. More... | |
bool | TransferDataFromWindow (EffectSettings &settings) override |
Update the given settings from controls. More... | |
unsigned | TestUIFlags (unsigned mask) |
bool | Delegate (Effect &delegate, EffectSettings &settings) |
Re-invoke DoEffect on another Effect object that implements the work. More... | |
int | MessageBox (const TranslatableString &message, long style=DefaultMessageBoxStyle, const TranslatableString &titleStr={}) const |
bool | EnableApply (bool enable=true) |
wxWindow * | GetUIParent () |
![]() | |
EffectBase () | |
~EffectBase () override | |
![]() | |
virtual | ~EffectUIClientInterface () |
virtual int | ShowClientInterface (wxWindow &parent, wxDialog &dialog, bool forceModal=false)=0 |
virtual bool | IsGraphicalUI ()=0 |
virtual std::unique_ptr< EffectUIValidator > | PopulateUI (ShuttleGui &S, EffectInstance &instance, EffectSettingsAccess &access)=0 |
Adds controls to a panel that is given as the parent window of S More... | |
virtual bool | CanExportPresets ()=0 |
virtual void | ExportPresets (const EffectSettings &settings) const =0 |
virtual void | ImportPresets (EffectSettings &settings)=0 |
virtual bool | HasOptions ()=0 |
virtual void | ShowOptions ()=0 |
![]() | |
EffectPlugin & | operator= (EffectPlugin &)=delete |
virtual | ~EffectPlugin () |
virtual const EffectSettingsManager & | GetDefinition () const =0 |
virtual int | ShowHostInterface (wxWindow &parent, const EffectDialogFactory &factory, std::shared_ptr< EffectInstance > &pInstance, EffectSettingsAccess &access, bool forceModal=false)=0 |
Usually applies factory to self and given access. More... | |
virtual void | Preview (EffectSettingsAccess &access, bool dryOnly)=0 |
virtual bool | SaveSettingsAsString (const EffectSettings &settings, wxString &parms) const =0 |
virtual bool | 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, double projectRate, TrackList *list, WaveTrackFactory *factory, NotifyingSelectedRegion &selectedRegion, unsigned flags, wxWindow *pParent=nullptr, const EffectDialogFactory &dialogFactory={}, const EffectSettingsAccessPtr &pAccess=nullptr)=0 |
Unfortunately complicated dual-use function. More... | |
virtual bool | TransferDataToWindow (const EffectSettings &settings)=0 |
Update controls for the settings. More... | |
virtual bool | TransferDataFromWindow (EffectSettings &settings)=0 |
Update the given settings from controls. More... | |
![]() | |
virtual | ~EffectInstanceFactory () |
virtual std::shared_ptr< EffectInstance > | MakeInstance () const =0 |
Make an object maintaining short-term state of an Effect. More... | |
virtual unsigned | GetAudioInCount () const =0 |
How many input buffers to allocate at once. More... | |
virtual unsigned | GetAudioOutCount () const =0 |
How many output buffers to allocate at once. More... | |
virtual int | GetMidiInCount () const |
Function that has not yet found a use. More... | |
virtual int | GetMidiOutCount () const |
Function that has not yet found a use. More... | |
![]() | |
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 | ~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 bool | SupportsRealtime () const =0 |
Whether the effect supports realtime previewing (while audio is playing). More... | |
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... | |
![]() | |
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 Effect * | FetchParameters (Effect &e, EffectSettings &) |
static void | IncEffectCounter () |
![]() | |
static Identifier | GetSquashedName (const Identifier &ident) |
A utility that strips spaces and CamelCases a name. More... | |
Private Member Functions | |
void | Initialize () |
void | OnEffectWindowResize (wxSizeEvent &evt) |
bool | LoadVSTUI (wxWindow *parent) |
void | SyncParameters (EffectSettings &) const |
bool | LoadPreset (const wxString &path) |
void | ReloadUserOptions () |
Private Attributes | |
std::shared_ptr< VST3::Hosting::Module > | mModule |
Steinberg::IPtr< Steinberg::Vst::IComponent > | mEffectComponent |
Steinberg::IPtr< Steinberg::Vst::IAudioProcessor > | mAudioProcessor |
Steinberg::Vst::ProcessSetup | mSetup |
const VST3::Hosting::ClassInfo | mEffectClassInfo |
Steinberg::IPtr< Steinberg::Vst::IConnectionPoint > | mComponentConnectionProxy |
Steinberg::IPtr< Steinberg::Vst::IConnectionPoint > | mControllerConnectionProxy |
Steinberg::IPtr< Steinberg::IPlugView > | mPlugView |
Steinberg::IPtr< Steinberg::Vst::IEditController > | mEditController |
Steinberg::IPtr< internal::ComponentHandler > | mComponentHandler |
wxWindow * | mParent { nullptr } |
NumericTextCtrl * | mDuration { nullptr } |
VST3ParametersWindow * | mPlainUI { nullptr } |
internal::ComponentHandler::PendingChangesPtr | mPendingChanges |
std::vector< std::shared_ptr< VST3Effect > > | mRealtimeGroupProcessors |
bool | mRescanFactoryPresets { true } |
RegistryPaths | mFactoryPresets |
size_t | mUserBlockSize { 8192 } |
bool | mUseLatency { true } |
sampleCount | mInitialDelay { 0 } |
Additional Inherited Members | |
![]() | |
enum | : long { DefaultMessageBoxStyle = wxOK | wxCENTRE } |
![]() | |
using | EffectSettingsAccessPtr = std::shared_ptr< EffectSettingsAccess > |
![]() | |
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>") |
![]() | |
bool | DoPass1 () const |
bool | DoPass2 () const |
bool | Process (EffectInstance &instance, EffectSettings &settings) const |
![]() | |
bool | EnablePreview (bool enable=true) |
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... | |
virtual std::unique_ptr< EffectUIValidator > | PopulateOrExchange (ShuttleGui &S, EffectInstance &instance, EffectSettingsAccess &access) |
Add controls to effect panel; always succeeds. 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, const WaveTrack *pRight, sampleCount *start, sampleCount *len) |
void | CopyInputTracks (bool allSyncLockSelected=false) |
std::shared_ptr< AddedAnalysisTrack > | AddAnalysisTrack (const wxString &name=wxString()) |
ModifiedAnalysisTrack | ModifyAnalysisTrack (const LabelTrack *pOrigTrack, const wxString &name=wxString()) |
Track * | AddToOutputTracks (const std::shared_ptr< Track > &t) |
![]() | |
void | Preview (EffectSettingsAccess &access, bool dryOnly) override |
bool | DoEffect (EffectSettings &settings, double projectRate, TrackList *list, WaveTrackFactory *factory, NotifyingSelectedRegion &selectedRegion, unsigned flags, wxWindow *pParent, const EffectDialogFactory &dialogFactory, const EffectSettingsAccessPtr &pAccess) override |
Unfortunately complicated dual-use function. More... | |
virtual bool | CheckWhetherSkipEffect (const EffectSettings &settings) const =0 |
After Init(), tell whether Process() should be skipped. More... | |
virtual double | CalcPreviewInputLength (const EffectSettings &settings, double previewLength) const =0 |
void | SetLinearEffectFlag (bool linearEffectFlag) |
void | SetPreviewFullSelectionFlag (bool previewDurationFlag) |
bool | IsPreviewing () const |
void | IncludeNotSelectedPreviewTracks (bool includeNotSelected) |
void | ReplaceProcessedTracks (const bool bGoodResult) |
const TrackList * | inputTracks () const |
const AudacityProject * | FindProject () const |
virtual bool | ValidateUI (EffectSettings &settings)=0 |
virtual bool | CloseUI ()=0 |
![]() | |
sampleCount | mSampleCnt {} |
![]() | |
wxWeakRef< wxDialog > | mHostUIDialog |
This smart pointer tracks the lifetime of the dialog. More... | |
wxWindow * | mUIParent {} |
![]() | |
BasicUI::ProgressDialog * | mProgress {} |
double | mProjectRate {} |
WaveTrackFactory * | mFactory {} |
std::shared_ptr< TrackList > | mOutputTracks |
double | mT0 {} |
double | mT1 {} |
wxArrayString | mPresetNames |
unsigned | mUIFlags { 0 } |
![]() | |
friend | EffectUIValidator |
friend | DefaultEffectUIValidator |
![]() | |
static int | nEffectsDone = 0 |
Objects of this class connect Audacity with VST3 effects.
Definition at line 45 of file VST3Effect.h.
VST3Effect::VST3Effect | ( | std::shared_ptr< VST3::Hosting::Module > | module, |
VST3::Hosting::ClassInfo | effectClassInfo | ||
) |
Definition at line 215 of file VST3Effect.cpp.
References Initialize(), anonymous_namespace{VST3Effect.cpp}::LocalContext(), mComponentConnectionProxy, mComponentHandler, mControllerConnectionProxy, mEditController, mEffectComponent, mModule, and safenew.
VST3Effect::VST3Effect | ( | const VST3Effect & | other | ) |
Definition at line 186 of file VST3Effect.cpp.
References Initialize(), mSetup, mUseLatency, and mUserBlockSize.
|
override |
Definition at line 195 of file VST3Effect.cpp.
References CloseUI(), mComponentConnectionProxy, mControllerConnectionProxy, mEditController, and mEffectComponent.
|
overridevirtual |
Reimplemented from Effect.
Definition at line 953 of file VST3Effect.cpp.
|
overridevirtual |
Reimplemented from Effect.
Definition at line 939 of file VST3Effect.cpp.
References mParent, mPlainUI, and mPlugView.
Referenced by ~VST3Effect().
std::shared_ptr< EffectInstance > VST3Effect::DoMakeInstance | ( | ) |
Definition at line 862 of file VST3Effect.cpp.
References ReloadUserOptions().
Referenced by MakeInstance().
|
overridevirtual |
Reimplemented from Effect.
Definition at line 958 of file VST3Effect.cpp.
References mEditController, mEffectClassInfo, mEffectComponent, mParent, SelectFile(), BasicUI::ShowMessageBox(), and XO.
|
overridevirtual |
How many input buffers to allocate at once.
If the effect ALWAYS processes channels independently, this can return 1
Reimplemented from Effect.
Definition at line 560 of file VST3Effect.cpp.
References anonymous_namespace{VST3Effect.cpp}::CountChannels(), anonymous_namespace{AudioSetupToolBar.cpp}::kInput, and mEffectComponent.
|
overridevirtual |
How many output buffers to allocate at once.
Reimplemented from Effect.
Definition at line 569 of file VST3Effect.cpp.
References anonymous_namespace{VST3Effect.cpp}::CountChannels(), anonymous_namespace{AudioSetupToolBar.cpp}::kOutput, and mEffectComponent.
|
overridevirtual |
Default implementation returns mEffectBlockSize
Reimplemented from StatefulPerTrackEffect.
Definition at line 597 of file VST3Effect.cpp.
References mSetup.
|
overridevirtual |
Reimplemented from Effect.
Definition at line 289 of file VST3Effect.cpp.
References mEffectClassInfo, and XO.
|
overridevirtual |
Report names of factory presets.
Reimplemented from Effect.
Definition at line 473 of file VST3Effect.cpp.
References anonymous_namespace{VST3Effect.cpp}::GetFactoryPresetsPath(), mEffectClassInfo, mFactoryPresets, and mRescanFactoryPresets.
|
overridevirtual |
Report identifier and user-visible name of the effect protocol.
Reimplemented from Effect.
Definition at line 308 of file VST3Effect.cpp.
References GetFamilySymbol().
|
static |
Definition at line 181 of file VST3Effect.cpp.
References XO.
Referenced by GetFamily(), and VST3EffectsModule::GetOptionalFamilySymbol().
|
overridevirtual |
Called for destructive, non-realtime effect computation Default implementation returns zero
Reimplemented from StatefulPerTrackEffect.
Definition at line 602 of file VST3Effect.cpp.
References mInitialDelay, mRealtimeGroupProcessors, and mUseLatency.
|
overridevirtual |
Function that has not yet found a use.
Reimplemented from EffectInstanceFactory.
Definition at line 578 of file VST3Effect.cpp.
|
overridevirtual |
Function that has not yet found a use.
Reimplemented from EffectInstanceFactory.
Definition at line 584 of file VST3Effect.cpp.
|
overridevirtual |
Reimplemented from Effect.
Definition at line 269 of file VST3Effect.cpp.
References VST3Utils::MakePluginPathString(), mEffectClassInfo, and mModule.
|
overridevirtual |
Reimplemented from Effect.
Definition at line 274 of file VST3Effect.cpp.
References mEffectClassInfo.
|
overridevirtual |
Type determines how it behaves.
Reimplemented from Effect.
Definition at line 295 of file VST3Effect.cpp.
References EffectTypeGenerate, EffectTypeNone, EffectTypeProcess, and mEffectClassInfo.
Referenced by PopulateUI().
|
overridevirtual |
Reimplemented from Effect.
Definition at line 279 of file VST3Effect.cpp.
References mEffectClassInfo.
|
overridevirtual |
Reimplemented from Effect.
Definition at line 284 of file VST3Effect.cpp.
References mEffectClassInfo.
|
overridevirtual |
Reimplemented from Effect.
Definition at line 1028 of file VST3Effect.cpp.
|
overridevirtual |
Reimplemented from Effect.
Definition at line 1007 of file VST3Effect.cpp.
References LoadPreset(), SelectFile(), and XO.
|
private |
Definition at line 147 of file VST3Effect.cpp.
References anonymous_namespace{VST3Effect.cpp}::ActivateDefaultBuses(), anonymous_namespace{AudioSetupToolBar.cpp}::kInput, anonymous_namespace{AudioSetupToolBar.cpp}::kOutput, anonymous_namespace{VST3Effect.cpp}::LocalContext(), mAudioProcessor, mEffectClassInfo, mEffectComponent, mModule, mSetup, and mUserBlockSize.
Referenced by VST3Effect().
bool VST3Effect::InitializePlugin | ( | ) |
Definition at line 852 of file VST3Effect.cpp.
|
overridevirtual |
Whether the effect sorts "above the line" in the menus.
Reimplemented from Effect.
Definition at line 318 of file VST3Effect.cpp.
|
overridevirtual |
Reimplemented from Effect.
Definition at line 868 of file VST3Effect.cpp.
References mPlugView.
Referenced by ShowClientInterface().
|
overridevirtual |
Whether the effect needs a dialog for entry of settings.
Reimplemented from Effect.
Definition at line 313 of file VST3Effect.cpp.
References mEditController.
|
overridevirtual |
Change settings back to "factory default".
Reimplemented from Effect.
Definition at line 504 of file VST3Effect.cpp.
References mComponentHandler, mEditController, mPlainUI, and VST3ParametersWindow::ReloadParameters().
|
overridevirtual |
Change settings to the preset whose name is GetFactoryPresets()[id]
Reimplemented from Effect.
Definition at line 493 of file VST3Effect.cpp.
References anonymous_namespace{VST3Effect.cpp}::GetFactoryPresetsPath(), LoadPreset(), mEffectClassInfo, and mFactoryPresets.
|
private |
Definition at line 1181 of file VST3Effect.cpp.
References mEditController, mEffectClassInfo, mEffectComponent, mParent, mPlainUI, VST3ParametersWindow::ReloadParameters(), BasicUI::ShowMessageBox(), and XO.
Referenced by ImportPresets(), and LoadFactoryPreset().
|
overridevirtual |
Restore settings from keys and values.
Reimplemented from Effect.
Definition at line 378 of file VST3Effect.cpp.
References id, key, mComponentHandler, mEditController, mPlainUI, VST3Utils::ParseAutomationParameterKey(), and VST3ParametersWindow::ReloadParameters().
|
overridevirtual |
Change settings to a user-named preset.
Reimplemented from Effect.
Definition at line 414 of file VST3Effect.cpp.
References anonymous_namespace{VST3Effect.cpp}::controllerStateKey, PluginSettings::GetConfig(), PluginSettings::HasConfigValue(), mEditController, mEffectComponent, mPlainUI, name, PluginSettings::Private, anonymous_namespace{VST3Effect.cpp}::processorStateKey, VST3ParametersWindow::ReloadParameters(), settings(), and SyncParameters().
|
private |
Definition at line 1071 of file VST3Effect.cpp.
References PluginSettings::GetConfig(), mEditController, mPlugView, OnEffectWindowResize(), safenew, and PluginSettings::Shared.
Referenced by PopulateUI().
|
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.
settings | may be assumed to have a lifetime enclosing the instance's |
true
(no promises that the result isn't null) Reimplemented from StatefulPerTrackEffect.
Definition at line 857 of file VST3Effect.cpp.
References DoMakeInstance().
|
private |
Definition at line 1042 of file VST3Effect.cpp.
References mPlugView.
Referenced by LoadVSTUI().
|
overridevirtual |
Adds controls to a panel that is given as the parent window of S
S | interface for adding controls to a panel in a dialog |
instance | guaranteed to have a lifetime containing that of the returned object |
access | guaranteed to have a lifetime containing that of the returned object |
Reimplemented from Effect.
Definition at line 873 of file VST3Effect.cpp.
References _, NumericTextCtrl::Options::AutoPos(), EffectTypeGenerate, EffectSettings::extra, EffectSettingsAccess::Get(), GetType(), LoadVSTUI(), mComponentHandler, mDuration, mEditController, EffectSettingsAccess::ModifySettings(), mParent, mPlainUI, mSetup, S, safenew, NumericTextCtrl::SetName(), settings(), VST3ParametersWindow::Setup(), SyncParameters(), NumericConverter::TIME, and XO.
|
overridevirtual |
Called for destructive effect computation.
Reimplemented from StatefulPerTrackEffect.
Definition at line 739 of file VST3Effect.cpp.
References mComponentHandler, mEffectComponent, mSetup, and anonymous_namespace{VST3Effect.cpp}::VST3ProcessBlock().
|
overridevirtual |
Called at end of destructive processing, for each (mono/stereo) track Default implementation does nothing, returns true This may be called during stack unwinding:
Reimplemented from StatefulPerTrackEffect.
Definition at line 635 of file VST3Effect.cpp.
References mAudioProcessor, and mEffectComponent.
|
overridevirtual |
Called at start of destructive processing, for each (mono/stereo) track Default implementation does nothing, returns true
Reimplemented from StatefulPerTrackEffect.
Definition at line 615 of file VST3Effect.cpp.
References mAudioProcessor, mEffectComponent, mInitialDelay, mSetup, settings(), and SyncParameters().
|
overridevirtual |
Reimplemented from StatefulEffectBase.
Definition at line 756 of file VST3Effect.cpp.
References mRealtimeGroupProcessors, and settings().
|
overridevirtualnoexcept |
Reimplemented from StatefulEffectBase.
Definition at line 781 of file VST3Effect.cpp.
|
overridevirtual |
Reimplemented from StatefulEffectBase.
Definition at line 748 of file VST3Effect.cpp.
References mSetup, settings(), and SyncParameters().
|
overridevirtual |
Reimplemented from StatefulEffectBase.
Definition at line 819 of file VST3Effect.cpp.
References mPendingChanges, mRealtimeGroupProcessors, and anonymous_namespace{VST3Effect.cpp}::VST3ProcessBlock().
|
overridevirtualnoexcept |
settings can be updated to let a dialog change appearance at idle
Reimplemented from StatefulEffectBase.
Definition at line 828 of file VST3Effect.cpp.
|
overridevirtual |
settings are possibly changed, since last call, by an asynchronous dialog
Reimplemented from StatefulEffectBase.
Definition at line 809 of file VST3Effect.cpp.
References mComponentHandler, and mPendingChanges.
|
overridevirtual |
Reimplemented from StatefulEffectBase.
Definition at line 802 of file VST3Effect.cpp.
References mRealtimeGroupProcessors.
|
overridevirtual |
Reimplemented from StatefulEffectBase.
Definition at line 795 of file VST3Effect.cpp.
References mRealtimeGroupProcessors.
|
private |
Definition at line 1220 of file VST3Effect.cpp.
References PluginSettings::GetConfig(), mUseLatency, mUserBlockSize, SetBlockSize(), and PluginSettings::Shared.
Referenced by DoMakeInstance(), and ShowOptions().
|
overridevirtual |
Store settings as keys and values.
The override may assume parms
is initially empty
Reimplemented from Effect.
Definition at line 352 of file VST3Effect.cpp.
References VST3Utils::MakeAutomationParameterKey(), and mEditController.
|
overridevirtual |
Save settings in the configuration file as a user-named preset.
Reimplemented from Effect.
Definition at line 452 of file VST3Effect.cpp.
References anonymous_namespace{VST3Effect.cpp}::controllerStateKey, mEditController, mEffectComponent, name, PluginSettings::Private, anonymous_namespace{VST3Effect.cpp}::processorStateKey, safenew, and PluginSettings::SetConfig().
|
overridevirtual |
Default implementation assigns mEffectBlockSize, returns it
Reimplemented from StatefulPerTrackEffect.
Definition at line 590 of file VST3Effect.cpp.
References min(), mSetup, and mUserBlockSize.
Referenced by ReloadUserOptions().
|
overridevirtual |
Reimplemented from Effect.
Definition at line 837 of file VST3Effect.cpp.
References IsGraphicalUI().
|
overridevirtual |
Reimplemented from Effect.
Definition at line 1033 of file VST3Effect.cpp.
References mParent, and ReloadUserOptions().
|
overridevirtual |
Whether the effect has any automatable controls.
Reimplemented from Effect.
Definition at line 332 of file VST3Effect.cpp.
References mEditController.
|
overridevirtual |
Whether the effect supports realtime previewing (while audio is playing).
Reimplemented from Effect.
Definition at line 323 of file VST3Effect.cpp.
|
private |
Definition at line 1157 of file VST3Effect.cpp.
References mComponentHandler, and mEditController.
Referenced by LoadUserPreset(), PopulateUI(), ProcessInitialize(), and RealtimeInitialize().
|
overridevirtual |
Reimplemented from Effect.
Definition at line 932 of file VST3Effect.cpp.
References NumericConverter::GetValue(), mDuration, and settings().
|
private |
Definition at line 53 of file VST3Effect.h.
Referenced by Initialize(), ProcessFinalize(), and ProcessInitialize().
|
private |
Definition at line 60 of file VST3Effect.h.
Referenced by VST3Effect(), and ~VST3Effect().
|
private |
Definition at line 65 of file VST3Effect.h.
Referenced by LoadFactoryDefaults(), LoadSettings(), PopulateUI(), ProcessBlock(), RealtimeProcessStart(), SyncParameters(), and VST3Effect().
|
private |
Definition at line 61 of file VST3Effect.h.
Referenced by VST3Effect(), and ~VST3Effect().
|
private |
Definition at line 67 of file VST3Effect.h.
Referenced by PopulateUI(), and ValidateUI().
|
private |
Definition at line 64 of file VST3Effect.h.
Referenced by ExportPresets(), IsInteractive(), LoadFactoryDefaults(), LoadPreset(), LoadSettings(), LoadUserPreset(), LoadVSTUI(), PopulateUI(), SaveSettings(), SaveUserPreset(), SupportsAutomation(), SyncParameters(), VST3Effect(), and ~VST3Effect().
|
private |
Definition at line 55 of file VST3Effect.h.
Referenced by ExportPresets(), GetDescription(), GetFactoryPresets(), GetPath(), GetSymbol(), GetType(), GetVendor(), GetVersion(), Initialize(), LoadFactoryPreset(), and LoadPreset().
|
private |
Definition at line 52 of file VST3Effect.h.
Referenced by ExportPresets(), GetAudioInCount(), GetAudioOutCount(), Initialize(), LoadPreset(), LoadUserPreset(), ProcessBlock(), ProcessFinalize(), ProcessInitialize(), SaveUserPreset(), VST3Effect(), and ~VST3Effect().
|
mutableprivate |
Definition at line 79 of file VST3Effect.h.
Referenced by GetFactoryPresets(), and LoadFactoryPreset().
|
private |
Definition at line 83 of file VST3Effect.h.
Referenced by GetLatency(), and ProcessInitialize().
|
private |
Definition at line 48 of file VST3Effect.h.
Referenced by GetPath(), Initialize(), and VST3Effect().
|
private |
Definition at line 66 of file VST3Effect.h.
Referenced by CloseUI(), ExportPresets(), LoadPreset(), PopulateUI(), and ShowOptions().
|
private |
Definition at line 73 of file VST3Effect.h.
Referenced by RealtimeProcess(), and RealtimeProcessStart().
|
private |
Definition at line 69 of file VST3Effect.h.
Referenced by CloseUI(), LoadFactoryDefaults(), LoadPreset(), LoadSettings(), LoadUserPreset(), and PopulateUI().
|
private |
Definition at line 63 of file VST3Effect.h.
Referenced by CloseUI(), IsGraphicalUI(), LoadVSTUI(), and OnEffectWindowResize().
|
private |
Definition at line 75 of file VST3Effect.h.
Referenced by GetLatency(), RealtimeAddProcessor(), RealtimeProcess(), RealtimeResume(), and RealtimeSuspend().
|
mutableprivate |
Definition at line 78 of file VST3Effect.h.
Referenced by GetFactoryPresets().
|
private |
Definition at line 54 of file VST3Effect.h.
Referenced by GetBlockSize(), Initialize(), PopulateUI(), ProcessBlock(), ProcessInitialize(), RealtimeInitialize(), SetBlockSize(), and VST3Effect().
|
private |
Definition at line 82 of file VST3Effect.h.
Referenced by GetLatency(), ReloadUserOptions(), and VST3Effect().
|
private |
Definition at line 81 of file VST3Effect.h.
Referenced by Initialize(), ReloadUserOptions(), SetBlockSize(), and VST3Effect().