diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2015-05-09 14:48:36 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2015-06-29 14:18:11 -0400 |
commit | 33d1d8a6c1b96b1d592f422b9f612702a2311ba5 (patch) | |
tree | 6763cd83b374b7d364dbc2b66bdce319f8525a57 /libs | |
parent | 18415ba6cdfafee0ee52597a0e79b40a63b3f119 (diff) |
change names for scene I/O port connection methods
Diffstat (limited to 'libs')
-rw-r--r-- | libs/ardour/session.cc | 56 |
1 files changed, 32 insertions, 24 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index 39ddbce1ad..2647e5cd38 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -2610,35 +2610,43 @@ Session::reconnect_existing_routes (bool withLock, bool reconnect_master, bool r void Session::reconnect_midi_scene_ports(bool inputs) { - if (inputs) { - scene_in()->disconnect_all (); + if (inputs ) { - std::vector<EngineStateController::MidiPortState> midi_port_states; - EngineStateController::instance()->get_physical_midi_input_states (midi_port_states); - - std::vector<EngineStateController::MidiPortState>::iterator state_iter = midi_port_states.begin(); - - for (; state_iter != midi_port_states.end(); ++state_iter) { - if (state_iter->active && state_iter->available && state_iter->connected) { - scene_in()->connect (state_iter->name); - } - } - - } else { - scene_out()->disconnect_all (); + boost::shared_ptr<MidiPort> scene_in_ptr = scene_in(); + if (scene_in_ptr) { + scene_in_ptr->disconnect_all (); + + std::vector<EngineStateController::MidiPortState> midi_port_states; + EngineStateController::instance()->get_physical_midi_input_states (midi_port_states); + + std::vector<EngineStateController::MidiPortState>::iterator state_iter = midi_port_states.begin(); + + for (; state_iter != midi_port_states.end(); ++state_iter) { + if (state_iter->active && state_iter->available && state_iter->scene_connected) { + scene_in_ptr->connect (state_iter->name); + } + } + } - std::vector<EngineStateController::MidiPortState> midi_port_states; - EngineStateController::instance()->get_physical_midi_output_states (midi_port_states); + } else { - std::vector<EngineStateController::MidiPortState>::iterator state_iter = midi_port_states.begin(); + boost::shared_ptr<MidiPort> scene_out_ptr = scene_out(); - for (; state_iter != midi_port_states.end(); ++state_iter) { - if (state_iter->active && state_iter->available && state_iter->connected) { - scene_out()->connect (state_iter->name); - } - } + if (scene_out_ptr ) { + scene_out_ptr->disconnect_all (); - } + std::vector<EngineStateController::MidiPortState> midi_port_states; + EngineStateController::instance()->get_physical_midi_output_states (midi_port_states); + + std::vector<EngineStateController::MidiPortState>::iterator state_iter = midi_port_states.begin(); + + for (; state_iter != midi_port_states.end(); ++state_iter) { + if (state_iter->active && state_iter->available && state_iter->scene_connected) { + scene_out_ptr->connect (state_iter->name); + } + } + } + } } #endif |