[f4598c]: trunk / src / faust-generated / tonestack_groove.cc  Maximize  Restore  History

Download this file

157 lines (136 with data), 5.2 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
// generated from file '../src/faust/tonestack_groove.dsp' by dsp2cc:
// Code generated with Faust 0.9.43 (http://faust.grame.fr)
namespace tonestack_groove {
class Dsp: public PluginDef {
private:
int fSamplingFreq;
FAUSTFLOAT fslider0;
FAUSTFLOAT *fslider0_;
FAUSTFLOAT fslider1;
FAUSTFLOAT *fslider1_;
double fConst0;
double fConst1;
double fConst2;
double fRec0[4];
FAUSTFLOAT fslider2;
FAUSTFLOAT *fslider2_;
void clear_state_f();
void init(unsigned int samplingFreq);
void compute(int count, float *input0, float *output0);
int register_par(const ParamReg& reg);
static void clear_state_f_static(PluginDef*);
static void init_static(unsigned int samplingFreq, PluginDef*);
static void compute_static(int count, float *input0, float *output0, PluginDef*);
static int register_params_static(const ParamReg& reg);
static void del_instance(PluginDef *p);
public:
Dsp();
~Dsp();
};
Dsp::Dsp()
: PluginDef() {
version = PLUGINDEF_VERSION;
flags = 0;
id = "Trio Preamp";
name = N_("Trio Preamp");
groups = 0;
description = ""; // description (tooltip)
category = ""; // category
shortname = ""; // shortname
mono_audio = compute_static;
stereo_audio = 0;
set_samplerate = init_static;
activate_plugin = 0;
register_params = register_params_static;
load_ui = 0;
clear_state = clear_state_f_static;
delete_instance = del_instance;
}
Dsp::~Dsp() {
}
inline void Dsp::clear_state_f()
{
for (int i=0; i<4; i++) fRec0[i] = 0;
}
void Dsp::clear_state_f_static(PluginDef *p)
{
static_cast<Dsp*>(p)->clear_state_f();
}
inline void Dsp::init(unsigned int samplingFreq)
{
fSamplingFreq = samplingFreq;
fConst0 = (2 * double(min(192000, max(1, fSamplingFreq))));
fConst1 = faustpower<2>(fConst0);
fConst2 = (3 * fConst0);
clear_state_f();
}
void Dsp::init_static(unsigned int samplingFreq, PluginDef *p)
{
static_cast<Dsp*>(p)->init(samplingFreq);
}
inline void Dsp::compute(int count, float *input0, float *output0)
{
#define fslider0 (*fslider0_)
#define fslider1 (*fslider1_)
#define fslider2 (*fslider2_)
double fSlow0 = fslider0;
double fSlow1 = (2.3926056000000006e-07 * fSlow0);
double fSlow2 = exp((3.4 * (fslider1 - 1)));
double fSlow3 = (1.1144196800000003e-06 + ((3.659304000000001e-05 * fSlow2) + (fSlow0 * (((1.0875480000000001e-05 * fSlow2) - 4.347578400000001e-07) - fSlow1))));
double fSlow4 = ((1.4413132800000006e-09 * fSlow2) - (3.1708892160000014e-11 * fSlow0));
double fSlow5 = (3.403100800000001e-09 * fSlow2);
double fSlow6 = (7.486821760000003e-11 + (fSlow5 + (fSlow0 * (fSlow4 - 4.315932544000001e-11))));
double fSlow7 = (fConst0 * fSlow6);
double fSlow8 = (0.00048400000000000006 * fSlow0);
double fSlow9 = (0.022470000000000004 * fSlow2);
double fSlow10 = (fConst0 * (0.00358974 + (fSlow9 + fSlow8)));
double fSlow11 = ((fSlow10 + (fConst1 * (fSlow7 - fSlow3))) - 1);
double fSlow12 = (fConst2 * fSlow6);
double fSlow13 = ((fConst1 * (fSlow3 + fSlow12)) - (3 + fSlow10));
double fSlow14 = ((fSlow10 + (fConst1 * (fSlow3 - fSlow12))) - 3);
double fSlow15 = (1.0 / (0 - (1 + (fSlow10 + (fConst1 * (fSlow3 + fSlow7))))));
double fSlow16 = fslider2;
double fSlow17 = ((fSlow0 * (3.1708892160000014e-11 + fSlow4)) + (fSlow16 * ((7.486821760000003e-11 - (7.486821760000003e-11 * fSlow0)) + fSlow5)));
double fSlow18 = (fConst2 * fSlow17);
double fSlow19 = (8.098288000000002e-08 + (((3.0937280000000007e-07 * fSlow16) + (fSlow0 * (2.893061600000001e-07 - fSlow1))) + (fSlow2 * (3.6810400000000007e-06 + (1.0875480000000001e-05 * fSlow0)))));
double fSlow20 = (0.00049434 + (fSlow9 + (fSlow8 + (0.0001034 * fSlow16))));
double fSlow21 = (fConst0 * fSlow20);
double fSlow22 = (fSlow21 + (fConst1 * (fSlow19 - fSlow18)));
double fSlow23 = (fConst0 * fSlow17);
double fSlow24 = (fSlow21 + (fConst1 * (fSlow23 - fSlow19)));
double fSlow25 = (fConst0 * (0 - fSlow20));
double fSlow26 = (fSlow25 + (fConst1 * (fSlow19 + fSlow18)));
double fSlow27 = (fSlow25 - (fConst1 * (fSlow19 + fSlow23)));
for (int i=0; i<count; i++) {
fRec0[0] = ((double)input0[i] - (fSlow15 * (((fSlow14 * fRec0[2]) + (fSlow13 * fRec0[1])) + (fSlow11 * fRec0[3]))));
output0[i] = (FAUSTFLOAT)(fSlow15 * ((fSlow27 * fRec0[0]) + ((fSlow26 * fRec0[1]) + ((fSlow24 * fRec0[3]) + (fSlow22 * fRec0[2])))));
// post processing
for (int i=3; i>0; i--) fRec0[i] = fRec0[i-1];
}
#undef fslider0
#undef fslider1
#undef fslider2
}
void Dsp::compute_static(int count, float *input0, float *output0, PluginDef *p)
{
static_cast<Dsp*>(p)->compute(count, input0, output0);
}
int Dsp::register_par(const ParamReg& reg)
{
fslider2_ = reg.registerVar("amp.tonestack.Treble","","SA","",&fslider2, 0.5, 0.0, 1.0, 0.01);
fslider1_ = reg.registerVar("amp.tonestack.Bass","","SA","",&fslider1, 0.5, 0.0, 1.0, 0.01);
fslider0_ = reg.registerVar("amp.tonestack.Middle","","SA","",&fslider0, 0.5, 0.0, 1.0, 0.01);
return 0;
}
int Dsp::register_params_static(const ParamReg& reg)
{
return static_cast<Dsp*>(reg.plugin)->register_par(reg);
}
PluginDef *plugin() {
return new Dsp();
}
void Dsp::del_instance(PluginDef *p)
{
delete static_cast<Dsp*>(p);
}
} // end namespace tonestack_groove

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks