diff options
Diffstat (limited to 'libs/canvas')
-rw-r--r-- | libs/canvas/canvas.cc | 12 | ||||
-rw-r--r-- | libs/canvas/canvas/canvas.h | 2 |
2 files changed, 14 insertions, 0 deletions
diff --git a/libs/canvas/canvas.cc b/libs/canvas/canvas.cc index a004d64ad3..47784626aa 100644 --- a/libs/canvas/canvas.cc +++ b/libs/canvas/canvas.cc @@ -163,6 +163,18 @@ Canvas::prepare_for_render (Rect const & area) const } } +gint64 +Canvas::get_microseconds_since_render_start () const +{ + gint64 timestamp = g_get_monotonic_time(); + + if (_last_render_start_timestamp == 0 || timestamp <= _last_render_start_timestamp) { + return 0; + } + + return timestamp - _last_render_start_timestamp; +} + ostream& operator<< (ostream& o, Canvas& c) { diff --git a/libs/canvas/canvas/canvas.h b/libs/canvas/canvas/canvas.h index 70a44d2f80..3bcf58256d 100644 --- a/libs/canvas/canvas/canvas.h +++ b/libs/canvas/canvas/canvas.h @@ -91,6 +91,8 @@ public: gint64 get_last_render_start_timestamp () const { return _last_render_start_timestamp; } + gint64 get_microseconds_since_render_start () const; + /** @return root group */ Item* root () { return &_root; |