13
0

not-yet-complete JACK session management patch (TODO: get program name, vary snapshot name, arrange quit when necessary)

git-svn-id: svn://localhost/ardour2/branches/3.0@6840 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Paul Davis 2010-04-02 18:48:50 +00:00
parent 97e11c790f
commit 7e590cf96c
4 changed files with 12 additions and 1 deletions

View File

@ -328,7 +328,7 @@ ARDOUR_UI::create_engine ()
loading_message (_("Starting audio engine"));
try {
engine = new ARDOUR::AudioEngine (ARDOUR_COMMAND_LINE::jack_client_name);
engine = new ARDOUR::AudioEngine (ARDOUR_COMMAND_LINE::jack_client_name, ARDOUR_COMMAND_LINE::jack_session_uuid);
} catch (...) {

View File

@ -24,6 +24,7 @@
*/
#include "ardour/session.h"
#include "ardour/audioengine.h"
#include "actions.h"
#include "ardour_ui.h"
@ -124,6 +125,10 @@ ARDOUR_UI::set_session (Session *s)
_session->locations()->added.connect (_session_connections, MISSING_INVALIDATOR, ui_bind (&ARDOUR_UI::handle_locations_change, this, _1), gui_context());
_session->locations()->removed.connect (_session_connections, MISSING_INVALIDATOR, ui_bind (&ARDOUR_UI::handle_locations_change, this, _1), gui_context());
#ifdef HAVE_JACK_SESSION
engine->JackSessionEvent.connect (*_session, MISSING_INVALIDATOR, ui_bind (&Session::jack_session_event, _session, _1), gui_context());
#endif
/* Clocks are on by default after we are connected to a session, so show that here.
*/

View File

@ -44,6 +44,7 @@ string ARDOUR_COMMAND_LINE::keybindings_path = ""; /* empty means use builtin de
Glib::ustring ARDOUR_COMMAND_LINE::menus_file = "ardour.menus";
bool ARDOUR_COMMAND_LINE::finder_invoked_ardour = false;
string ARDOUR_COMMAND_LINE::immediate_save;
string ARDOUR_COMMAND_LINE::jack_session_uuid;
using namespace ARDOUR_COMMAND_LINE;
@ -105,6 +106,7 @@ ARDOUR_COMMAND_LINE::parse_opts (int argc, char *argv[])
{ "sync", 0, 0, 'S' },
{ "curvetest", 1, 0, 'C' },
{ "save", 1, 0, 'E' },
{ "uuid", 1, 0, 'U' },
{ 0, 0, 0, 0 }
};
@ -192,6 +194,9 @@ ARDOUR_COMMAND_LINE::parse_opts (int argc, char *argv[])
immediate_save = optarg;
break;
case 'U':
jack_session_uuid = optarg;
default:
return print_help(execname);
}

View File

@ -39,6 +39,7 @@ extern std::string keybindings_path;
extern Glib::ustring menus_file;
extern bool finder_invoked_ardour;
extern std::string immediate_save;
extern std::string jack_session_uuid;
extern int32_t parse_opts (int argc, char *argv[]);