mirror of
https://github.com/cookiengineer/audacity
synced 2025-05-11 22:51:06 +02:00
52 lines
1.2 KiB
C++
52 lines
1.2 KiB
C++
/**********************************************************************
|
|
|
|
Audacity: A Digital Audio Editor
|
|
|
|
Fade.h
|
|
|
|
Dominic Mazzoni
|
|
|
|
**********************************************************************/
|
|
|
|
#ifndef __AUDACITY_EFFECT_FADE__
|
|
#define __AUDACITY_EFFECT_FADE__
|
|
|
|
#include <wx/string.h>
|
|
|
|
#include "Effect.h"
|
|
|
|
#define FADEIN_PLUGIN_SYMBOL IdentInterfaceSymbol{ XO("Fade In") }
|
|
#define FADEOUT_PLUGIN_SYMBOL IdentInterfaceSymbol{ XO("Fade Out") }
|
|
|
|
class EffectFade final : public Effect
|
|
{
|
|
public:
|
|
EffectFade(bool fadeIn = false);
|
|
virtual ~EffectFade();
|
|
|
|
// IdentInterface implementation
|
|
|
|
IdentInterfaceSymbol GetSymbol() override;
|
|
wxString GetDescription() override;
|
|
|
|
// EffectDefinitionInterface implementation
|
|
|
|
EffectType GetType() override;
|
|
bool IsInteractive() override;
|
|
|
|
// EffectClientInterface implementation
|
|
|
|
unsigned GetAudioInCount() override;
|
|
unsigned GetAudioOutCount() override;
|
|
bool ProcessInitialize(sampleCount totalLen, ChannelNames chanMap = NULL) override;
|
|
size_t ProcessBlock(float **inBlock, float **outBlock, size_t blockLen) override;
|
|
|
|
private:
|
|
// EffectFadeIn implementation
|
|
|
|
bool mFadeIn;
|
|
sampleCount mSample;
|
|
};
|
|
|
|
#endif
|