diff options
author | Jarek Kobus <jaroslaw.kobus@qt.io> | 2023-01-11 23:48:53 +0100 |
---|---|---|
committer | Jarek Kobus <jaroslaw.kobus@qt.io> | 2023-01-12 10:11:44 +0000 |
commit | e7781e2a99bce1981ab4efab97e5df14b142238c (patch) | |
tree | 6d6f6e917c5522714e6b21e6a984d9fe374a0d6f /src/plugins/clangtools/clangtoolruncontrol.h | |
parent | 1dad90ea451b763f8cf90ceb1d355206252c7255 (diff) |
ClangTools: Reuse TaskTree
Reuse it in ClangToolRunControl and DocumentClangToolRunner.
Get rid of ClangToolRunner and provide clangToolTask() method
instead.
Change-Id: I677940b325850849c5f5a60f2d320c031a4f0da0
Reviewed-by: David Schulz <david.schulz@qt.io>
Diffstat (limited to 'src/plugins/clangtools/clangtoolruncontrol.h')
-rw-r--r-- | src/plugins/clangtools/clangtoolruncontrol.h | 24 |
1 files changed, 4 insertions, 20 deletions
diff --git a/src/plugins/clangtools/clangtoolruncontrol.h b/src/plugins/clangtools/clangtoolruncontrol.h index 08ba180602..63ffdf99c0 100644 --- a/src/plugins/clangtools/clangtoolruncontrol.h +++ b/src/plugins/clangtools/clangtoolruncontrol.h @@ -13,21 +13,17 @@ #include <utils/temporarydirectory.h> #include <QElapsedTimer> -#include <QFutureInterface> #include <QSet> -#include <QStringList> + +namespace Utils { class TaskTree; } namespace ClangTools { namespace Internal { class AnalyzeOutputData; -class AnalyzeUnit; class ClangTool; -class ClangToolRunner; class ProjectBuilder; -using RunnerCreator = std::function<ClangToolRunner*()>; - class ClangToolRunWorker : public ProjectExplorer::RunWorker { Q_OBJECT @@ -39,6 +35,7 @@ public: const CppEditor::ClangDiagnosticConfig &diagnosticConfig, const FileInfos &fileInfos, bool buildBeforeAnalysis); + ~ClangToolRunWorker(); int filesAnalyzed() const { return m_filesAnalyzed.size(); } int filesNotAnalyzed() const { return m_filesNotAnalyzed.size(); } @@ -53,16 +50,6 @@ private: void start() final; void stop() final; void onDone(const AnalyzeOutputData &output); - - QList<RunnerCreator> runnerCreators(const AnalyzeUnit &unit); - ClangToolRunner *createRunner(CppEditor::ClangToolType tool, const AnalyzeUnit &unit); - - void analyzeNextFile(); - void handleFinished(ClangToolRunner *runner); - - void onProgressCanceled(); - void updateProgressValue(); - void finalize(); private: @@ -80,11 +67,8 @@ private: QString m_targetTriple; Utils::Id m_toolChainType; - QFutureInterface<void> m_progress; - QList<RunnerCreator> m_runnerCreators; + std::unique_ptr<Utils::TaskTree> m_taskTree; QSet<Utils::FilePath> m_projectFiles; - QSet<ClangToolRunner *> m_runners; - int m_initialQueueSize = 0; QSet<QString> m_filesAnalyzed; QSet<QString> m_filesNotAnalyzed; |