From d56286283dc41d1e97502f48ded754c059951060 Mon Sep 17 00:00:00 2001 From: Ulf Hermann Date: Tue, 15 Sep 2015 15:14:40 +0200 Subject: qmlprofiler: Simplify QmlProfilerClient We only need one class for it now. Change-Id: Iea2715993c0ce168a3ceeecbb694f1ad3585da68 Reviewed-by: Simon Hausmann --- tools/qmlprofiler/qmlprofilerclient.cpp | 54 +++++++++++---------------------- 1 file changed, 17 insertions(+), 37 deletions(-) (limited to 'tools/qmlprofiler/qmlprofilerclient.cpp') diff --git a/tools/qmlprofiler/qmlprofilerclient.cpp b/tools/qmlprofiler/qmlprofilerclient.cpp index ff723381bc..bd7b98379f 100644 --- a/tools/qmlprofiler/qmlprofilerclient.cpp +++ b/tools/qmlprofiler/qmlprofilerclient.cpp @@ -39,42 +39,11 @@ #include -ProfilerClient::ProfilerClient(const QString &clientName, - QQmlDebugConnection *client) - : QQmlDebugClient(clientName, client), - m_enabled(false) -{ -} - -ProfilerClient::~ProfilerClient() -{ -} - -void ProfilerClient::clearData() -{ - emit cleared(); -} - -bool ProfilerClient::isEnabled() const -{ - return m_enabled; -} - -void ProfilerClient::stateChanged(State status) -{ - if ((m_enabled && status != Enabled) || - (!m_enabled && status == Enabled)) - emit enabledChanged(); - - m_enabled = status == Enabled; - -} - class QmlProfilerClientPrivate { public: QmlProfilerClientPrivate() - : inProgressRanges(0) , features(std::numeric_limits::max()) + : inProgressRanges(0) , features(std::numeric_limits::max()), enabled(false) { ::memset(rangeCount, 0, QQmlProfilerDefinitions::MaximumRangeType * sizeof(int)); } @@ -87,11 +56,11 @@ public: int rangeCount[QQmlProfilerDefinitions::MaximumRangeType]; quint64 features; + bool enabled; }; -QmlProfilerClient::QmlProfilerClient( - QQmlDebugConnection *client) - : ProfilerClient(QStringLiteral("CanvasFrameRate"), client), +QmlProfilerClient::QmlProfilerClient(QQmlDebugConnection *client) + : QQmlDebugClient(QStringLiteral("CanvasFrameRate"), client), d(new QmlProfilerClientPrivate) { } @@ -108,9 +77,12 @@ void QmlProfilerClient::setFeatures(quint64 features) void QmlProfilerClient::clearData() { - ::memset(d->rangeCount, 0, QQmlProfilerDefinitions::MaximumRangeType * sizeof(int)); + for (int i = 0; i < QQmlProfilerDefinitions::MaximumRangeType; ++i) { + d->rangeCount[i] = 0; + d->rangeDatas[i].clear(); + d->rangeLocations[i].clear(); + } d->bindingTypes.clear(); - ProfilerClient::clearData(); } void QmlProfilerClient::sendRecordingStatus(bool record) @@ -142,6 +114,14 @@ inline QQmlProfilerDefinitions::ProfileFeature featureFromRangeType( } } +void QmlProfilerClient::stateChanged(State state) +{ + if ((d->enabled && state != Enabled) || (!d->enabled && state == Enabled)) { + d->enabled = (state == Enabled); + emit enabledChanged(d->enabled); + } +} + void QmlProfilerClient::messageReceived(const QByteArray &data) { QByteArray rwData = data; -- cgit v1.2.3