diff options
author | Tim Mayberry <mojofunk@gmail.com> | 2017-03-28 14:05:03 +1000 |
---|---|---|
committer | Tim Mayberry <mojofunk@gmail.com> | 2017-06-26 08:40:47 +1000 |
commit | ab13e87ec2f61489bbbb52ade6c3f9a1b67a0e1b (patch) | |
tree | 0082d359bccad91027a0302b2b0a261a1fe4eac5 /libs/canvas | |
parent | 8538ba35fe29645e6cd263f7149eebcc4ab62873 (diff) |
Add Canvas::get_last_render_start_timestamp method
Diffstat (limited to 'libs/canvas')
-rw-r--r-- | libs/canvas/canvas.cc | 3 | ||||
-rw-r--r-- | libs/canvas/canvas/canvas.h | 4 |
2 files changed, 7 insertions, 0 deletions
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<Cairo::Context> 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); |