Support thread-safe LV2 state restoration
[ardour.git] / libs / ardour / ardour / ardour.h
index 90a6272fac8e28855b982350b338f5e9a0ace8ad..79b69124ac2a39a127359808e25cf5dcd5c58c4f 100644 (file)
@@ -38,8 +38,6 @@
 #include "ardour/types.h"
 #include "ardour/libardour_visibility.h"
 
-#include <jack/jack.h>
-
 namespace MIDI {
        class MachineControl;
        class Port;
@@ -49,8 +47,12 @@ namespace ARDOUR {
 
        class AudioEngine;
 
-       LIBARDOUR_API extern PBD::Signal1<void,std::string> BootMessage;
-       LIBARDOUR_API extern PBD::Signal0<void> GUIIdle;
+       extern LIBARDOUR_API PBD::Signal1<void,std::string> BootMessage;
+       extern LIBARDOUR_API PBD::Signal3<void,std::string,std::string,bool> PluginScanMessage;
+       extern LIBARDOUR_API PBD::Signal1<void,int> PluginScanTimeout;
+       extern LIBARDOUR_API PBD::Signal0<void> GUIIdle;
+       extern LIBARDOUR_API PBD::Signal3<bool,std::string,std::string,int> CopyConfigurationFiles;
+       extern LIBARDOUR_API std::vector<std::string> reserved_io_names;
 
        /**
         * @param with_vst true to enable VST Support
@@ -66,11 +68,9 @@ namespace ARDOUR {
        LIBARDOUR_API bool no_auto_connect ();
        LIBARDOUR_API void make_property_quarks ();
 
-       LIBARDOUR_API extern PBD::PropertyChange bounds_change;
-
-       LIBARDOUR_API extern const char* const ardour_config_info;
+       extern LIBARDOUR_API PBD::PropertyChange bounds_change;
 
-       LIBARDOUR_API void find_bindings_files (std::map<std::string,std::string>&);
+       extern LIBARDOUR_API const char* const ardour_config_info;
 
        /* these only impact bundled installations */
        LIBARDOUR_API std::string translation_enable_path ();
@@ -81,6 +81,14 @@ namespace ARDOUR {
 
        LIBARDOUR_API void setup_fpu ();
        LIBARDOUR_API std::vector<SyncSource> get_available_sync_options();
+
+       /* the @param ui_handler will be called if there are old configuration
+        * files to be copied. It should (probably) ask the user about the
+        * action, and return true or false depending on whether or not the
+        * copy should take place.
+        */
+       LIBARDOUR_API void check_for_old_configuration_files ();
+       LIBARDOUR_API int handle_old_configuration_files (boost::function<bool (std::string const&, std::string const&, int)> ui_handler);
 }
 
 #endif /* __ardour_ardour_h__ */