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))
41 , requestedFeatures(0)
47 ~QQmlProfilerClientPrivate() override;
49 void sendRecordingStatus(
int engineId);
50 bool updateFeatures(ProfileFeature feature);
51 int resolveType(
const QQmlProfilerTypedEvent &type);
52 int resolveStackTop();
53 void forwardEvents(
const QQmlProfilerEvent &last);
54 void forwardDebugMessages(qint64 untilTimestamp);
55 void processCurrentEvent();
58 QQmlProfilerEventReceiver *eventReceiver;
59 QScopedPointer<QQmlEngineControlClient> engineControl;
60 QScopedPointer<QQmlDebugMessageClient> messageClient;
63 quint64 requestedFeatures;
64 quint64 recordedFeatures;
65 quint32 flushInterval;
68 QQmlProfilerTypedEvent currentEvent;
69 QHash<QQmlProfilerEventType,
int> eventTypeIds;
70 QHash<qint64,
int> serverTypeIds;
71 QStack<QQmlProfilerTypedEvent> rangesInProgress;
72 QQueue<QQmlProfilerEvent> pendingMessages;
73 QQueue<QQmlProfilerEvent> pendingDebugMessages;
75 QList<
int> trackedEngines;