OpenCoverage

qsgwindowsrenderloop.cpp

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/qtdeclarative/src/qtdeclarative/src/quick/scenegraph/qsgwindowsrenderloop.cpp
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8-
9-
10-
11extern __attribute__((visibility("default"))) QImage qt_gl_read_framebuffer(const QSize &size, bool alpha_format, bool include_alpha);-
12-
13-
14-
15static QElapsedTimer qsg_render_timer;-
16QSGWindowsRenderLoop::QSGWindowsRenderLoop()-
17 : m_gl(nullptr)-
18 , m_sg(QSGContext::createDefaultContext())-
19 , m_updateTimer(0)-
20 , m_animationTimer(0)-
21{-
22 m_rc = static_cast<QSGDefaultRenderContext *>(m_sg->createRenderContext());-
23-
24 m_vsyncDelta = 1000 / QGuiApplication::primaryScreen()->refreshRate();-
25 if (m_vsyncDelta <= 0
m_vsyncDelta <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
26 m_vsyncDelta = 16;
never executed: m_vsyncDelta = 16;
0
27-
28 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 92, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("Windows Render Loop created");
never executed: QMessageLogger(__FILE__, 92, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("Windows Render Loop created");
0
29-
30 m_animationDriver = m_sg->createAnimationDriver(m_sg);-
31 connect(m_animationDriver, qFlagLocation("2""started()" "\0" __FILE__ ":" "95"), this, qFlagLocation("1""started()" "\0" __FILE__ ":" "95"));-
32 connect(m_animationDriver, qFlagLocation("2""stopped()" "\0" __FILE__ ":" "96"), this, qFlagLocation("1""stopped()" "\0" __FILE__ ":" "96"));-
33 m_animationDriver->install();-
34-
35 qsg_render_timer.start();-
36}
never executed: end of block
0
37-
38QSGWindowsRenderLoop::~QSGWindowsRenderLoop()-
39{-
40 delete m_rc;-
41 delete m_sg;-
42}
never executed: end of block
0
43-
44bool QSGWindowsRenderLoop::interleaveIncubation() const-
45{-
46 return
never executed: return m_animationDriver->isRunning() && anyoneShowing();
m_animationDriver->isRunning() && anyoneShowing();
never executed: return m_animationDriver->isRunning() && anyoneShowing();
0
47}-
48-
49QSGWindowsRenderLoop::WindowData *QSGWindowsRenderLoop::windowData(QQuickWindow *window)-
50{-
51 for (int i=0; i<m_windows.size()
i<m_windows.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
52 WindowData &wd = m_windows[i];-
53 if (wd.window == window
wd.window == windowDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
54 return
never executed: return &wd;
&wd;
never executed: return &wd;
0
55 }
never executed: end of block
0
56 return
never executed: return nullptr;
nullptr;
never executed: return nullptr;
0
57}-
58-
59void QSGWindowsRenderLoop::maybePostUpdateTimer()-
60{-
61 if (!m_updateTimer
!m_updateTimerDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
62 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 126, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - posting event");
never executed: QMessageLogger(__FILE__, 126, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - posting event");
0
63 m_updateTimer = startTimer(m_vsyncDelta / 3);-
64 }
never executed: end of block
0
65}
never executed: end of block
0
66-
67-
68-
69-
70-
71void QSGWindowsRenderLoop::started()-
72{-
73 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 137, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("Animations started...");
never executed: QMessageLogger(__FILE__, 137, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("Animations started...");
0
74 if (!anyoneShowing()
!anyoneShowing()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
75 if (m_animationTimer == 0
m_animationTimer == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
76 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 140, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - starting non-visual animation timer");
never executed: QMessageLogger(__FILE__, 140, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - starting non-visual animation timer");
0
77 m_animationTimer = startTimer(m_vsyncDelta);-
78 }
never executed: end of block
0
79 }
never executed: end of block
else {
0
80 maybePostUpdateTimer();-
81 }
never executed: end of block
0
82}-
83-
84void QSGWindowsRenderLoop::stopped()-
85{-
86 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 150, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("Animations stopped...");
never executed: QMessageLogger(__FILE__, 150, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("Animations stopped...");
0
87 if (m_animationTimer
m_animationTimerDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
88 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 152, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - stopping non-visual animation timer");
never executed: QMessageLogger(__FILE__, 152, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - stopping non-visual animation timer");
0
89 killTimer(m_animationTimer);-
90 m_animationTimer = 0;-
91 }
never executed: end of block
0
92}
never executed: end of block
0
93-
94void QSGWindowsRenderLoop::show(QQuickWindow *window)-
95{-
96 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 160, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("show");
never executed: QMessageLogger(__FILE__, 160, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("show");
0
97 if (windowData(window) != nullptr
windowData(window) != nullptrDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
98 return;
never executed: return;
0
99-
100-
101-
102-
103-
104-
105-
106 if (!m_gl
!m_glDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
107 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 171, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - creating GL context");
never executed: QMessageLogger(__FILE__, 171, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - creating GL context");
0
108 m_gl = new QOpenGLContext();-
109 m_gl->setFormat(window->requestedFormat());-
110 m_gl->setScreen(window->screen());-
111 if (qt_gl_global_share_context()
qt_gl_global_share_context()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
112 m_gl->setShareContext(qt_gl_global_share_context());
never executed: m_gl->setShareContext(qt_gl_global_share_context());
0
113 bool created = m_gl->create();-
114 if (!created
!createdDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
115 const bool isEs = m_gl->isOpenGLES();-
116 delete m_gl;-
117 m_gl = nullptr;-
118 handleContextCreationFailure(window, isEs);-
119 return;
never executed: return;
0
120 }-
121-
122 QQuickWindowPrivate::get(window)->fireOpenGLContextCreated(m_gl);-
123-
124 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 188, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - making current");
never executed: QMessageLogger(__FILE__, 188, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - making current");
0
125 bool current = m_gl->makeCurrent(window);-
126 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 190, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - initializing SG");
never executed: QMessageLogger(__FILE__, 190, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - initializing SG");
0
127 if (current
currentDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
128 m_rc->initialize(m_gl);
never executed: m_rc->initialize(m_gl);
0
129 }
never executed: end of block
0
130-
131 WindowData data;-
132 data.window = window;-
133 data.pendingUpdate = false;-
134 m_windows << data;-
135-
136 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 200, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - done with show");
never executed: QMessageLogger(__FILE__, 200, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - done with show");
0
137}
never executed: end of block
0
138-
139void QSGWindowsRenderLoop::hide(QQuickWindow *window)-
140{-
141 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 205, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("hide");
never executed: QMessageLogger(__FILE__, 205, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("hide");
0
142-
143-
144-
145-
146-
147 if (window->isExposed()
window->isExposed()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
148 handleObscurity();
never executed: handleObscurity();
0
149 if (!m_gl
!m_glDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
150 return;
never executed: return;
0
151 QQuickWindowPrivate::get(window)->fireAboutToStop();-
152}
never executed: end of block
0
153-
154void QSGWindowsRenderLoop::windowDestroyed(QQuickWindow *window)-
155{-
156 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 220, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("windowDestroyed");
never executed: QMessageLogger(__FILE__, 220, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("windowDestroyed");
0
157 for (int i=0; i<m_windows.size()
i<m_windows.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
158 if (m_windows.at(i).window == window
m_windows.at(i...ndow == windowDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
159 m_windows.removeAt(i);-
160 break;
never executed: break;
0
161 }-
162 }
never executed: end of block
0
163-
164 hide(window);-
165-
166 QQuickWindowPrivate *d = QQuickWindowPrivate::get(window);-
167-
168 bool current = false;-
169 QScopedPointer<QOffscreenSurface> offscreenSurface;-
170 if (m_gl
m_glDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
171 QSurface *surface = window;-
172-
173 if (!window->handle()
!window->handle()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
174 offscreenSurface.reset(new QOffscreenSurface);-
175 offscreenSurface->setFormat(m_gl->format());-
176 offscreenSurface->create();-
177 surface = offscreenSurface.data();-
178 }
never executed: end of block
0
179 current = m_gl->makeCurrent(surface);-
180 }
never executed: end of block
0
181 if (__builtin_expect(!!(!current), false)
__builtin_expe...rrent), false)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
182 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 246, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("cleanup without an OpenGL context");
never executed: QMessageLogger(__FILE__, 246, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("cleanup without an OpenGL context");
0
183-
184-
185 QQuickOpenGLShaderEffectMaterial::cleanupMaterialCache();-
186-
187-
188 d->cleanupNodesOnShutdown();-
189 if (m_windows.size() == 0
m_windows.size() == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
190 d->context->invalidate();-
191 delete m_gl;-
192 m_gl = nullptr;-
193 }
never executed: end of block
else if (m_gl
m_glDescription
TRUEnever evaluated
FALSEnever evaluated
&& current
currentDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
194 m_gl->doneCurrent();-
195 }
never executed: end of block
0
196-
197 delete d->animationController;-
198}
never executed: end of block
0
199-
200bool QSGWindowsRenderLoop::anyoneShowing() const-
201{-
202 for (const WindowData &wd : qAsConst(m_windows))-
203 if (wd.window->isVisible()
wd.window->isVisible()Description
TRUEnever evaluated
FALSEnever evaluated
&& wd.window->isExposed()
wd.window->isExposed()Description
TRUEnever evaluated
FALSEnever evaluated
&& wd.window->size().isValid()
wd.window->size().isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
204 return
never executed: return true;
true;
never executed: return true;
0
205 return
never executed: return false;
false;
never executed: return false;
0
206}-
207-
208void QSGWindowsRenderLoop::exposureChanged(QQuickWindow *window)-
209{-
210-
211 if (windowData(window) == nullptr
windowData(window) == nullptrDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
212 return;
never executed: return;
0
213-
214 if (window->isExposed()
window->isExposed()Description
TRUEnever evaluated
FALSEnever evaluated
&& window->isVisible()
window->isVisible()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
215-
216-
217 if (m_animationTimer
m_animationTimerDescription
TRUEnever evaluated
FALSEnever evaluated
&& anyoneShowing()
anyoneShowing()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
218 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 282, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - stopping non-visual animation timer");
never executed: QMessageLogger(__FILE__, 282, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - stopping non-visual animation timer");
0
219 killTimer(m_animationTimer);-
220 m_animationTimer = 0;-
221 }
never executed: end of block
0
222-
223 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 287, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("exposureChanged - exposed");
never executed: QMessageLogger(__FILE__, 287, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("exposureChanged - exposed");
0
224 WindowData *wd = windowData(window);-
225 wd->pendingUpdate = true;-
226-
227-
228-
229 if (m_updateTimer
m_updateTimerDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
230 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 294, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - killing pending update timer");
never executed: QMessageLogger(__FILE__, 294, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - killing pending update timer");
0
231 killTimer(m_updateTimer);-
232 m_updateTimer = 0;-
233 }
never executed: end of block
0
234 render();-
235 }
never executed: end of block
else {
0
236 handleObscurity();-
237 }
never executed: end of block
0
238}-
239-
240void QSGWindowsRenderLoop::handleObscurity()-
241{-
242 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 306, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("handleObscurity");
never executed: QMessageLogger(__FILE__, 306, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("handleObscurity");
0
243-
244 if (m_animationDriver->isRunning()
m_animationDriver->isRunning()Description
TRUEnever evaluated
FALSEnever evaluated
&& !anyoneShowing()
!anyoneShowing()Description
TRUEnever evaluated
FALSEnever evaluated
&& !m_animationTimer
!m_animationTimerDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
245 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 309, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - starting non-visual animation timer");
never executed: QMessageLogger(__FILE__, 309, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - starting non-visual animation timer");
0
246 m_animationTimer = startTimer(m_vsyncDelta);-
247 }
never executed: end of block
0
248}
never executed: end of block
0
249-
250QImage QSGWindowsRenderLoop::grab(QQuickWindow *window)-
251{-
252 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 316, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("grab");
never executed: QMessageLogger(__FILE__, 316, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("grab");
0
253 if (!m_gl
!m_glDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
254 return
never executed: return QImage();
QImage();
never executed: return QImage();
0
255-
256 m_gl->makeCurrent(window);-
257-
258 QQuickWindowPrivate *d = QQuickWindowPrivate::get(window);-
259 d->polishItems();-
260 d->syncSceneGraph();-
261 d->renderSceneGraph(window->size());-
262-
263 bool alpha = window->format().alphaBufferSize() > 0
window->format...fferSize() > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& window->color().alpha() != 255
window->color().alpha() != 255Description
TRUEnever evaluated
FALSEnever evaluated
;
0
264 QImage image = qt_gl_read_framebuffer(window->size() * window->effectiveDevicePixelRatio(), alpha, alpha);-
265 image.setDevicePixelRatio(window->effectiveDevicePixelRatio());-
266 return
never executed: return image;
image;
never executed: return image;
0
267}-
268-
269void QSGWindowsRenderLoop::update(QQuickWindow *window)-
270{-
271 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 335, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("update");
never executed: QMessageLogger(__FILE__, 335, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("update");
0
272 maybeUpdate(window);-
273}
never executed: end of block
0
274-
275void QSGWindowsRenderLoop::maybeUpdate(QQuickWindow *window)-
276{-
277 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 341, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("maybeUpdate");
never executed: QMessageLogger(__FILE__, 341, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("maybeUpdate");
0
278-
279 WindowData *wd = windowData(window);-
280 if (!wd
!wdDescription
TRUEnever evaluated
FALSEnever evaluated
|| !anyoneShowing()
!anyoneShowing()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
281 return;
never executed: return;
0
282-
283 wd->pendingUpdate = true;-
284 maybePostUpdateTimer();-
285}
never executed: end of block
0
286-
287QSGRenderContext *QSGWindowsRenderLoop::createRenderContext(QSGContext *) const-
288{-
289 return
never executed: return m_rc;
m_rc;
never executed: return m_rc;
0
290}-
291-
292bool QSGWindowsRenderLoop::event(QEvent *event)-
293{-
294 switch (event->type()) {-
295 case
never executed: case QEvent::Timer:
QEvent::Timer:
never executed: case QEvent::Timer:
{
0
296 QTimerEvent *te = static_cast<QTimerEvent *>(event);-
297 if (te->timerId() == m_animationTimer
te->timerId() ...animationTimerDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
298 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 362, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("event : animation tick while nothing is showing");
never executed: QMessageLogger(__FILE__, 362, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("event : animation tick while nothing is showing");
0
299 m_animationDriver->advance();-
300 }
never executed: end of block
else if (te->timerId() == m_updateTimer
te->timerId() == m_updateTimerDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
301 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 365, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("event : update");
never executed: QMessageLogger(__FILE__, 365, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("event : update");
0
302 killTimer(m_updateTimer);-
303 m_updateTimer = 0;-
304 render();-
305 }
never executed: end of block
0
306 return
never executed: return true;
true;
never executed: return true;
}
0
307 default
never executed: default:
:
never executed: default:
0
308 break;
never executed: break;
0
309 }-
310-
311 return
never executed: return QObject::event(event);
QObject::event(event);
never executed: return QObject::event(event);
0
312}-
313-
314-
315-
316-
317-
318void QSGWindowsRenderLoop::render()-
319{-
320 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 384, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("render");
never executed: QMessageLogger(__FILE__, 384, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("render");
0
321 bool rendered = false;-
322 for (const WindowData &wd : qAsConst(m_windows)) {-
323 if (wd.pendingUpdate
wd.pendingUpdateDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
324 const_cast<WindowData &>(wd).pendingUpdate = false;-
325 renderWindow(wd.window);-
326 rendered = true;-
327 }
never executed: end of block
0
328 }
never executed: end of block
0
329-
330 if (!rendered
!renderedDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
331 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 395, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("no changes, sleep");
never executed: QMessageLogger(__FILE__, 395, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("no changes, sleep");
0
332 QThread::msleep(m_vsyncDelta);-
333 }
never executed: end of block
0
334-
335 if (m_animationDriver->isRunning()
m_animationDriver->isRunning()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
336 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 400, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("advancing animations");
never executed: QMessageLogger(__FILE__, 400, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("advancing animations");
0
337 qint64 time_start = 0; if (QSG_LOG_TIME_RENDERLOOP().isDebugEnabled()
QSG_LOG_TIME_R...DebugEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
) time_start = qsg_render_timer.nsecsElapsed();
never executed: time_start = qsg_render_timer.nsecsElapsed();
;
0
338 if (QQuickProfiler::featuresEnabled & (1 << QQuickProfiler::ProfileSceneGraph)
QQuickProfiler...ileSceneGraph)Description
TRUEnever evaluated
FALSEnever evaluated
) { (QQuickProfiler::startSceneGraphFrame<QQuickProfiler::SceneGraphWindowsAnimations>()); }
never executed: end of block
else (
never executed: (void)0;
void)0;
never executed: (void)0;
0
339 m_animationDriver->advance();-
340 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 404, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("animations advanced");
never executed: QMessageLogger(__FILE__, 404, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("animations advanced");
0
341-
342 for (bool qt_category_enabled = QSG_LOG_TIME_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(
never executed: QMessageLogger( __FILE__ , 408 , __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP().categoryName()).debug("animations ticked in %dms", int((qsg_render_timer.nsecsElapsed() - time_start)/1000000)) ;
0
3430
344 __FILE__
never executed: QMessageLogger( __FILE__ , 408 , __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP().categoryName()).debug("animations ticked in %dms", int((qsg_render_timer.nsecsElapsed() - time_start)/1000000)) ;
0
345 ,
never executed: QMessageLogger( __FILE__ , 408 , __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP().categoryName()).debug("animations ticked in %dms", int((qsg_render_timer.nsecsElapsed() - time_start)/1000000)) ;
0
3460
347 408
never executed: QMessageLogger( __FILE__ , 408 , __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP().categoryName()).debug("animations ticked in %dms", int((qsg_render_timer.nsecsElapsed() - time_start)/1000000)) ;
0
348 , __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP().categoryName()).debug("animations ticked in %dms", int((qsg_render_timer.nsecsElapsed() - time_start)/1000000))
never executed: QMessageLogger( __FILE__ , 408 , __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP().categoryName()).debug("animations ticked in %dms", int((qsg_render_timer.nsecsElapsed() - time_start)/1000000)) ;
0
3490
350 ;
never executed: QMessageLogger( __FILE__ , 408 , __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP().categoryName()).debug("animations ticked in %dms", int((qsg_render_timer.nsecsElapsed() - time_start)/1000000)) ;
0
351-
352 if (QQuickProfiler::featuresEnabled & (1 << QQuickProfiler::ProfileSceneGraph)
QQuickProfiler...ileSceneGraph)Description
TRUEnever evaluated
FALSEnever evaluated
) { (QQuickProfiler::reportSceneGraphFrame<QQuickProfiler::SceneGraphWindowsAnimations, true>(1)); }
never executed: end of block
else (
never executed: (void)0;
void)0;
never executed: (void)0;
0
353-
354-
355-
356-
357 maybePostUpdateTimer();-
358-
359 timeToIncubate();-
360 }
never executed: end of block
0
361}
never executed: end of block
0
362void QSGWindowsRenderLoop::renderWindow(QQuickWindow *window)-
363{-
364 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 431, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("renderWindow");
never executed: QMessageLogger(__FILE__, 431, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("renderWindow");
0
365 QQuickWindowPrivate *d = QQuickWindowPrivate::get(window);-
366-
367 if (!d->isRenderable()
!d->isRenderable()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
368 return;
never executed: return;
0
369-
370 if (!m_gl->makeCurrent(window)
!m_gl->makeCurrent(window)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
371-
372 if (!m_gl->isValid()
!m_gl->isValid()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
373 d->cleanupNodesOnShutdown();-
374 m_rc->invalidate();-
375 if (m_gl->create()
m_gl->create()Description
TRUEnever evaluated
FALSEnever evaluated
&& m_gl->makeCurrent(window)
m_gl->makeCurrent(window)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
376 m_rc->initialize(m_gl);
never executed: m_rc->initialize(m_gl);
0
377 else-
378 return;
never executed: return;
0
379 }-
380 }
never executed: end of block
0
381-
382 bool lastDirtyWindow = true;-
383 for (int i=0; i<m_windows.size()
i<m_windows.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
384 if ( m_windows[i].pendingUpdate
m_windows[i].pendingUpdateDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
385 lastDirtyWindow = false;-
386 break;
never executed: break;
0
387 }-
388 }
never executed: end of block
0
389-
390 d->flushFrameSynchronousEvents();-
391-
392 if (!windowData(window)
!windowData(window)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
393 return;
never executed: return;
0
394-
395 qint64 time_start = 0; if (QSG_LOG_TIME_RENDERLOOP().isDebugEnabled()
QSG_LOG_TIME_R...DebugEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
) time_start = qsg_render_timer.nsecsElapsed();
never executed: time_start = qsg_render_timer.nsecsElapsed();
;
0
396 if (QQuickProfiler::featuresEnabled & (1 << QQuickProfiler::ProfileSceneGraph)
QQuickProfiler...ileSceneGraph)Description
TRUEnever evaluated
FALSEnever evaluated
) { (QQuickProfiler::startSceneGraphFrame<QQuickProfiler::SceneGraphPolishFrame>()); }
never executed: end of block
else (
never executed: (void)0;
void)0;
never executed: (void)0;
0
397-
398 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 465, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - polishing");
never executed: QMessageLogger(__FILE__, 465, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - polishing");
0
399 d->polishItems();-
400 qint64 time_polished = 0; if (QSG_LOG_TIME_RENDERLOOP().isDebugEnabled()
QSG_LOG_TIME_R...DebugEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
) time_polished = qsg_render_timer.nsecsElapsed();
never executed: time_polished = qsg_render_timer.nsecsElapsed();
;
0
401 if (QQuickProfiler::featuresEnabled & (1 << QQuickProfiler::ProfileSceneGraph)
QQuickProfiler...ileSceneGraph)Description
TRUEnever evaluated
FALSEnever evaluated
) { (QQuickProfiler::reportSceneGraphFrame<QQuickProfiler::SceneGraphPolishFrame, true, QQuickProfiler::SceneGraphRenderLoopFrame>( QQuickProfiler::SceneGraphPolishPolish)); }
never executed: end of block
else (
never executed: (void)0 ;
void)0
never executed: (void)0 ;
0
4020
403 ;
never executed: (void)0 ;
0
404-
405 window->afterAnimating();-
406-
407 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 474, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - syncing");
never executed: QMessageLogger(__FILE__, 474, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - syncing");
0
408 d->syncSceneGraph();-
409 if (lastDirtyWindow
lastDirtyWindowDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
410 m_rc->endSync();
never executed: m_rc->endSync();
0
411 qint64 time_synced = 0; if (QSG_LOG_TIME_RENDERLOOP().isDebugEnabled()
QSG_LOG_TIME_R...DebugEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
) time_synced = qsg_render_timer.nsecsElapsed();
never executed: time_synced = qsg_render_timer.nsecsElapsed();
if (QQuickProfiler::featuresEnabled & (1 << QQuickProfiler::ProfileSceneGraph)
QQuickProfiler...ileSceneGraph)Description
TRUEnever evaluated
FALSEnever evaluated
) { (QQuickProfiler::recordSceneGraphTimestamp<QQuickProfiler::SceneGraphRenderLoopFrame>(QQuickProfiler::SceneGraphRenderLoopSync)); }
never executed: end of block
else (
never executed: (void)0;
void)0;
never executed: (void)0;
0
412 ;-
413-
414 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 481, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - rendering");
never executed: QMessageLogger(__FILE__, 481, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - rendering");
0
415 d->renderSceneGraph(window->size());-
416 qint64 time_rendered = 0; if (QSG_LOG_TIME_RENDERLOOP().isDebugEnabled()
QSG_LOG_TIME_R...DebugEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
) time_rendered = qsg_render_timer.nsecsElapsed();
never executed: time_rendered = qsg_render_timer.nsecsElapsed();
if (QQuickProfiler::featuresEnabled & (1 << QQuickProfiler::ProfileSceneGraph)
QQuickProfiler...ileSceneGraph)Description
TRUEnever evaluated
FALSEnever evaluated
) { (QQuickProfiler::recordSceneGraphTimestamp<QQuickProfiler::SceneGraphRenderLoopFrame>(QQuickProfiler::SceneGraphRenderLoopRender)); }
never executed: end of block
else (
never executed: (void)0;
void)0;
never executed: (void)0;
0
417 ;-
418-
419 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 486, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - swapping");
never executed: QMessageLogger(__FILE__, 486, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - swapping");
0
420 if (!d->customRenderStage
!d->customRenderStageDescription
TRUEnever evaluated
FALSEnever evaluated
|| !d->customRenderStage->swap()
!d->customRenderStage->swap()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
421 m_gl->swapBuffers(window);
never executed: m_gl->swapBuffers(window);
0
422 qint64 time_swapped = 0; if (QSG_LOG_TIME_RENDERLOOP().isDebugEnabled()
QSG_LOG_TIME_R...DebugEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
) time_swapped = qsg_render_timer.nsecsElapsed();
never executed: time_swapped = qsg_render_timer.nsecsElapsed();
if (QQuickProfiler::featuresEnabled & (1 << QQuickProfiler::ProfileSceneGraph)
QQuickProfiler...ileSceneGraph)Description
TRUEnever evaluated
FALSEnever evaluated
) { (QQuickProfiler::recordSceneGraphTimestamp<QQuickProfiler::SceneGraphRenderLoopFrame>(QQuickProfiler::SceneGraphRenderLoopSwap)); }
never executed: end of block
else (
never executed: (void)0;
void)0;
never executed: (void)0;
0
423 ;-
424-
425 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 492, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - frameDone");
never executed: QMessageLogger(__FILE__, 492, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug(" - frameDone");
0
426 d->fireFrameSwapped();-
427-
428 for (bool qt_category_enabled = QSG_LOG_TIME_RENDERLOOP()().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 495, __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP()().categoryName()).debug().nospace()
never executed: QMessageLogger(__FILE__, 495, __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP()().categoryName()).debug().nospace() << "Frame rendered with 'windows' renderloop in: " << (time_swapped - time_start) / 1000000 << "ms" << ", polish=" << (time_polished - time_start) / 1000000 << ", sync=" << (time_synced - time_polished) / 1000000 << ", render=" << (time_rendered - time_synced) / 1000000 << ", swap=" << (time_swapped - time_rendered) / 1000000 << " - " << window;
0
429 << "Frame rendered with 'windows' renderloop in: " << (time_swapped - time_start) / 1000000 << "ms"
never executed: QMessageLogger(__FILE__, 495, __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP()().categoryName()).debug().nospace() << "Frame rendered with 'windows' renderloop in: " << (time_swapped - time_start) / 1000000 << "ms" << ", polish=" << (time_polished - time_start) / 1000000 << ", sync=" << (time_synced - time_polished) / 1000000 << ", render=" << (time_rendered - time_synced) / 1000000 << ", swap=" << (time_swapped - time_rendered) / 1000000 << " - " << window;
0
430 << ", polish=" << (time_polished - time_start) / 1000000
never executed: QMessageLogger(__FILE__, 495, __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP()().categoryName()).debug().nospace() << "Frame rendered with 'windows' renderloop in: " << (time_swapped - time_start) / 1000000 << "ms" << ", polish=" << (time_polished - time_start) / 1000000 << ", sync=" << (time_synced - time_polished) / 1000000 << ", render=" << (time_rendered - time_synced) / 1000000 << ", swap=" << (time_swapped - time_rendered) / 1000000 << " - " << window;
0
431 << ", sync=" << (time_synced - time_polished) / 1000000
never executed: QMessageLogger(__FILE__, 495, __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP()().categoryName()).debug().nospace() << "Frame rendered with 'windows' renderloop in: " << (time_swapped - time_start) / 1000000 << "ms" << ", polish=" << (time_polished - time_start) / 1000000 << ", sync=" << (time_synced - time_polished) / 1000000 << ", render=" << (time_rendered - time_synced) / 1000000 << ", swap=" << (time_swapped - time_rendered) / 1000000 << " - " << window;
0
432 << ", render=" << (time_rendered - time_synced) / 1000000
never executed: QMessageLogger(__FILE__, 495, __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP()().categoryName()).debug().nospace() << "Frame rendered with 'windows' renderloop in: " << (time_swapped - time_start) / 1000000 << "ms" << ", polish=" << (time_polished - time_start) / 1000000 << ", sync=" << (time_synced - time_polished) / 1000000 << ", render=" << (time_rendered - time_synced) / 1000000 << ", swap=" << (time_swapped - time_rendered) / 1000000 << " - " << window;
0
433 << ", swap=" << (time_swapped - time_rendered) / 1000000
never executed: QMessageLogger(__FILE__, 495, __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP()().categoryName()).debug().nospace() << "Frame rendered with 'windows' renderloop in: " << (time_swapped - time_start) / 1000000 << "ms" << ", polish=" << (time_polished - time_start) / 1000000 << ", sync=" << (time_synced - time_polished) / 1000000 << ", render=" << (time_rendered - time_synced) / 1000000 << ", swap=" << (time_swapped - time_rendered) / 1000000 << " - " << window;
0
434 << " - " << window;
never executed: QMessageLogger(__FILE__, 495, __PRETTY_FUNCTION__, QSG_LOG_TIME_RENDERLOOP()().categoryName()).debug().nospace() << "Frame rendered with 'windows' renderloop in: " << (time_swapped - time_start) / 1000000 << "ms" << ", polish=" << (time_polished - time_start) / 1000000 << ", sync=" << (time_synced - time_polished) / 1000000 << ", render=" << (time_rendered - time_synced) / 1000000 << ", swap=" << (time_swapped - time_rendered) / 1000000 << " - " << window;
0
435-
436 if (QQuickProfiler::featuresEnabled & (1 << QQuickProfiler::ProfileSceneGraph)
QQuickProfiler...ileSceneGraph)Description
TRUEnever evaluated
FALSEnever evaluated
) { (QQuickProfiler::reportSceneGraphFrame<QQuickProfiler::SceneGraphRenderLoopFrame, false>(QQuickProfiler::SceneGraphRenderLoopSwap)); }
never executed: end of block
else (
never executed: (void)0 ;
void)0
never executed: (void)0 ;
0
437 ;
never executed: (void)0 ;
0
438}-
439-
440void QSGWindowsRenderLoop::releaseResources(QQuickWindow *w)-
441{-
442-
443 for (bool qt_category_enabled = QSG_LOG_RENDERLOOP().isDebugEnabled(); qt_category_enabled
qt_category_enabledDescription
TRUEnever evaluated
FALSEnever evaluated
; qt_category_enabled = false) QMessageLogger(__FILE__, 510, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("releaseResources");
never executed: QMessageLogger(__FILE__, 510, __PRETTY_FUNCTION__, QSG_LOG_RENDERLOOP().categoryName()).debug("releaseResources");
0
444 QQuickWindowPrivate *d = QQuickWindowPrivate::get(w);-
445 if (d->renderer
d->rendererDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
446 d->renderer->releaseCachedResources();
never executed: d->renderer->releaseCachedResources();
0
447}
never executed: end of block
0
448-
449-
450-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.0