first working version of save-as
[ardour.git] / libs / ardour / ardour / io.h
index d38aa885768da62e30e543ae54239968fbdf73e9..9afd0167e3bd040154180047289de698b6a92884 100644 (file)
@@ -23,9 +23,8 @@
 #include <string>
 #include <vector>
 #include <cmath>
-#include <jack/jack.h>
 
-#include <glibmm/thread.h>
+#include <glibmm/threads.h>
 
 #include "pbd/fastlog.h"
 #include "pbd/undo.h"
@@ -40,6 +39,7 @@
 #include "ardour/latent.h"
 #include "ardour/port_set.h"
 #include "ardour/session_object.h"
+#include "ardour/libardour_visibility.h"
 #include "ardour/types.h"
 #include "ardour/utils.h"
 #include "ardour/buffer_set.h"
@@ -64,7 +64,7 @@ class UserBundle;
  * An IO can contain ports of varying types, making routes/inserts/etc with
  * varied combinations of types (eg MIDI and audio) possible.
  */
-class IO : public SessionObject, public Latent
+class LIBARDOUR_API IO : public SessionObject, public Latent
 {
   public:
        static const std::string state_node_name;
@@ -94,7 +94,7 @@ class IO : public SessionObject, public Latent
 
        int ensure_io (ChanCount cnt, bool clear, void *src);
 
-       int connect_ports_to_bundle (boost::shared_ptr<Bundle>, void *);
+        int connect_ports_to_bundle (boost::shared_ptr<Bundle>, bool exclusive, void *);
        int disconnect_ports_from_bundle (boost::shared_ptr<Bundle>, void *);
 
        BundleList bundles_connected ();
@@ -200,7 +200,7 @@ class IO : public SessionObject, public Latent
        int set_ports (const std::string& str);
 
   private:
-       mutable Glib::Mutex io_lock;
+       mutable Glib::Threads::Mutex io_lock;
 
   protected:
        PortSet   _ports;