#include "ardour/runtime_functions.h"
#include "ardour/session_event.h"
#include "ardour/source_factory.h"
+#include "ardour/transport_master_manager.h"
#ifdef LV2_SUPPORT
#include "ardour/uri_map.h"
#endif
copy_recurse (old_name, new_name);
- /* presets */
+ /* plugin status */
+ g_mkdir_with_parents (Glib::build_filename (new_dir, plugin_metadata_dir_name).c_str(), 0755);
- old_name = Glib::build_filename (old_dir, X_("plugin_statuses"));
- new_name = Glib::build_filename (new_dir, X_("plugin_statuses"));
+ old_name = Glib::build_filename (old_dir, X_("plugin_statuses")); /* until 6.0 */
+ new_name = Glib::build_filename (new_dir, plugin_metadata_dir_name, X_("plugin_statuses"));
+ copy_file (old_name, new_name); /* can fail silently */
+
+ old_name = Glib::build_filename (old_dir, plugin_metadata_dir_name, X_("plugin_statuses"));
+ copy_file (old_name, new_name);
+
+ /* plugin tags */
+
+ old_name = Glib::build_filename (old_dir, plugin_metadata_dir_name, X_("plugin_tags"));
+ new_name = Glib::build_filename (new_dir, plugin_metadata_dir_name, X_("plugin_tags"));
copy_file (old_name, new_name);
if (!PBD::init()) return false;
-#ifdef ENABLE_NLS
+#if ENABLE_NLS
(void) bindtextdomain(PACKAGE, localedir);
(void) bind_textdomain_codeset (PACKAGE, "UTF-8");
#endif
Playlist::make_property_quarks ();
AudioPlaylist::make_property_quarks ();
PresentationInfo::make_property_quarks ();
+ TransportMaster::make_property_quarks ();
/* this is a useful ready to use PropertyChange that many
things need to check. This avoids having to compose
reserved_io_names[_("Mackie")] = false;
reserved_io_names[_("FaderPort Recv")] = false;
reserved_io_names[_("FaderPort Send")] = false;
+ reserved_io_names[_("FaderPort2 Recv")] = false;
+ reserved_io_names[_("FaderPort2 Send")] = false;
reserved_io_names[_("FaderPort8 Recv")] = false;
reserved_io_names[_("FaderPort8 Send")] = false;
+ reserved_io_names[_("FaderPort16 Recv")] = false;
+ reserved_io_names[_("FaderPort16 Send")] = false;
libardour_initialized = true;
ARDOUR::init_post_engine ()
{
XMLNode* node;
+
if ((node = Config->control_protocol_state()) != 0) {
- ControlProtocolManager::instance().set_state (*node, Stateful::loading_state_version);
+ ControlProtocolManager::instance().set_state (*node, 0 /* here: global-config state */);
+ }
+
+ if ((node = Config->transport_master_state()) != 0) {
+ if (TransportMasterManager::instance().set_state (*node, Stateful::loading_state_version)) {
+ error << _("Cannot restore transport master manager") << endmsg;
+ /* XXX now what? */
+ }
+ } else {
+ if (TransportMasterManager::instance().set_default_configuration ()) {
+ error << _("Cannot initialize transport master manager") << endmsg;
+ /* XXX now what? */
+ }
}
/* find plugins */
}
void
-ARDOUR::cleanup ()
+ ARDOUR::cleanup ()
{
if (!libardour_initialized) {
return;
}
+ delete &ControlProtocolManager::instance();
ARDOUR::AudioEngine::destroy ();
delete Library;
#ifdef HAVE_LRDF
lrdf_cleanup ();
#endif
- delete &ControlProtocolManager::instance();
#ifdef WINDOWS_VST_SUPPORT
fst_exit ();
#endif