diff options
Diffstat (limited to 'libs/ardour/ardour/midi_port.h')
-rw-r--r-- | libs/ardour/ardour/midi_port.h | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/libs/ardour/ardour/midi_port.h b/libs/ardour/ardour/midi_port.h index a5a269b1ef..a3c87ff702 100644 --- a/libs/ardour/ardour/midi_port.h +++ b/libs/ardour/ardour/midi_port.h @@ -21,29 +21,40 @@ #ifndef __ardour_midi_port_h__ #define __ardour_midi_port_h__ -#include <ardour/base_midi_port.h> +#include <ardour/port.h> +#include <ardour/midi_buffer.h> namespace ARDOUR { class MidiEngine; -class MidiPort : public BaseMidiPort, public PortFacade { +class MidiPort : public Port { public: ~MidiPort(); - void reset (); + DataType type () const { + return DataType::MIDI; + } void cycle_start (nframes_t nframes, nframes_t offset); void cycle_end (nframes_t nframes, nframes_t offset); void flush_buffers (nframes_t nframes, nframes_t offset); + Buffer& get_buffer (nframes_t nframes, nframes_t offset) { + return get_midi_buffer (nframes, offset); + } + MidiBuffer& get_midi_buffer( nframes_t nframes, nframes_t offset ); protected: friend class AudioEngine; MidiPort (const std::string& name, Flags, bool external, nframes_t bufsize); + private: + void mixdown (nframes_t, nframes_t, bool); + + MidiBuffer* _buffer; bool _has_been_mixed_down; }; |