4#ifndef QQUICK3DRENDERSTATS_H
5#define QQUICK3DRENDERSTATS_H
18#include <QtQuick3D/qtquick3dglobal.h>
19#include <QtCore/qobject.h>
20#include <QtQuick3DRuntimeRender/private/qssgrendercontextcore_p.h>
21#include <QtQuick3DRuntimeRender/private/qssgrhicontext_p.h>
32 Q_PROPERTY(
float frameTime READ frameTime NOTIFY frameTimeChanged)
33 Q_PROPERTY(
float renderTime READ renderTime NOTIFY renderTimeChanged)
34 Q_PROPERTY(
float renderPrepareTime READ renderPrepareTime NOTIFY renderTimeChanged)
35 Q_PROPERTY(
float syncTime READ syncTime NOTIFY syncTimeChanged)
36 Q_PROPERTY(
float maxFrameTime READ maxFrameTime NOTIFY maxFrameTimeChanged)
38 Q_PROPERTY(
bool extendedDataCollectionEnabled READ extendedDataCollectionEnabled WRITE setExtendedDataCollectionEnabled NOTIFY extendedDataCollectionEnabledChanged)
40 Q_PROPERTY(
quint64 drawVertexCount READ drawVertexCount NOTIFY drawVertexCountChanged)
43 Q_PROPERTY(
int renderPassCount READ renderPassCount NOTIFY renderPassCountChanged)
44 Q_PROPERTY(
QString renderPassDetails READ renderPassDetails NOTIFY renderPassDetailsChanged)
45 Q_PROPERTY(
QString textureDetails READ textureDetails NOTIFY textureDetailsChanged)
47 Q_PROPERTY(
int pipelineCount READ pipelineCount NOTIFY pipelineCountChanged)
48 Q_PROPERTY(
qint64 materialGenerationTime READ materialGenerationTime NOTIFY materialGenerationTimeChanged)
49 Q_PROPERTY(
qint64 effectGenerationTime READ effectGenerationTime NOTIFY effectGenerationTimeChanged)
50 Q_PROPERTY(
qint64 pipelineCreationTime READ pipelineCreationTime NOTIFY pipelineCreationTimeChanged)
51 Q_PROPERTY(
quint32 vmemAllocCount READ vmemAllocCount NOTIFY vmemAllocCountChanged)
53 Q_PROPERTY(
QString graphicsApiName READ graphicsApiName NOTIFY graphicsApiNameChanged)
54 Q_PROPERTY(
float lastCompletedGpuTime READ lastCompletedGpuTime NOTIFY lastCompletedGpuTimeChanged)
60 float frameTime()
const;
61 float renderTime()
const;
62 float renderPrepareTime()
const;
63 float syncTime()
const;
64 float maxFrameTime()
const;
67 void endSync(
bool dump =
false);
70 void startRenderPrepare();
71 void endRenderPrepare();
72 void endRender(
bool dump =
false);
76 bool extendedDataCollectionEnabled()
const;
77 void setExtendedDataCollectionEnabled(
bool enable);
80 quint64 drawVertexCount()
const;
83 int renderPassCount()
const;
84 QString renderPassDetails()
const;
87 int pipelineCount()
const;
88 qint64 materialGenerationTime()
const;
89 qint64 effectGenerationTime()
const;
90 qint64 pipelineCreationTime()
const;
93 QString graphicsApiName()
const;
94 float lastCompletedGpuTime()
const;
125 void onFrameSwapped();
128 float timestamp()
const;
129 void processRhiContextStats();
130 void notifyRhiContextStats();
133 int m_frameCount = 0;
134 float m_secTimer = 0;
135 float m_notifyTimer = 0;
136 float m_renderStartTime = 0;
137 float m_renderPrepareStartTime = 0;
138 float m_syncStartTime = 0;
140 float m_internalMaxFrameTime = 0;
141 float m_maxFrameTime = 0;
147 float renderTime = 0;
148 float renderPrepareTime = 0;
150 float lastCompletedGpuTime = 0;
155 int renderPassCount = 0;
161 int pipelineCount = 0;
162 qint64 materialGenerationTime = 0;
163 qint64 effectGenerationTime = 0;
168 Results m_notifiedResults;
170 bool m_extendedDataCollectionEnabled =
false;
174 bool m_renderingThisFrame =
false;
void graphicsApiNameChanged()
void meshDataSizeChanged()
void lastCompletedGpuTimeChanged()
void pipelineCreationTimeChanged()
void maxFrameTimeChanged()
void pipelineCountChanged()
void drawCallCountChanged()
void meshDetailsChanged()
void materialGenerationTimeChanged()
void vmemUsedBytesChanged()
void textureDetailsChanged()
void vmemAllocCountChanged()
void drawVertexCountChanged()
void imageDataSizeChanged()
void effectGenerationTimeChanged()
void extendedDataCollectionEnabledChanged()
void renderPassDetailsChanged()
void renderPassCountChanged()
The QQuickItem class provides the most basic of all visual items in \l {Qt Quick}.
\qmltype Window \instantiates QQuickWindow \inqmlmodule QtQuick
\macro QT_RESTRICTED_CAST_FROM_ASCII
Combined button and popup list for selecting options.
static QString dump(const QByteArray &)
unsigned long long quint64
static size_t imageDataSize(const xcb_image_t *image)
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent