/********************************************************************** Audacity: A Digital Audio Editor FindClipping.h Dominic Mazzoni Vaughan Johnson (dialog) **********************************************************************/ #ifndef __AUDACITY_EFFECT_FINDCLIPPING__ #define __AUDACITY_EFFECT_FINDCLIPPING__ class wxString; class LabelTrack; #include "Effect.h" class EffectFindClipping final : public Effect { public: static const ComponentInterfaceSymbol Symbol; EffectFindClipping(); virtual ~EffectFindClipping(); // ComponentInterface implementation ComponentInterfaceSymbol GetSymbol() override; TranslatableString GetDescription() override; ManualPageID ManualPage() override; // EffectDefinitionInterface implementation EffectType GetType() override; // EffectClientInterface implementation bool DefineParams( ShuttleParams & S ) override; bool GetAutomationParameters(CommandParameters & parms) override; bool SetAutomationParameters(CommandParameters & parms) override; // Effect implementation bool Process() override; void PopulateOrExchange(ShuttleGui & S) override; bool TransferDataToWindow() override; bool TransferDataFromWindow() override; private: // EffectFindCliping implementation bool ProcessOne(LabelTrack *lt, int count, const WaveTrack * wt, sampleCount start, sampleCount len); private: int mStart; ///< Using int rather than sampleCount because values are only ever small numbers int mStop; ///< Using int rather than sampleCount because values are only ever small numbers }; #endif // __AUDACITY_EFFECT_FINDCLIPPING__