summaryrefslogtreecommitdiff
path: root/libs/ardour/midiport_manager.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2019-10-18 03:42:41 +0200
committerRobin Gareus <robin@gareus.org>2019-10-18 03:42:41 +0200
commitf961fd46874d407c6569e0b6f9ddbede09900b3a (patch)
treececea699655afcb4d42830f79672f70f019470ea /libs/ardour/midiport_manager.cc
parentf4ebb5995da8e7d6af7c8c74b1797140df53b3c0 (diff)
Add Virtual-Keyboard MIDI port
Diffstat (limited to 'libs/ardour/midiport_manager.cc')
-rw-r--r--libs/ardour/midiport_manager.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/ardour/midiport_manager.cc b/libs/ardour/midiport_manager.cc
index 0033c80bb0..d1048f4ecc 100644
--- a/libs/ardour/midiport_manager.cc
+++ b/libs/ardour/midiport_manager.cc
@@ -77,6 +77,9 @@ MidiPortManager::create_ports ()
_scene_in = AudioEngine::instance()->register_input_port (DataType::MIDI, X_("Scene in"), true);
_scene_out = AudioEngine::instance()->register_output_port (DataType::MIDI, X_("Scene out"), true);
+ _vkbd_out = AudioEngine::instance()->register_output_port (DataType::MIDI, X_("Virtual Keyboard"), true);
+ boost::dynamic_pointer_cast<AsyncMIDIPort>(_vkbd_out)->set_flush_at_cycle_start (true);
+
/* Now register ports used to send positional sync data (MTC and MIDI Clock) */
boost::shared_ptr<ARDOUR::Port> p;
@@ -102,6 +105,7 @@ MidiPortManager::set_midi_port_states (const XMLNodeList&nodes)
ports.insert (make_pair (_midi_out->name(), _midi_out));
ports.insert (make_pair (_mmc_in->name(), _mmc_in));
ports.insert (make_pair (_mmc_out->name(), _mmc_out));
+ ports.insert (make_pair (_vkbd_out->name(), _vkbd_out));
ports.insert (make_pair (_scene_out->name(), _scene_out));
ports.insert (make_pair (_scene_in->name(), _scene_in));
@@ -132,6 +136,7 @@ MidiPortManager::get_midi_port_states () const
ports.insert (make_pair (_midi_out->name(), _midi_out));
ports.insert (make_pair (_mmc_in->name(), _mmc_in));
ports.insert (make_pair (_mmc_out->name(), _mmc_out));
+ ports.insert (make_pair (_vkbd_out->name(), _vkbd_out));
ports.insert (make_pair (_scene_out->name(), _scene_out));
ports.insert (make_pair (_scene_in->name(), _scene_in));