12#ifndef __AUDACITY_EFFECT_TWOPASSSIMPLEMONO__
13#define __AUDACITY_EFFECT_TWOPASSSIMPLEMONO__
34 virtual bool InitPass1();
35 virtual bool InitPass2();
41 virtual bool NewTrackPass1();
42 virtual bool NewTrackPass2();
46 (
float * WXUNUSED(buffer),
size_t WXUNUSED(len))
50 (
float * WXUNUSED(buffer),
size_t WXUNUSED(len))
61 [[maybe_unused]]
float *buffer2,
62 [[maybe_unused]]
size_t len2)
65 return ProcessPass1(buffer1, len1);
69 [[maybe_unused]]
float * buffer2,
70 [[maybe_unused]]
size_t len2)
73 return ProcessPass2(buffer1, len1);
static Settings & settings()
Performs effect computation.
An Effect base class that implements a two pass process.
virtual bool ProcessPass1(float *WXUNUSED(buffer), size_t WXUNUSED(len))
Override this method to actually process audio.
virtual bool TwoBufferProcessPass2(float *buffer1, size_t len1, float *buffer2, size_t len2)
virtual bool ProcessPass2(float *WXUNUSED(buffer), size_t WXUNUSED(len))
virtual bool TwoBufferProcessPass1(float *buffer1, size_t len1, float *buffer2, size_t len2)
void DisableSecondPass()
Call this if you know in advance that no second pass will be needed.
~EffectTwoPassSimpleMono() override
std::shared_ptr< TrackList > mWorkTracks
virtual bool Process(EffectInstance &instance, EffectSettings &settings)=0
A flat linked list of tracks supporting Add, Remove, Clear, and Contains, serialization of the list o...
Positions or offsets within audio files need a wide type.
const char * end(const char *str) noexcept
Externalized state of a plug-in.