31class QQmlProfilerClientPrivate :
public QQmlDebugClientPrivate {
32 Q_DECLARE_PUBLIC(QQmlProfilerClient)
34 QQmlProfilerClientPrivate(QQmlDebugConnection *connection,
35 QQmlProfilerEventReceiver *eventReceiver)
36 : QQmlDebugClientPrivate(QLatin1String(
"CanvasFrameRate"), connection)
37 , eventReceiver(eventReceiver)
38 , engineControl(
new QQmlEngineControlClient(connection))
39 , messageClient(
new QQmlDebugMessageClient(connection))
42 , requestedFeatures(0)
48 ~QQmlProfilerClientPrivate() override;
50 void sendRecordingStatus(
int engineId);
51 bool updateFeatures(ProfileFeature feature);
52 int resolveType(
const QQmlProfilerTypedEvent &type);
53 int resolveStackTop();
54 void forwardEvents(
const QQmlProfilerEvent &last);
55 void forwardDebugMessages(qint64 untilTimestamp);
56 void processCurrentEvent();
59 QQmlProfilerEventReceiver *eventReceiver;
60 QScopedPointer<QQmlEngineControlClient> engineControl;
61 QScopedPointer<QQmlDebugMessageClient> messageClient;
64 quint64 requestedFeatures;
65 quint64 recordedFeatures;
66 quint32 flushInterval;
69 QQmlProfilerTypedEvent currentEvent;
70 QHash<QQmlProfilerEventType,
int> eventTypeIds;
71 QHash<qint64,
int> serverTypeIds;
72 QStack<QQmlProfilerTypedEvent> rangesInProgress;
73 QQueue<QQmlProfilerEvent> pendingMessages;
74 QQueue<QQmlProfilerEvent> pendingDebugMessages;
76 QList<
int> trackedEngines;