diff options
author | David Robillard <d@drobilla.net> | 2006-09-08 03:58:00 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2006-09-08 03:58:00 +0000 |
commit | 48f87f1f1649fb7e169fdaac2cd38370e8a4a1fa (patch) | |
tree | 9da4b4b075791ac1ec78b499dbcbec6101f54690 /src/libs/engine/MidiNoteNode.h | |
parent | acbe9a26ec3ab689e430225d15e95e73a7378aa9 (diff) | |
download | ingen-48f87f1f1649fb7e169fdaac2cd38370e8a4a1fa.tar.gz ingen-48f87f1f1649fb7e169fdaac2cd38370e8a4a1fa.tar.bz2 ingen-48f87f1f1649fb7e169fdaac2cd38370e8a4a1fa.zip |
De-singleton-ified Engine
Slight rework of Responder/ClientKey/ClientInterface for Requests
git-svn-id: http://svn.drobilla.net/lad/ingen@119 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/engine/MidiNoteNode.h')
-rw-r--r-- | src/libs/engine/MidiNoteNode.h | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/libs/engine/MidiNoteNode.h b/src/libs/engine/MidiNoteNode.h index 1f727b98..ba86455d 100644 --- a/src/libs/engine/MidiNoteNode.h +++ b/src/libs/engine/MidiNoteNode.h @@ -42,17 +42,16 @@ public: MidiNoteNode(const string& path, size_t poly, Patch* parent, SampleRate srate, size_t buffer_size); ~MidiNoteNode(); - void process(SampleCount nframes); + void process(SampleCount nframes, FrameTime start, FrameTime end); - void note_on(uchar note_num, uchar velocity, SampleCount offset); - void note_off(uchar note_num, SampleCount offset); - void all_notes_off(SampleCount offset); + void note_on(uchar note_num, uchar velocity, SampleCount nframes, FrameTime time, FrameTime start, FrameTime end); + void note_off(uchar note_num, FrameTime time, SampleCount nframes, FrameTime start, FrameTime end); + void all_notes_off(SampleCount nframes, FrameTime time, FrameTime start, FrameTime end); - void sustain_on(); - void sustain_off(SampleCount offset); + void sustain_on(FrameTime time, SampleCount nframes, FrameTime start, FrameTime end); + void sustain_off(FrameTime time, SampleCount nframes, FrameTime start, FrameTime end); private: - /** Key, one for each key on the keyboard */ struct Key { enum State { OFF, ON_ASSIGNED, ON_UNASSIGNED }; @@ -68,7 +67,7 @@ private: }; float note_to_freq(int num); - void free_voice(size_t voice, SampleCount offset); + void free_voice(size_t voice, FrameTime time, SampleCount nframes, FrameTime start, FrameTime end); Voice* _voices; Key _keys[128]; |