diff options
author | David Robillard <d@drobilla.net> | 2009-05-11 19:31:17 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2009-05-11 19:31:17 +0000 |
commit | cb5287d0379287c461a0ac5b950161244a7fa53b (patch) | |
tree | 135aa05d505614ab3a503a3df96324b8a3026126 /src/engine/InternalNote.cpp | |
parent | 698c38587bd4f0133a132dc363098ff8298ec47b (diff) | |
download | ingen-cb5287d0379287c461a0ac5b950161244a7fa53b.tar.gz ingen-cb5287d0379287c461a0ac5b950161244a7fa53b.tar.bz2 ingen-cb5287d0379287c461a0ac5b950161244a7fa53b.zip |
Fix subpatch MIDI IO.
Fixes tickets #323 and #332.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@1974 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/InternalNote.cpp')
-rw-r--r-- | src/engine/InternalNote.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/engine/InternalNote.cpp b/src/engine/InternalNote.cpp index 838d0ba7..f5b22c1a 100644 --- a/src/engine/InternalNote.cpp +++ b/src/engine/InternalNote.cpp @@ -114,18 +114,18 @@ NoteNode::apply_poly(Raul::Maid& maid, uint32_t poly) void NoteNode::process(ProcessContext& context) { + EventBuffer* const midi_in = (EventBuffer*)_midi_in_port->buffer(0); NodeBase::pre_process(context); - uint32_t frames = 0; - uint32_t subframes = 0; - uint16_t type = 0; - uint16_t size = 0; - unsigned char* buf = NULL; + uint32_t frames = 0; + uint32_t subframes = 0; + uint16_t type = 0; + uint16_t size = 0; + uint8_t* buf = NULL; - EventBuffer* const midi_in = (EventBuffer*)_midi_in_port->buffer(0); - assert(midi_in->this_nframes() == context.nframes()); + //assert(midi_in->this_nframes() == context.nframes()); - //cerr << path() << " # input events: " << midi_in->event_count() << endl; + midi_in->rewind(); if (midi_in->event_count() > 0) while (midi_in->get_event(&frames, &subframes, &type, &size, &buf)) { |