diff options
author | David Robillard <d@drobilla.net> | 2014-12-17 21:48:09 -0500 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2014-12-17 21:48:09 -0500 |
commit | 0f759e9a936e3ea00a1196ab8b55e415240f5f5f (patch) | |
tree | 4a872ab6ff7dad79d1442d219fdc867522a16f25 /libs/ardour/ardour/midi_buffer.h | |
parent | 5f6630034919bde73ffa603e7420c8af2c3c16f7 (diff) |
MIDI bounce.
Diffstat (limited to 'libs/ardour/ardour/midi_buffer.h')
-rw-r--r-- | libs/ardour/ardour/midi_buffer.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libs/ardour/ardour/midi_buffer.h b/libs/ardour/ardour/midi_buffer.h index 2923b784a9..8593a4ebb2 100644 --- a/libs/ardour/ardour/midi_buffer.h +++ b/libs/ardour/ardour/midi_buffer.h @@ -21,7 +21,10 @@ #define __ardour_midi_buffer_h__ #include "evoral/midi_util.h" +#include "evoral/EventSink.hpp" + #include "midi++/event.h" + #include "ardour/buffer.h" #include "ardour/parameter_types.h" @@ -29,7 +32,7 @@ namespace ARDOUR { /** Buffer containing 8-bit unsigned char (MIDI) data. */ -class LIBARDOUR_API MidiBuffer : public Buffer +class LIBARDOUR_API MidiBuffer : public Buffer, public Evoral::EventSink<framepos_t> { public: typedef framepos_t TimeType; @@ -55,6 +58,9 @@ public: bool insert_event(const Evoral::MIDIEvent<TimeType>& event); bool merge_in_place(const MidiBuffer &other); + /** EventSink interface for non-RT use (export, bounce). */ + uint32_t write(TimeType time, Evoral::EventType type, uint32_t size, const uint8_t* buf); + template<typename BufferType, typename EventType> class iterator_base { |