aboutsummaryrefslogtreecommitdiffstats
path: root/tools/qmlprofiler/qmlprofilerclient.h
diff options
context:
space:
mode:
Diffstat (limited to 'tools/qmlprofiler/qmlprofilerclient.h')
-rw-r--r--tools/qmlprofiler/qmlprofilerclient.h140
1 files changed, 40 insertions, 100 deletions
diff --git a/tools/qmlprofiler/qmlprofilerclient.h b/tools/qmlprofiler/qmlprofilerclient.h
index 731ab99973..1da04db42a 100644
--- a/tools/qmlprofiler/qmlprofilerclient.h
+++ b/tools/qmlprofiler/qmlprofilerclient.h
@@ -1,31 +1,26 @@
/****************************************************************************
**
-** Copyright (C) 2015 The Qt Company Ltd.
-** Contact: http://www.qt.io/licensing/
+** Copyright (C) 2016 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
**
** This file is part of the QtQml module of the Qt Toolkit.
**
-** $QT_BEGIN_LICENSE:LGPL21$
+** $QT_BEGIN_LICENSE:GPL-EXCEPT$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see http://www.qt.io/terms-conditions. For further
-** information use the contact form at http://www.qt.io/contact-us.
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 or version 3 as published by the Free
-** Software Foundation and appearing in the file LICENSE.LGPLv21 and
-** LICENSE.LGPLv3 included in the packaging of this file. Please review the
-** following information to ensure the GNU Lesser General Public License
-** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** As a special exception, The Qt Company gives you certain additional
-** rights. These rights are described in The Qt Company LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 as published by the Free Software
+** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
@@ -34,100 +29,45 @@
#ifndef QMLPROFILERCLIENT_H
#define QMLPROFILERCLIENT_H
-#include "qqmldebugclient.h"
-#include "qmlprofilereventlocation.h"
-#include <QtQml/private/qqmlprofilerdefinitions_p.h>
+#include <private/qqmleventlocation_p.h>
+#include <private/qqmlprofilerclient_p.h>
+#include <private/qqmlprofilerdefinitions_p.h>
-class ProfilerClientPrivate;
-class ProfilerClient : public QQmlDebugClient
+class QmlProfilerData;
+class QmlProfilerClientPrivate;
+class QmlProfilerClient : public QQmlProfilerClient
{
Q_OBJECT
+ Q_DECLARE_PRIVATE(QmlProfilerClient)
- Q_PROPERTY(bool enabled READ isEnabled NOTIFY enabledChanged)
public:
- ProfilerClient(const QString &clientName,
- QQmlDebugConnection *client);
- ~ProfilerClient();
-
- bool isEnabled() const;
-
-public slots:
- virtual void clearData();
+ QmlProfilerClient(QQmlDebugConnection *connection, QmlProfilerData *data);
+ void clearPendingData();
signals:
- void complete();
- void enabledChanged();
- void cleared();
-
-protected:
- virtual void stateChanged(State);
-
-protected:
- bool m_enabled;
-};
-
-class QmlProfilerClient : public ProfilerClient
-{
- Q_OBJECT
-
-public:
- QmlProfilerClient(QQmlDebugConnection *client);
- ~QmlProfilerClient();
+ void enabledChanged(bool enabled);
+ void recordingStarted();
+ void error(const QString &error);
- void setFeatures(quint64 features);
-
-public slots:
- void clearData();
- void sendRecordingStatus(bool record);
-
-signals:
- void traceFinished( qint64 time );
- void traceStarted( qint64 time );
- void range(QQmlProfilerDefinitions::RangeType type,
- QQmlProfilerDefinitions::BindingType bindingType,
- qint64 startTime, qint64 length,
- const QStringList &data,
- const QmlEventLocation &location);
- void frame(qint64 time, int frameRate, int animationCount, int threadId);
- void sceneGraphFrame(QQmlProfilerDefinitions::SceneGraphFrameType type, qint64 time,
+private:
+ virtual void stateChanged(State state);
+
+ void traceStarted(qint64 time, int engineId);
+ void traceFinished(qint64 time, int engineId);
+ void rangeStart(QQmlProfilerDefinitions::RangeType type, qint64 startTime);
+ void rangeData(QQmlProfilerDefinitions::RangeType type, qint64 time, const QString &data);
+ void rangeLocation(QQmlProfilerDefinitions::RangeType type, qint64 time,
+ const QQmlEventLocation &location);
+ void rangeEnd(QQmlProfilerDefinitions::RangeType type, qint64 endTime);
+ void animationFrame(qint64 time, int frameRate, int animationCount, int threadId);
+ void sceneGraphEvent(QQmlProfilerDefinitions::SceneGraphFrameType type, qint64 time,
qint64 numericData1, qint64 numericData2, qint64 numericData3,
qint64 numericData4, qint64 numericData5);
- void pixmapCache(QQmlProfilerDefinitions::PixmapEventType, qint64 time,
- const QmlEventLocation &location, int width, int height, int refCount);
+ void pixmapCacheEvent(QQmlProfilerDefinitions::PixmapEventType type, qint64 time,
+ const QString &url, int numericData1, int numericData2);
void memoryAllocation(QQmlProfilerDefinitions::MemoryType type, qint64 time, qint64 amount);
- void inputEvent(QQmlProfilerDefinitions::EventType, qint64 time);
-
-protected:
- virtual void messageReceived(const QByteArray &);
-
-private:
- class QmlProfilerClientPrivate *d;
-};
-
-class V8ProfilerClient : public ProfilerClient
-{
- Q_OBJECT
-
-public:
- enum Message {
- V8Entry,
- V8Complete,
-
- V8MaximumMessage
- };
-
- V8ProfilerClient(QQmlDebugConnection *client);
- ~V8ProfilerClient();
-
-public slots:
- void sendRecordingStatus(bool record);
-
-signals:
- void range(int depth, const QString &function, const QString &filename,
- int lineNumber, double totalTime, double selfTime);
-
-protected:
- virtual void messageReceived(const QByteArray &);
+ void inputEvent(QQmlProfilerDefinitions::InputEventType type, qint64 time, int a, int b);
+ void complete();
};
#endif // QMLPROFILERCLIENT_H