Merge branch 'master' of git.ardour.org:ardour/ardour
[ardour.git] / libs / ardour / ardour / location.h
index 069230438e8979f97e31a9a5dc72e444acac3389..bb42df1b5840f4c9e6a186459ac5f169c873f8ee 100644 (file)
@@ -27,7 +27,7 @@
 
 #include <sys/types.h>
 
-#include <glibmm/thread.h>
+#include <glibmm/threads.h>
 
 #include "pbd/undo.h"
 #include "pbd/stateful.h"
@@ -56,6 +56,8 @@ class Location : public SessionHandleRef, public PBD::StatefulDestructible
        Location (const Location& other);
        Location (Session &, const XMLNode&);
        Location* operator= (const Location& other);
+    
+        bool operator==(const Location& other);
 
        bool locked() const { return _locked; }
        void lock ();
@@ -159,8 +161,8 @@ class Locations : public SessionHandleRef, public PBD::StatefulDestructible
        int set_current (Location *, bool want_lock = true);
        Location *current () const { return current_location; }
 
-       Location* first_location_before (framepos_t, bool include_special_ranges = false);
-       Location* first_location_after (framepos_t, bool include_special_ranges = false);
+        framepos_t first_mark_before (framepos_t, bool include_special_ranges = false);
+       framepos_t first_mark_after (framepos_t, bool include_special_ranges = false);
 
        void marks_either_side (framepos_t const, framepos_t &, framepos_t &) const;
 
@@ -181,12 +183,12 @@ class Locations : public SessionHandleRef, public PBD::StatefulDestructible
        PBD::Signal1<void,const PBD::PropertyChange&>    StateChanged;
 
        template<class T> void apply (T& obj, void (T::*method)(LocationList&)) {
-               Glib::Mutex::Lock lm (lock);
+               Glib::Threads::Mutex::Lock lm (lock);
                (obj.*method)(locations);
        }
 
        template<class T1, class T2> void apply (T1& obj, void (T1::*method)(LocationList&, T2& arg), T2& arg) {
-               Glib::Mutex::Lock lm (lock);
+               Glib::Threads::Mutex::Lock lm (lock);
                (obj.*method)(locations, arg);
        }
 
@@ -194,7 +196,7 @@ class Locations : public SessionHandleRef, public PBD::StatefulDestructible
 
        LocationList         locations;
        Location            *current_location;
-       mutable Glib::Mutex  lock;
+       mutable Glib::Threads::Mutex  lock;
 
        int set_current_unlocked (Location *);
        void location_changed (Location*);