diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-08-07 22:22:11 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-08-07 22:22:11 -0400 |
commit | 1ab61b8564f9934c533d1c1a229888bc7e2fd557 (patch) | |
tree | baa1b05b50c018ca0edbda936b35de58adb29d94 /libs/midi++2/mmc.cc | |
parent | 83a0c30c24ce6bb6e3e718c267a82fbaffc33b4b (diff) |
major redesign of MIDI port heirarchy and management (part 2)
Diffstat (limited to 'libs/midi++2/mmc.cc')
-rw-r--r-- | libs/midi++2/mmc.cc | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/libs/midi++2/mmc.cc b/libs/midi++2/mmc.cc index 0a71463721..b93dc0f260 100644 --- a/libs/midi++2/mmc.cc +++ b/libs/midi++2/mmc.cc @@ -27,9 +27,7 @@ #include "midi++/mmc.h" #include "midi++/port.h" -#include "midi++/jack_midi_port.h" #include "midi++/parser.h" -#include "midi++/manager.h" using namespace std; using namespace MIDI; @@ -197,16 +195,21 @@ static void build_mmc_cmd_map () mmc_cmd_map.insert (newpair); } - -MachineControl::MachineControl (Manager* m, ARDOUR::PortEngine& pengine) +MachineControl::MachineControl () { build_mmc_cmd_map (); _receive_device_id = 0x7f; _send_device_id = 0x7f; +} + +void +MachineControl::set_ports (MIDI::Port* ip, MIDI::Port* op) +{ + port_connections.drop_connections (); - _input_port = m->add_port (new JackMIDIPort ("MMC in", Port::IsInput, pengine)); - _output_port = m->add_port (new JackMIDIPort ("MMC out", Port::IsOutput, pengine)); + _input_port = ip; + _output_port = op; _input_port->parser()->mmc.connect_same_thread (port_connections, boost::bind (&MachineControl::process_mmc_message, this, _1, _2, _3)); _input_port->parser()->start.connect_same_thread (port_connections, boost::bind (&MachineControl::spp_start, this)); |