aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGunnar Sletta <gunnar.sletta@nokia.com>2011-09-07 12:03:20 +0200
committerKim M. Kalland <kim.kalland@nokia.com>2011-09-07 12:12:41 +0200
commitbb7dd6aba4241a912699d6e332968c7f61017d7e (patch)
treeb685a714f0a1c027bbcf8d2df47724dbe7dd4a62 /src
parente5a93d6ea1c9eb9982e98a6a5b1f52719fe446e6 (diff)
make render timing an environment variable
Change-Id: Iadc72a0beb5e6d700b0110d11116a7533c69f311 Reviewed-on: http://codereview.qt.nokia.com/4338 Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Diffstat (limited to 'src')
-rw-r--r--src/declarative/scenegraph/coreapi/qsgrenderer.cpp39
1 files changed, 26 insertions, 13 deletions
diff --git a/src/declarative/scenegraph/coreapi/qsgrenderer.cpp b/src/declarative/scenegraph/coreapi/qsgrenderer.cpp
index e8e67601fa..508c8ee2c5 100644
--- a/src/declarative/scenegraph/coreapi/qsgrenderer.cpp
+++ b/src/declarative/scenegraph/coreapi/qsgrenderer.cpp
@@ -58,12 +58,14 @@ QT_BEGIN_NAMESPACE
//#define RENDERER_DEBUG
//#define QT_GL_NO_SCISSOR_TEST
-// #define QSG_RENDERER_TIMING
+
+
+#define QSG_RENDERER_TIMING
#ifdef QSG_RENDERER_TIMING
+static bool qsg_render_timing = !qgetenv("QML_RENDERER_TIMING").isEmpty();
static QTime frameTimer;
static int preprocessTime;
static int updatePassTime;
-static int frameNumber = 0;
#endif
void QSGBindable::clear(QSGRenderer::ClearMode mode) const
@@ -220,8 +222,13 @@ void QSGRenderer::renderScene(const QSGBindable &bindable)
return;
m_is_rendering = true;
+
+
#ifdef QSG_RENDERER_TIMING
- frameTimer.start();
+ if (qsg_render_timing)
+ frameTimer.start();
+ int bindTime;
+ int renderTime;
#endif
m_bindable = &bindable;
@@ -229,7 +236,8 @@ void QSGRenderer::renderScene(const QSGBindable &bindable)
bindable.bind();
#ifdef QSG_RENDERER_TIMING
- int bindTime = frameTimer.elapsed();
+ if (qsg_render_timing)
+ bindTime = frameTimer.elapsed();
#endif
#ifndef QT_NO_DEBUG
@@ -249,7 +257,8 @@ void QSGRenderer::renderScene(const QSGBindable &bindable)
render();
#ifdef QSG_RENDERER_TIMING
- int renderTime = frameTimer.elapsed();
+ if (qsg_render_timing)
+ renderTime = frameTimer.elapsed();
#endif
glDisable(GL_SCISSOR_TEST);
@@ -268,12 +277,14 @@ void QSGRenderer::renderScene(const QSGBindable &bindable)
}
#ifdef QSG_RENDERER_TIMING
- printf(" - Breakdown of frametime: preprocess=%d, updates=%d, binding=%d, render=%d, total=%d\n",
- preprocessTime,
- updatePassTime - preprocessTime,
- bindTime - updatePassTime,
- renderTime - bindTime,
- renderTime);
+ if (qsg_render_timing) {
+ printf(" - Breakdown of frametime: preprocess=%d, updates=%d, binding=%d, render=%d, total=%d\n",
+ preprocessTime,
+ updatePassTime - preprocessTime,
+ bindTime - updatePassTime,
+ renderTime - bindTime,
+ renderTime);
+ }
#endif
}
@@ -353,14 +364,16 @@ void QSGRenderer::preprocess()
}
#ifdef QSG_RENDERER_TIMING
- preprocessTime = frameTimer.elapsed();
+ if (qsg_render_timing)
+ preprocessTime = frameTimer.elapsed();
#endif
nodeUpdater()->setToplevelOpacity(context()->renderAlpha());
nodeUpdater()->updateStates(m_root_node);
#ifdef QSG_RENDERER_TIMING
- updatePassTime = frameTimer.elapsed();
+ if (qsg_render_timing)
+ updatePassTime = frameTimer.elapsed();
#endif
}