LMMS
Loading...
Searching...
No Matches
revmodel.h
Go to the documentation of this file.
1// Reverb model declaration
2//
3// Written by Jezar at Dreampoint, June 2000
4// http://www.dreampoint.co.uk
5// This code is public domain
6
7#ifndef _revmodel_
8#define _revmodel_
9
10#include "comb.h"
11#include "allpass.h"
12#include "tuning.h"
13
14// enough for largest possible samplerate, 8 * 96000
15const int maxsampleratio = 18;
16
18{
19public:
20 revmodel(float samplerate);
21 ~revmodel();
22 void mute();
23 void processmix(float *inputL, float *inputR, float *outputL, float *outputR, long numsamples, int skip);
24 void processreplace(float *inputL, float *inputR, float *outputL, float *outputR, long numsamples, int skip);
25 void setroomsize(float value);
26 float getroomsize();
27 void setdamp(float value);
28 float getdamp();
29 void setwet(float value);
30 float getwet();
31 void setdry(float value);
32 float getdry();
33 void setwidth(float value);
34 float getwidth();
35 void setmode(float value);
36 float getmode();
37private:
38 int calcbufferlength(int tuning, float ratio);
39 void update();
40private:
41 float gain;
43 float damp,damp1;
44 float wet,wet1,wet2;
45 float dry;
46 float width;
47 float mode;
48
49 // Comb filters
52
53 // Allpass filters
56
57 // Buffers for the combs and allpasses
58 float *buffers;
59
60};
61
62#endif//_revmodel_
63
64//ends
Definition allpass.h:12
Definition comb.h:13
void update()
Definition revmodel.cpp:244
float getroomsize()
Definition revmodel.cpp:290
comb combR[numcombs]
Definition revmodel.h:51
void setdry(float value)
Definition revmodel.cpp:317
void setmode(float value)
Definition revmodel.cpp:338
float gain
Definition revmodel.h:41
allpass allpassR[numallpasses]
Definition revmodel.h:55
float getdry()
Definition revmodel.cpp:322
float * buffers
Definition revmodel.h:58
float dry
Definition revmodel.h:45
void setwet(float value)
Definition revmodel.cpp:306
void mute()
Definition revmodel.cpp:153
float damp
Definition revmodel.h:43
float roomsize
Definition revmodel.h:42
float wet2
Definition revmodel.h:44
float getmode()
Definition revmodel.cpp:344
void processmix(float *inputL, float *inputR, float *outputL, float *outputR, long numsamples, int skip)
Definition revmodel.cpp:208
float width
Definition revmodel.h:46
~revmodel()
Definition revmodel.cpp:148
float roomsize1
Definition revmodel.h:42
float wet1
Definition revmodel.h:44
float damp1
Definition revmodel.h:43
void setwidth(float value)
Definition revmodel.cpp:327
float getdamp()
Definition revmodel.cpp:301
allpass allpassL[numallpasses]
Definition revmodel.h:54
float mode
Definition revmodel.h:47
float getwidth()
Definition revmodel.cpp:333
comb combL[numcombs]
Definition revmodel.h:50
int calcbufferlength(int tuning, float ratio)
Definition revmodel.cpp:10
void setroomsize(float value)
Definition revmodel.cpp:284
void setdamp(float value)
Definition revmodel.cpp:295
float getwet()
Definition revmodel.cpp:312
float wet
Definition revmodel.h:44
revmodel(float samplerate)
Definition revmodel.cpp:21
void processreplace(float *inputL, float *inputR, float *outputL, float *outputR, long numsamples, int skip)
Definition revmodel.cpp:172
static PuglViewHint int value
Definition pugl.h:1708
const int maxsampleratio
Definition revmodel.h:15
const int numcombs
Definition tuning.h:10
const int numallpasses
Definition tuning.h:11