change API for BasicUI::goto_start() to use optional roll-after arg
[ardour.git] / libs / ardour / ardour / slave.h
index e86296b3552dc038333832f419450171a50049c8..cf8060d029efeb6dd98a4b810fe3b86be2da4425 100644 (file)
@@ -189,7 +189,7 @@ class LIBARDOUR_API ISlaveSessionProxy {
        virtual framepos_t audible_frame ()             const   { return 0; }
        virtual framepos_t transport_frame ()           const   { return 0; }
        virtual pframes_t  frames_since_cycle_start ()  const   { return 0; }
-       virtual pframes_t  sample_time_at_cycle_start() const   { return 0; }
+       virtual framepos_t sample_time_at_cycle_start() const   { return 0; }
        virtual framepos_t frame_time ()                const   { return 0; }
 
        virtual void request_locate (framepos_t /*frame*/, bool with_roll = false) {
@@ -212,7 +212,7 @@ class LIBARDOUR_API SlaveSessionProxy : public ISlaveSessionProxy {
        framepos_t audible_frame ()              const;
        framepos_t transport_frame ()            const;
        pframes_t  frames_since_cycle_start ()   const;
-       pframes_t  sample_time_at_cycle_start()  const;
+       framepos_t sample_time_at_cycle_start()  const;
        framepos_t frame_time ()                 const;
 
        void request_locate (framepos_t frame, bool with_roll = false);
@@ -237,19 +237,21 @@ struct LIBARDOUR_API SafeTime {
 
 class LIBARDOUR_API TimecodeSlave : public Slave {
   public:
-    TimecodeSlave () {}
+       TimecodeSlave () {}
 
-    virtual Timecode::TimecodeFormat apparent_timecode_format() const = 0;
+       virtual Timecode::TimecodeFormat apparent_timecode_format() const = 0;
 
-    /* this is intended to be used by a UI and polled from a timeout. it should
-       return a string describing the current position of the TC source. it
-       should NOT do any computation, but should use a cached value
-       of the TC source position.
-    */
-    virtual std::string approximate_current_position() const = 0;
+       /* this is intended to be used by a UI and polled from a timeout. it should
+          return a string describing the current position of the TC source. it
+          should NOT do any computation, but should use a cached value
+          of the TC source position.
+       */
+       virtual std::string approximate_current_position() const = 0;
 
-    framepos_t        timecode_offset;
-    bool              timecode_negative_offset;
+       framepos_t        timecode_offset;
+       bool              timecode_negative_offset;
+
+       PBD::Signal1<void, bool> ActiveChanged;
 };
 
 class LIBARDOUR_API MTC_Slave : public TimecodeSlave {