diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-09-05 13:22:34 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-09-05 13:22:34 -0400 |
commit | 1c49138e0099db37931b34fad552b43c332e187d (patch) | |
tree | b3ebb558e8b055695fff674114272f7a28792bda /libs/ardour/midiport_manager.cc | |
parent | fee626c386ccc23c41b7b2976c5031cd335b7587 (diff) |
move MidiPortManager from AudioEngine to Session
This makes the responsibilities and ownership of non-Route related MIDI ports
more clear, and removes a few wierd bits of code. It also ensures that open/close/open
on the same session will retain connections for those MIDI ports
Diffstat (limited to 'libs/ardour/midiport_manager.cc')
-rw-r--r-- | libs/ardour/midiport_manager.cc | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/libs/ardour/midiport_manager.cc b/libs/ardour/midiport_manager.cc index 7abd47580b..d17401cee8 100644 --- a/libs/ardour/midiport_manager.cc +++ b/libs/ardour/midiport_manager.cc @@ -32,6 +32,7 @@ using namespace PBD; MidiPortManager::MidiPortManager () { + create_ports (); } MidiPortManager::~MidiPortManager () @@ -110,21 +111,16 @@ MidiPortManager::create_ports () _mtc_output_port->set_always_parse (true); _midi_clock_input_port->set_always_parse (true); _midi_clock_output_port->set_always_parse (true); - - set_midi_port_states (); } void -MidiPortManager::set_midi_port_states () +MidiPortManager::set_midi_port_states (const XMLNodeList&nodes) { - list<XMLNode*> nodes; XMLProperty* prop; typedef map<std::string,boost::shared_ptr<Port> > PortMap; PortMap ports; const int version = 0; - nodes = Config->midi_port_states (); - ports.insert (make_pair (_mtc_input_port->name(), _mtc_input_port)); ports.insert (make_pair (_mtc_output_port->name(), _mtc_output_port)); ports.insert (make_pair (_midi_clock_input_port->name(), _midi_clock_input_port)); @@ -134,7 +130,7 @@ MidiPortManager::set_midi_port_states () ports.insert (make_pair (_mmc_input_port->name(), _mmc_in)); ports.insert (make_pair (_mmc_output_port->name(), _mmc_out)); - for (list<XMLNode*>::iterator n = nodes.begin(); n != nodes.end(); ++n) { + for (XMLNodeList::const_iterator n = nodes.begin(); n != nodes.end(); ++n) { if ((prop = (*n)->property (X_("name"))) == 0) { continue; } |