30class QQmlProfilerClientPrivate :
public QQmlDebugClientPrivate {
31 Q_DECLARE_PUBLIC(QQmlProfilerClient)
33 QQmlProfilerClientPrivate(QQmlDebugConnection *connection,
34 QQmlProfilerEventReceiver *eventReceiver)
35 : QQmlDebugClientPrivate(QLatin1String(
"CanvasFrameRate"), connection)
36 , eventReceiver(eventReceiver)
37 , engineControl(
new QQmlEngineControlClient(connection))
40 , requestedFeatures(0)
46 ~QQmlProfilerClientPrivate() override;
48 void sendRecordingStatus(
int engineId);
49 bool updateFeatures(ProfileFeature feature);
50 int resolveType(
const QQmlProfilerTypedEvent &type);
51 int resolveStackTop();
52 void forwardEvents(
const QQmlProfilerEvent &last);
53 void forwardDebugMessages(qint64 untilTimestamp);
54 void processCurrentEvent();
57 QQmlProfilerEventReceiver *eventReceiver;
58 QScopedPointer<QQmlEngineControlClient> engineControl;
59 QScopedPointer<QQmlDebugMessageClient> messageClient;
62 quint64 requestedFeatures;
63 quint64 recordedFeatures;
64 quint32 flushInterval;
67 QQmlProfilerTypedEvent currentEvent;
68 QHash<QQmlProfilerEventType,
int> eventTypeIds;
69 QHash<qint64,
int> serverTypeIds;
70 QStack<QQmlProfilerTypedEvent> rangesInProgress;
71 QQueue<QQmlProfilerEvent> pendingMessages;
72 QQueue<QQmlProfilerEvent> pendingDebugMessages;
74 QList<
int> trackedEngines;