/********************************************************************** Audacity: A Digital Audio Editor NoiseReduction.h Dominic Mazzoni Vaughan Johnson (Preview) Paul Licameli **********************************************************************/ #ifndef __AUDACITY_EFFECT_NOISE_REDUCTION__ #define __AUDACITY_EFFECT_NOISE_REDUCTION__ #include "Effect.h" #define NOISEREDUCTION_PLUGIN_SYMBOL ComponentInterfaceSymbol{ XO("Noise Reduction") } class EffectNoiseReduction final : public Effect { public: EffectNoiseReduction(); virtual ~EffectNoiseReduction(); using Effect::TrackProgress; // ComponentInterface implementation ComponentInterfaceSymbol GetSymbol() override; TranslatableString GetDescription() override; // EffectDefinitionInterface implementation EffectType GetType() override; // Effect implementation // using Effect::TrackProgress; bool PromptUser(wxWindow *parent) override; bool Init() override; bool CheckWhetherSkipEffect() override; bool Process() override; class Settings; class Statistics; class Dialog; private: class Worker; friend class Dialog; std::unique_ptr mSettings; std::unique_ptr mStatistics; }; #endif