~ubuntu-branches/ubuntu/quantal/muse/quantal

« back to all changes in this revision

Viewing changes to plugins/freeverb/revmodel.h

  • Committer: Bazaar Package Importer
  • Author(s): Daniel Kobras
  • Date: 2002-04-23 17:28:23 UTC
  • Revision ID: james.westby@ubuntu.com-20020423172823-w8yplzr81a759xa3
Tags: upstream-0.5.2
ImportĀ upstreamĀ versionĀ 0.5.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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
#include "../../ladspa.h"
 
14
 
 
15
//---------------------------------------------------------
 
16
//   Revmodel
 
17
//---------------------------------------------------------
 
18
 
 
19
class Revmodel {
 
20
      float     gain;
 
21
      float     roomsize,roomsize1;
 
22
      float     damp,damp1;
 
23
      float     width;
 
24
      float     mode;
 
25
 
 
26
      // Comb filters
 
27
      comb combL[numcombs];
 
28
      comb combR[numcombs];
 
29
 
 
30
      // Allpass filters
 
31
      allpass allpassL[numallpasses];
 
32
      allpass allpassR[numallpasses];
 
33
 
 
34
      // Buffers for the combs
 
35
      float     bufcombL1[combtuningL1];
 
36
      float     bufcombR1[combtuningR1];
 
37
      float     bufcombL2[combtuningL2];
 
38
      float     bufcombR2[combtuningR2];
 
39
      float     bufcombL3[combtuningL3];
 
40
      float     bufcombR3[combtuningR3];
 
41
      float     bufcombL4[combtuningL4];
 
42
      float     bufcombR4[combtuningR4];
 
43
      float     bufcombL5[combtuningL5];
 
44
      float     bufcombR5[combtuningR5];
 
45
      float     bufcombL6[combtuningL6];
 
46
      float     bufcombR6[combtuningR6];
 
47
      float     bufcombL7[combtuningL7];
 
48
      float     bufcombR7[combtuningR7];
 
49
      float     bufcombL8[combtuningL8];
 
50
      float     bufcombR8[combtuningR8];
 
51
 
 
52
      // Buffers for the allpasses
 
53
      float     bufallpassL1[allpasstuningL1];
 
54
      float     bufallpassR1[allpasstuningR1];
 
55
      float     bufallpassL2[allpasstuningL2];
 
56
      float     bufallpassR2[allpasstuningR2];
 
57
      float     bufallpassL3[allpasstuningL3];
 
58
      float     bufallpassR3[allpasstuningR3];
 
59
      float     bufallpassL4[allpasstuningL4];
 
60
      float     bufallpassR4[allpasstuningR4];
 
61
      void update();
 
62
 
 
63
   public:
 
64
      LADSPA_Data* port[7];
 
65
      float param[3];
 
66
 
 
67
      Revmodel();
 
68
        void    processmix(long numsamples);
 
69
        void    processreplace(long numsamples);
 
70
        void    setroomsize(float value);
 
71
        float   getroomsize();
 
72
        void    setdamp(float value);
 
73
        void    setwidth(float value);
 
74
        void    setmode(float value);
 
75
        float   getmode();
 
76
      void activate();
 
77
      };
 
78
 
 
79
#endif