add new type of location, with _flags & IsSkip being non-zero
authorPaul Davis <paul@linuxaudiosystems.com>
Wed, 17 Sep 2014 01:40:12 +0000 (21:40 -0400)
committerPaul Davis <paul@linuxaudiosystems.com>
Wed, 17 Sep 2014 01:40:12 +0000 (21:40 -0400)
libs/ardour/ardour/location.h
libs/ardour/session.cc

index eb35a1e209c8fb9391d352060807a9d75d26137c..bf8e6634172ddf57167ee97598580654bd916f90 100644 (file)
@@ -51,7 +51,8 @@ class LIBARDOUR_API Location : public SessionHandleRef, public PBD::StatefulDest
                IsHidden = 0x8,
                IsCDMarker = 0x10,
                IsRangeMarker = 0x20,
-               IsSessionRange = 0x40
+               IsSessionRange = 0x40,
+               IsSkip = 0x80,
        };
 
        Location (Session &);
@@ -92,6 +93,7 @@ class LIBARDOUR_API Location : public SessionHandleRef, public PBD::StatefulDest
        bool is_cd_marker () const { return _flags & IsCDMarker; }
        bool is_session_range () const { return _flags & IsSessionRange; }
        bool is_range_marker() const { return _flags & IsRangeMarker; }
+       bool is_skip() const { return _flags & IsSkip; }
        bool matches (Flags f) const { return _flags & f; }
 
        Flags flags () const { return _flags; }
index e7dd6a9cd1088abe90260f3efeed380d87480f14..d22d7553caaed6bc6025093fc9c95e96c22d7027 100644 (file)
@@ -1355,7 +1355,7 @@ Session::sync_locations_to_skips (Locations::LocationList& locations)
 
                location = *i;
 
-               if (location->is_range_marker()) {
+               if (location->is_skip()) {
                        SessionEvent* ev = new SessionEvent (SessionEvent::LocateRoll, SessionEvent::Add, location->start(), location->end(), 1.0);
                        queue_event (ev);
                }