+ SafeTime last;
+ read_current (&last);
+ if (last.timestamp == 0 || reset_pending) {
+ return " --:--:--:--";
+ }
+ return Timecode::timecode_format_sampletime(
+ last.position,
+ double(session.frame_rate()),
+ Timecode::timecode_to_frames_per_second(mtc_timecode),
+ Timecode::timecode_has_drop_frames(mtc_timecode));
+}
+
+std::string
+MTC_Slave::approximate_current_delta() const
+{
+ char delta[80];
+ SafeTime last;
+ read_current (&last);
+ if (last.timestamp == 0 || reset_pending) {
+ snprintf(delta, sizeof(delta), "\u2012\u2012\u2012\u2012");
+ } else {
+ snprintf(delta, sizeof(delta), "\u0394<span foreground=\"green\" face=\"monospace\" >%s%s%" PRIi64 "</span>sm",
+ LEADINGZERO(abs(current_delta)), PLUSMINUS(-current_delta), abs(current_delta));
+ }
+ return std::string(delta);