Audacity  2.2.0
Noise.h
Go to the documentation of this file.
1 /**********************************************************************
2 
3  Audacity: A Digital Audio Editor
4 
5  Noise.h
6 
7  Dominic Mazzoni
8 
9  An effect to add white noise.
10 
11 **********************************************************************/
12 
13 #ifndef __AUDACITY_EFFECT_NOISE__
14 #define __AUDACITY_EFFECT_NOISE__
15 
16 #include <wx/string.h>
17 
18 #include "../widgets/NumericTextCtrl.h"
19 
20 #include "Effect.h"
21 
22 class ShuttleGui;
23 
24 #define NOISE_PLUGIN_SYMBOL XO("Noise")
25 
26 class EffectNoise final : public Effect
27 {
28 public:
29  EffectNoise();
30  virtual ~EffectNoise();
31 
32  // IdentInterface implementation
33 
34  wxString GetSymbol() override;
35  wxString GetDescription() override;
36  wxString ManualPage() override;
37 
38  // EffectIdentInterface implementation
39 
40  EffectType GetType() override;
41 
42  // EffectClientInterface implementation
43 
44  unsigned GetAudioOutCount() override;
45  size_t ProcessBlock(float **inBlock, float **outBlock, size_t blockLen) override;
46  bool GetAutomationParameters(EffectAutomationParameters & parms) override;
47  bool SetAutomationParameters(EffectAutomationParameters & parms) override;
48 
49  // Effect implementation
50 
51  bool Startup() override;
52  void PopulateOrExchange(ShuttleGui & S) override;
53  bool TransferDataToWindow() override;
54  bool TransferDataFromWindow() override;
55 
56 private:
57  // EffectNoise implementation
58 
59 private:
60  int mType;
61  double mAmp;
62 
63  float y, z, buf0, buf1, buf2, buf3, buf4, buf5, buf6;
64 
66 };
67 
68 #endif
NumericTextCtrl * mNoiseDurationT
Definition: Noise.h:65
bool Startup() override
Definition: Noise.cpp:186
float buf1
Definition: Noise.h:63
Derived from ShuttleGuiBase, an Audacity specific class for shuttling data to and from GUI...
Definition: ShuttleGui.h:366
EffectNoise()
Definition: Noise.cpp:55
float y
Definition: Noise.h:63
bool TransferDataToWindow() override
Definition: Noise.cpp:250
Base class for many of the effects in Audacity.
Definition: Effect.h:62
float buf3
Definition: Noise.h:63
int mType
Definition: Noise.h:60
float buf2
Definition: Noise.h:63
double mAmp
Definition: Noise.h:61
size_t ProcessBlock(float **inBlock, float **outBlock, size_t blockLen) override
Definition: Noise.cpp:100
EffectType GetType() override
Definition: Noise.cpp:88
bool GetAutomationParameters(EffectAutomationParameters &parms) override
Definition: Noise.cpp:165
unsigned GetAudioOutCount() override
Definition: Noise.cpp:95
wxString ManualPage() override
Definition: Noise.cpp:81
float buf5
Definition: Noise.h:63
Definition: NumericTextCtrl.h:141
wxString GetSymbol() override
Definition: Noise.cpp:71
bool SetAutomationParameters(EffectAutomationParameters &parms) override
Definition: Noise.cpp:173
void PopulateOrExchange(ShuttleGui &S) override
Definition: Noise.cpp:214
bool TransferDataFromWindow() override
Definition: Noise.cpp:262
float z
Definition: Noise.h:63
float buf4
Definition: Noise.h:63
virtual ~EffectNoise()
Definition: Noise.cpp:65
wxString GetDescription() override
Definition: Noise.cpp:76
float buf6
Definition: Noise.h:63
An effect to add white noise.
Definition: Noise.h:26
float buf0
Definition: Noise.h:63