1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-05-05 14:18:53 +02:00
audacity/src/effects/Paulstretch.h
2015-07-19 12:31:03 -04:00

67 lines
1.4 KiB
C++

/**********************************************************************
Audacity: A Digital Audio Editor
Paulstretch.h
Nasca Octavian Paul (Paul Nasca)
**********************************************************************/
#ifndef __AUDACITY_EFFECT_PAULSTRETCH__
#define __AUDACITY_EFFECT_PAULSTRETCH__
#include <wx/string.h>
#include "../WaveTrack.h"
#include "Effect.h"
class ShuttleGui;
#define PAULSTRETCH_PLUGIN_SYMBOL XO("Paulstretch")
class EffectPaulstretch : public Effect
{
public:
EffectPaulstretch();
virtual ~EffectPaulstretch();
// IdentInterface implementation
virtual wxString GetSymbol();
virtual wxString GetDescription();
// EffectIdentInterface implementation
virtual EffectType GetType();
// EffectClientInterface implementation
virtual bool GetAutomationParameters(EffectAutomationParameters & parms);
virtual bool SetAutomationParameters(EffectAutomationParameters & parms);
// Effect implementation
virtual bool Process();
virtual void PopulateOrExchange(ShuttleGui & S);
virtual bool TransferDataToWindow();
virtual bool TransferDataFromWindow();
private:
// EffectPaulstretch implementation
void OnText(wxCommandEvent & evt);
bool ProcessOne(WaveTrack *track, double t0, double t1, int count);
private:
float amount;
float time_resolution; //seconds
double m_t1;
DECLARE_EVENT_TABLE();
};
#endif