Amend f3c0c1a865 (Add quarter-note position methods).
[ardour.git] / libs / ardour / ardour / location.h
index f564757e1aec382e5a301852bfcdbe8fb164c51b..6b61dae74631e9b16c85a03a893a01a4f59c2952 100644 (file)
@@ -41,6 +41,7 @@ namespace ARDOUR {
 
 class SceneChange;
 
+/** Location on Timeline - abstract representation for Markers, Loop/Punch Ranges, CD-Markers etc. */
 class LIBARDOUR_API Location : public SessionHandleRef, public PBD::StatefulDestructible
 {
   public:
@@ -150,9 +151,9 @@ class LIBARDOUR_API Location : public SessionHandleRef, public PBD::StatefulDest
   private:
        std::string        _name;
        framepos_t         _start;
-       Timecode::BBT_Time _bbt_start;
+       double             _bbt_start;
        framepos_t         _end;
-       Timecode::BBT_Time _bbt_end;
+       double             _bbt_end;
        Flags              _flags;
        bool               _locked;
        PositionLockStyle  _position_lock_style;
@@ -163,6 +164,7 @@ class LIBARDOUR_API Location : public SessionHandleRef, public PBD::StatefulDest
        void recompute_bbt_from_frames ();
 };
 
+/** A collection of session locations including unique dedicated locations (loop, punch, etc) */
 class LIBARDOUR_API Locations : public SessionHandleRef, public PBD::StatefulDestructible
 {
   public:
@@ -171,7 +173,8 @@ class LIBARDOUR_API Locations : public SessionHandleRef, public PBD::StatefulDes
        Locations (Session &);
        ~Locations ();
 
-       const LocationList& list() { return locations; }
+       const LocationList& list () const { return locations; }
+       LocationList list () { return locations; }
 
        void add (Location *, bool make_current = false);
        void remove (Location *);