statically declare comb array
[software/lv2-mdametapiano.git] / src / mdaPianoVoice.h
index 22f8218..7df0076 100644 (file)
@@ -21,7 +21,8 @@ class mdaPianoVoice : public LV2::Voice {
     short *waves;
     float default_preset[NPARAMS]; // contains the default preset
     short sustain;
-    float *comb, cdep, width, trim;
+    float comb[256];
+    float cdep, width, trim;
     float fine, random, stretch;
     float volume, muff, muffvel, sizevel, velsens;
     uint32_t cpos, size, poly;
@@ -50,6 +51,7 @@ class mdaPianoVoice : public LV2::Voice {
 
   public:
     mdaPianoVoice(double, short*, KGRP*);
+    void set_sustain(unsigned short v) { sustain = v; }
     void set_volume(float v) { volume = v; }
     void set_muff(float v) { muff = v; }
 
@@ -60,6 +62,9 @@ class mdaPianoVoice : public LV2::Voice {
     void reset(void);
     bool is_sustained(void) { return (note == SUSTAIN); }
     unsigned char get_key(void) const { return m_key; }
+
+    // generates the sound for this voice
+    void render(uint32_t, uint32_t);
 };
 
 #endif