summaryrefslogtreecommitdiff
path: root/synth/channel.h
diff options
context:
space:
mode:
authorFlorian Jung <flo@thinkpad.(none)>2011-01-08 14:43:26 +0100
committerFlorian Jung <flo@thinkpad.(none)>2011-01-08 14:43:26 +0100
commitb3404c9b79176f81cf6703921c3d22a74cd4a8bf (patch)
treef15d60eb72a3c5d8f913775fa0c2cb8d3f9be48d /synth/channel.h
parentf76e20a3486b31945fd35f6b1a0bd517d6dc176e (diff)
Added support for hold- and sostenuto pedals
Diffstat (limited to 'synth/channel.h')
-rw-r--r--synth/channel.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/synth/channel.h b/synth/channel.h
index 2668bc4..2f7795c 100644
--- a/synth/channel.h
+++ b/synth/channel.h
@@ -24,6 +24,7 @@ class Channel
void set_pitch_bend(float val);
void note_on(int note, int vel);
void note_off(int note);
+ void really_do_note_off(int note);
void cleanup();
void release_all();
void panic();
@@ -36,6 +37,10 @@ class Channel
void set_quick_release(int val);
void reset_controllers();
+ void set_hold_pedal(bool newstate);
+ void set_sostenuto_pedal(bool newstate);
+
+
float balL, balR;
private:
void recalc_param(const parameter_t &par, program_t &prg);
@@ -58,6 +63,13 @@ class Channel
int n_voices;
jack_nframes_t quick_release;
+
+ set<int> pressed_keys;
+
+ bool hold_pedal_pressed;
+ set<int> held_keys;
+
+ set<int> sostenuto_keys;
};
#endif