summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/slave.h
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2012-10-14 23:23:53 +0000
committerRobin Gareus <robin@gareus.org>2012-10-14 23:23:53 +0000
commita6bc97add957ff42f3dd8ea14048dcbd444c035c (patch)
tree9014ee68a87d25e5db46f7a781de0cb6c4805c1d /libs/ardour/ardour/slave.h
parent3769c060f281fb23e8cb8de5ca6755b85f53602c (diff)
prepare reporting slave delta & MTC slave implementation
git-svn-id: svn://localhost/ardour2/branches/3.0@13276 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/slave.h')
-rw-r--r--libs/ardour/ardour/slave.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/libs/ardour/ardour/slave.h b/libs/ardour/ardour/slave.h
index 8f4ac1384b..85730e78b6 100644
--- a/libs/ardour/ardour/slave.h
+++ b/libs/ardour/ardour/slave.h
@@ -171,6 +171,12 @@ class Slave {
* @return - whether ARDOUR should use the slave speed without any adjustments
*/
virtual bool give_slave_full_control_over_transport_speed() const { return false; }
+
+ /**
+ * @return - current time-delta between engine and sync-source
+ */
+ virtual std::string approximate_current_delta() const { return ""; }
+
};
/// We need this wrapper for testability, it's just too hard to mock up a session class
@@ -255,6 +261,7 @@ class MTC_Slave : public TimecodeSlave {
bool requires_seekahead () const { return true; }
framecnt_t seekahead_distance() const;
bool give_slave_full_control_over_transport_speed() const;
+ std::string approximate_current_delta() const;
Timecode::TimecodeFormat apparent_timecode_format() const;
std::string approximate_current_position() const;
@@ -289,6 +296,7 @@ class MTC_Slave : public TimecodeSlave {
Timecode::TimecodeFormat a3e_timecode;
Timecode::Time timecode;
bool printed_timecode_warning;
+ frameoffset_t current_delta;
/* DLL - chase MTC */
double t0; ///< time at the beginning of the MTC quater frame