summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/midi_port.h
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2009-01-21 02:27:21 +0000
committerCarl Hetherington <carl@carlh.net>2009-01-21 02:27:21 +0000
commitd6637dad5a239d74038fdf9e5800e5108ba0c44f (patch)
tree8371648bdc73dc98407c6924fefa00934e344902 /libs/ardour/ardour/midi_port.h
parent4476461443061703e9ef268ade72511dff3e3ae5 (diff)
Rework Port class hierarchy a bit. Hopefully now simpler, and should
support connection of JACK ports with internal ones. git-svn-id: svn://localhost/ardour2/branches/3.0@4417 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/midi_port.h')
-rw-r--r--libs/ardour/ardour/midi_port.h17
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;
};