diff options
author | David Robillard <d@drobilla.net> | 2016-11-07 05:14:55 -0500 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2016-12-03 15:28:19 -0500 |
commit | 398a318934769dae51efe972f7ffdefc52ea2963 (patch) | |
tree | 5b68a8fac44f0c154e7e00fd45d9e7f2c16e35fb /libs/ardour/midi_track.cc | |
parent | bfbc4566ad82573a57e1ec84d583f308ee35eef0 (diff) |
Fix event type and parameter type confusion
I'm not sure if this is really the best way to do event types (should it
just be a completely static enum in evoral, or completely dynamic and
provided by the type map, or a mix like currently?), but previously the
event type was frequently set to either total garbage, or parameter
types, which are a different thing.
This fixes all those cases, and makes Evoral::EventType an enum so the
compiler will warn about implicit conversions from int.
Diffstat (limited to 'libs/ardour/midi_track.cc')
-rw-r--r-- | libs/ardour/midi_track.cc | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/libs/ardour/midi_track.cc b/libs/ardour/midi_track.cc index 69291f1cce..c17bc916d9 100644 --- a/libs/ardour/midi_track.cc +++ b/libs/ardour/midi_track.cc @@ -557,7 +557,7 @@ MidiTrack::push_midi_input_to_step_edit_ringbuffer (framecnt_t nframes) if (ev.is_note_on()) { /* we don't care about the time for this purpose */ - _step_edit_ring_buffer.write (0, ev.type(), ev.size(), ev.buffer()); + _step_edit_ring_buffer.write (0, ev.event_type(), ev.size(), ev.buffer()); } } } @@ -689,8 +689,7 @@ MidiTrack::write_immediate_event(size_t size, const uint8_t* buf) cerr << "WARNING: Ignoring illegal immediate MIDI event" << endl; return false; } - const uint32_t type = midi_parameter_type(buf[0]); - return (_immediate_events.write (0, type, size, buf) == size); + return (_immediate_events.write (0, Evoral::MIDI_EVENT, size, buf) == size); } void |