diff --git a/libs/canvas/canvas.cc b/libs/canvas/canvas.cc index 07f065d109..3ba45f47cd 100644 --- a/libs/canvas/canvas.cc +++ b/libs/canvas/canvas.cc @@ -22,6 +22,8 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ +//#define CANVAS_PROFILE + /** @file canvas/canvas.cc * @brief Implementation of the main canvas classes. */ @@ -133,6 +135,9 @@ Canvas::zoomed () void Canvas::render (Rect const & area, Cairo::RefPtr const & context) const { +#ifdef CANVAS_PROFILE + const int64_t start = g_get_monotonic_time (); +#endif if (ArdourCanvas::nodraw & 0x40) { std::cout << "GtkCanvas::render " << area << "\n"; } @@ -181,6 +186,12 @@ Canvas::render (Rect const & area, Cairo::RefPtr const & context #endif } +#ifdef CANVAS_PROFILE + const int64_t end = g_get_monotonic_time (); + const int64_t elapsed = end - start; + std::cout << "GtkCanvas::render " << area << " " << (elapsed / 1000.f) << " ms\n"; +#endif + } void