From 1ad76a6c10b9bfc74b22536b8bb86a851263b9d4 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Mon, 6 Aug 2007 01:04:03 +0000 Subject: [PATCH] fix resetting MMC send + recv ID git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@2252 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/option_editor.cc | 10 ++++------ libs/ardour/session_midi.cc | 6 ++++-- libs/ardour/session_state.cc | 8 ++------ 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/gtk2_ardour/option_editor.cc b/gtk2_ardour/option_editor.cc index 7b5a115794..c81423dab8 100644 --- a/gtk2_ardour/option_editor.cc +++ b/gtk2_ardour/option_editor.cc @@ -705,9 +705,7 @@ OptionEditor::mmc_receive_device_id_adjusted () { uint8_t id = (uint8_t) mmc_receive_device_id_spinner.get_value(); - if (id != Config->get_mmc_receive_device_id()) { - Config->set_mmc_receive_device_id (id); - } + Config->set_mmc_receive_device_id (id); } void @@ -715,9 +713,9 @@ OptionEditor::mmc_send_device_id_adjusted () { uint8_t id = (uint8_t) mmc_send_device_id_spinner.get_value(); - if (id != Config->get_mmc_send_device_id()) { - Config->set_mmc_send_device_id (id); - } + cerr << "New send ID = " << (int) id << endl; + + Config->set_mmc_send_device_id (id); } void diff --git a/libs/ardour/session_midi.cc b/libs/ardour/session_midi.cc index f6544b1cf6..b6396a6bca 100644 --- a/libs/ardour/session_midi.cc +++ b/libs/ardour/session_midi.cc @@ -138,6 +138,8 @@ Session::set_mmc_send_device_id (uint32_t device_id) { if (mmc) { mmc->set_send_device_id (device_id); + /* reset MMC buffer */ + mmc_buffer[2] = mmc->send_device_id(); } } @@ -176,8 +178,8 @@ Session::set_mmc_port (string port_tag) MMC_ResponseSignature); if (reset_id) { - mmc->set_receive_device_id (old_recv_device_id); - mmc->set_send_device_id (old_send_device_id); + set_mmc_receive_device_id (old_recv_device_id); + set_mmc_send_device_id (old_send_device_id); } mmc->Play.connect diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc index 1f8a4e1fbe..e39ebf72f2 100644 --- a/libs/ardour/session_state.cc +++ b/libs/ardour/session_state.cc @@ -3169,15 +3169,11 @@ Session::config_changed (const char* parameter_name) } else if (PARAM_IS ("mmc-device-id") || PARAM_IS ("mmc-receive-device-id")) { - if (mmc) { - mmc->set_receive_device_id (Config->get_mmc_receive_device_id()); - } + set_mmc_receive_device_id (Config->get_mmc_receive_device_id()); } else if (PARAM_IS ("mmc-send-device-id")) { - if (mmc) { - mmc->set_send_device_id (Config->get_mmc_send_device_id()); - } + set_mmc_send_device_id (Config->get_mmc_send_device_id()); } else if (PARAM_IS ("midi-control")) {