From ab13e87ec2f61489bbbb52ade6c3f9a1b67a0e1b Mon Sep 17 00:00:00 2001 From: Tim Mayberry Date: Tue, 28 Mar 2017 14:05:03 +1000 Subject: Add Canvas::get_last_render_start_timestamp method --- libs/canvas/canvas.cc | 3 +++ libs/canvas/canvas/canvas.h | 4 ++++ 2 files changed, 7 insertions(+) (limited to 'libs/canvas') diff --git a/libs/canvas/canvas.cc b/libs/canvas/canvas.cc index 7415478b60..a004d64ad3 100644 --- a/libs/canvas/canvas.cc +++ b/libs/canvas/canvas.cc @@ -58,6 +58,7 @@ uint32_t Canvas::tooltip_timeout_msecs = 750; Canvas::Canvas () : _root (this) , _bg_color (rgba_to_color (0, 1.0, 0.0, 1.0)) + , _last_render_start_timestamp(0) { set_epoch (); } @@ -103,6 +104,8 @@ Canvas::render (Rect const & area, Cairo::RefPtr const & context { PreRender (); // emit signal + _last_render_start_timestamp = g_get_monotonic_time(); + #ifdef CANVAS_DEBUG if (DEBUG_ENABLED(PBD::DEBUG::CanvasRender)) { cerr << this << " RENDER: " << area << endl; diff --git a/libs/canvas/canvas/canvas.h b/libs/canvas/canvas/canvas.h index cb4f6dd70c..70a44d2f80 100644 --- a/libs/canvas/canvas/canvas.h +++ b/libs/canvas/canvas/canvas.h @@ -89,6 +89,8 @@ public: void prepare_for_render (Rect const &) const; + gint64 get_last_render_start_timestamp () const { return _last_render_start_timestamp; } + /** @return root group */ Item* root () { return &_root; @@ -169,6 +171,8 @@ protected: Root _root; Color _bg_color; + mutable gint64 _last_render_start_timestamp; + static uint32_t tooltip_timeout_msecs; void queue_draw_item_area (Item *, Rect); -- cgit v1.2.3