diff options
author | hjk <hjk@qt.io> | 2017-06-20 18:01:25 +0200 |
---|---|---|
committer | hjk <hjk@qt.io> | 2017-06-22 08:42:34 +0000 |
commit | fe3facb015099a27900dea8dd8ddcfce7a519ca9 (patch) | |
tree | ee944c44f7e6b492be3057cd95bedd7a5d835aaa /src/plugins/valgrind/callgrind | |
parent | acc9da0861d9c5054a797fea526c372583c34527 (diff) |
Valgrind: Dissolve CallGrindRunner
Basically merge with CallGrindToolRunner, to which there was
a 1:1 relationship.
Change-Id: Iebd9325c36e82b966f873d380395065e087958e4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/plugins/valgrind/callgrind')
-rw-r--r-- | src/plugins/valgrind/callgrind/callgrind.pri | 4 | ||||
-rw-r--r-- | src/plugins/valgrind/callgrind/callgrindrunner.cpp | 123 | ||||
-rw-r--r-- | src/plugins/valgrind/callgrind/callgrindrunner.h | 69 |
3 files changed, 1 insertions, 195 deletions
diff --git a/src/plugins/valgrind/callgrind/callgrind.pri b/src/plugins/valgrind/callgrind/callgrind.pri index 19c7650c28..8c231926a2 100644 --- a/src/plugins/valgrind/callgrind/callgrind.pri +++ b/src/plugins/valgrind/callgrind/callgrind.pri @@ -14,8 +14,7 @@ HEADERS += \ $$PWD/callgrindcontroller.h \ $$PWD/callgrindcycledetection.h \ $$PWD/callgrindproxymodel.h \ - $$PWD/callgrindstackbrowser.h \ - $$PWD/callgrindrunner.h + $$PWD/callgrindstackbrowser.h SOURCES += \ $$PWD/callgrindparser.cpp \ @@ -29,5 +28,4 @@ SOURCES += \ $$PWD/callgrindcontroller.cpp \ $$PWD/callgrindcycledetection.cpp \ $$PWD/callgrindproxymodel.cpp \ - $$PWD/callgrindrunner.cpp \ $$PWD/callgrindstackbrowser.cpp diff --git a/src/plugins/valgrind/callgrind/callgrindrunner.cpp b/src/plugins/valgrind/callgrind/callgrindrunner.cpp deleted file mode 100644 index 6b9b3a545f..0000000000 --- a/src/plugins/valgrind/callgrind/callgrindrunner.cpp +++ /dev/null @@ -1,123 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** 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 https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** 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. -** -****************************************************************************/ - -#include "callgrindrunner.h" -#include "callgrindparser.h" - -#include <utils/qtcassert.h> - -#include <QFile> - -namespace Valgrind { -namespace Callgrind { - -CallgrindRunner::CallgrindRunner(QObject *parent) - : ValgrindRunner(parent) - , m_controller(new CallgrindController(this)) - , m_parser(new Parser(this)) - , m_paused(false) -{ - connect(m_controller, &CallgrindController::finished, - this, &CallgrindRunner::controllerFinished); - connect(m_controller, &CallgrindController::localParseDataAvailable, - this, &CallgrindRunner::localParseDataAvailable); - connect(m_controller, &CallgrindController::statusMessage, - this, &CallgrindRunner::statusMessage); -} - -QString CallgrindRunner::tool() const -{ - return QLatin1String("callgrind"); -} - -Parser *CallgrindRunner::parser() const -{ - return m_parser; -} - -CallgrindController *CallgrindRunner::controller() const -{ - return m_controller; -} - -bool CallgrindRunner::start() -{ - ValgrindRunner::start(); - m_controller->setValgrindProcess(valgrindProcess()); - return true; -} - -void CallgrindRunner::processFinished(int ret, QProcess::ExitStatus status) -{ - triggerParse(); - m_controller->setValgrindProcess(0); - - ValgrindRunner::processFinished(ret, status); // call base class function -} - -bool CallgrindRunner::isPaused() const -{ - return m_paused; -} - -void CallgrindRunner::triggerParse() -{ - m_controller->getLocalDataFile(); -} - -void CallgrindRunner::localParseDataAvailable(const QString &file) -{ - // parse the callgrind file - QTC_ASSERT(!file.isEmpty(), return); - QFile outputFile(file); - QTC_ASSERT(outputFile.exists(), return); - if (outputFile.open(QIODevice::ReadOnly)) { - emit statusMessage(tr("Parsing Profile Data...")); - m_parser->parse(&outputFile); - } else { - qWarning() << "Could not open file for parsing:" << outputFile.fileName(); - } -} - -void CallgrindRunner::controllerFinished(CallgrindController::Option option) -{ - switch (option) - { - case CallgrindController::Pause: - m_paused = true; - break; - case CallgrindController::UnPause: - m_paused = false; - break; - case CallgrindController::Dump: - triggerParse(); - break; - default: - break; // do nothing - } -} - -} // namespace Callgrind -} // namespace Valgrind diff --git a/src/plugins/valgrind/callgrind/callgrindrunner.h b/src/plugins/valgrind/callgrind/callgrindrunner.h deleted file mode 100644 index 81c3e76da3..0000000000 --- a/src/plugins/valgrind/callgrind/callgrindrunner.h +++ /dev/null @@ -1,69 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** 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 https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** 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. -** -****************************************************************************/ - -#pragma once - -#include "../valgrindrunner.h" - -#include "callgrindcontroller.h" - -namespace Valgrind { -namespace Callgrind { - -class Parser; -class CallgrindController; - -class CallgrindRunner : public ValgrindRunner -{ - Q_OBJECT - -public: - explicit CallgrindRunner(QObject *parent = 0); - - Parser *parser() const; - - CallgrindController *controller() const; - - bool isPaused() const; - bool start(); - -signals: - void statusMessage(const QString &message); - -private: - void processFinished(int, QProcess::ExitStatus); - QString tool() const; - - void localParseDataAvailable(const QString &file); - void controllerFinished(Valgrind::Callgrind::CallgrindController::Option); - void triggerParse(); - - CallgrindController *m_controller; - Parser *m_parser; - bool m_paused; -}; - -} // namespace Callgrind -} // namespace Valgrind |