Audacity 3.2.0
Public Member Functions | List of all members
EffectInstanceEx Class Referenceabstract

Performs effect computation. More...

#include <EffectPlugin.h>

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

Public Member Functions

virtual bool Init ()
 Call once to set up state for whole list of tracks to be processed. More...
 
virtual bool Process (EffectSettings &settings)=0
 Actually do the effect here. More...
 
 ~EffectInstanceEx () override
 
- Public Member Functions inherited from EffectInstance
virtual ~EffectInstance ()
 
virtual size_t GetBlockSize () const =0
 
virtual size_t SetBlockSize (size_t maxBlockSize)=0
 
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 bool RealtimeInitialize (EffectSettings &settings, double sampleRate)
 
virtual bool RealtimeAddProcessor (EffectSettings &settings, EffectOutputs *pOutputs, unsigned numChannels, float sampleRate)
 
virtual bool RealtimeSuspend ()
 
virtual bool RealtimeResume ()
 
virtual std::unique_ptr< MessageMakeMessage () const
 Called on the main thread, in which the result may be cloned. More...
 
virtual bool UsesMessages () const noexcept
 
virtual bool RealtimeProcessStart (MessagePackage &package)
 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 void RealtimePassThrough (size_t group, EffectSettings &settings, const float *const *inBuf, size_t numSamples)
 Called instead of RealtimeProcess when the effect is bypassed. Default implementation does nothing. More...
 
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 GetTailSize () const
 
virtual SampleCount GetLatency (const EffectSettings &settings, double sampleRate) const
 
virtual bool NeedsDither () const
 
virtual bool ProcessInitialize (EffectSettings &settings, double sampleRate, ChannelNames chanMap)=0
 
virtual bool ProcessFinalize () noexcept=0
 
virtual size_t ProcessBlock (EffectSettings &settings, const float *const *inBlock, float *const *outBlock, size_t blockLen)=0
 Called for destructive effect computation. More...
 

Additional Inherited Members

- Public Types inherited from EffectInstance
using Message = EffectSettingsAccess::Message
 
using SampleCount = uint64_t
 

Detailed Description

Performs effect computation.

Definition at line 96 of file EffectPlugin.h.

Constructor & Destructor Documentation

◆ ~EffectInstanceEx()

EffectInstanceEx::~EffectInstanceEx ( )
overridedefault

Member Function Documentation

◆ Init()

bool EffectInstanceEx::Init ( )
virtual

Call once to set up state for whole list of tracks to be processed.

Returns
success Default implementation does nothing, returns true

Reimplemented in StatefulEffectBase::Instance.

Definition at line 21 of file EffectPlugin.cpp.

22{
23 return true;
24}

◆ Process()

virtual bool EffectInstanceEx::Process ( EffectSettings settings)
pure virtual

Actually do the effect here.

Returns
success

Implemented in PerTrackEffect::Instance, and StatefulEffect::Instance.


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