diff options
Diffstat (limited to 'libs/ardour/rc_configuration.cc')
-rw-r--r-- | libs/ardour/rc_configuration.cc | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/libs/ardour/rc_configuration.cc b/libs/ardour/rc_configuration.cc index 8127267975..071d50ac03 100644 --- a/libs/ardour/rc_configuration.cc +++ b/libs/ardour/rc_configuration.cc @@ -27,11 +27,11 @@ #include "pbd/xml++.h" #include "pbd/file_utils.h" -#include "midi++/manager.h" - +#include "ardour/audioengine.h" #include "ardour/control_protocol_manager.h" #include "ardour/diskstream.h" #include "ardour/filesystem_paths.h" +#include "ardour/port.h" #include "ardour/rc_configuration.h" #include "ardour/session_metadata.h" @@ -63,7 +63,6 @@ RCConfiguration::RCConfiguration () { } - RCConfiguration::~RCConfiguration () { for (list<XMLNode*>::iterator i = _midi_port_states.begin(); i != _midi_port_states.end(); ++i) { @@ -177,15 +176,10 @@ RCConfiguration::get_state () root = new XMLNode("Ardour"); - MIDI::Manager* mm = MIDI::Manager::instance(); - - if (mm) { - boost::shared_ptr<const MIDI::Manager::PortList> ports = mm->get_midi_ports(); - - for (MIDI::Manager::PortList::const_iterator i = ports->begin(); i != ports->end(); ++i) { - root->add_child_nocopy((*i)->get_state()); - } - } + list<XMLNode*> midi_port_nodes = AudioEngine::instance()->get_midi_port_states(); + for (list<XMLNode*>::const_iterator n = midi_port_nodes.begin(); n != midi_port_nodes.end(); ++n) { + root->add_child_nocopy (**n); + } root->add_child_nocopy (get_variables ()); @@ -250,7 +244,7 @@ RCConfiguration::set_state (const XMLNode& root, int version) SessionMetadata::Metadata()->set_state (*node, version); } else if (node->name() == ControlProtocolManager::state_node_name) { _control_protocol_state = new XMLNode (*node); - } else if (node->name() == MIDI::Port::state_node_name) { + } else if (node->name() == ARDOUR::Port::state_node_name) { _midi_port_states.push_back (new XMLNode (*node)); } } |