diff options
| author | Jarek Kobus <jaroslaw.kobus@qt.io> | 2023-05-10 19:54:52 +0200 |
|---|---|---|
| committer | Jarek Kobus <jaroslaw.kobus@qt.io> | 2023-05-12 08:09:19 +0000 |
| commit | 97a66067bb8c85cede9c51c64a271a16f3abd7e8 (patch) | |
| tree | f84851af65a9c54dd4339c8fe64ee39b4474f2cf /src/libs | |
| parent | 5a73d07c72db6be79046ecd619871eeaa73d2973 (diff) | |
| download | qt-creator-97a66067bb8c85cede9c51c64a271a16f3abd7e8.tar.gz | |
TaskTree: Prepare for de-utils-ization - part 2
Move TaskTree into Tasking namespace.
Move Tasking namespace out of Utils namespace.
Change-Id: Ib4c1d7f54f1808517e54768dfa27209c33517b61
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'src/libs')
| -rw-r--r-- | src/libs/utils/async.cpp | 2 | ||||
| -rw-r--r-- | src/libs/utils/async.h | 2 | ||||
| -rw-r--r-- | src/libs/utils/barrier.cpp | 4 | ||||
| -rw-r--r-- | src/libs/utils/barrier.h | 10 | ||||
| -rw-r--r-- | src/libs/utils/filestreamer.cpp | 4 | ||||
| -rw-r--r-- | src/libs/utils/filestreamer.h | 2 | ||||
| -rw-r--r-- | src/libs/utils/tasktree.cpp | 26 | ||||
| -rw-r--r-- | src/libs/utils/tasktree.h | 30 |
8 files changed, 33 insertions, 47 deletions
diff --git a/src/libs/utils/async.cpp b/src/libs/utils/async.cpp index 9295b50dc1..33487db73b 100644 --- a/src/libs/utils/async.cpp +++ b/src/libs/utils/async.cpp @@ -3,8 +3,6 @@ #include "async.h" -#include <QCoreApplication> - namespace Utils { static int s_maxThreadCount = INT_MAX; diff --git a/src/libs/utils/async.h b/src/libs/utils/async.h index 07b3848749..59d91ba0ad 100644 --- a/src/libs/utils/async.h +++ b/src/libs/utils/async.h @@ -211,4 +211,4 @@ public: } // namespace Utils -QTC_DECLARE_CUSTOM_TEMPLATE_TASK(AsyncTask, AsyncTaskAdapter); +QTC_DECLARE_CUSTOM_TEMPLATE_TASK(AsyncTask, Utils::AsyncTaskAdapter); diff --git a/src/libs/utils/barrier.cpp b/src/libs/utils/barrier.cpp index 76cc351088..690391cb0f 100644 --- a/src/libs/utils/barrier.cpp +++ b/src/libs/utils/barrier.cpp @@ -5,7 +5,7 @@ #include "qtcassert.h" -namespace Utils { +namespace Tasking { void Barrier::setLimit(int value) { @@ -44,4 +44,4 @@ void Barrier::stopWithResult(bool success) emit done(success); } -} // namespace Utils +} // namespace Tasking diff --git a/src/libs/utils/barrier.h b/src/libs/utils/barrier.h index 2af08dfdd1..9e5f8d5037 100644 --- a/src/libs/utils/barrier.h +++ b/src/libs/utils/barrier.h @@ -7,7 +7,7 @@ #include "tasktree.h" -namespace Utils { +namespace Tasking { class QTCREATOR_UTILS_EXPORT Barrier final : public QObject { @@ -41,11 +41,11 @@ public: void start() final { task()->start(); } }; -} // namespace Utils +} // namespace Tasking -QTC_DECLARE_CUSTOM_TASK(BarrierTask, Utils::BarrierTaskAdapter); +QTC_DECLARE_CUSTOM_TASK(BarrierTask, Tasking::BarrierTaskAdapter); -namespace Utils::Tasking { +namespace Tasking { template <int Limit = 1> class SharedBarrier @@ -94,4 +94,4 @@ public: }) {} }; -} // namespace Utils::Tasking +} // namespace Tasking diff --git a/src/libs/utils/filestreamer.cpp b/src/libs/utils/filestreamer.cpp index a42e632000..67a8a6cd92 100644 --- a/src/libs/utils/filestreamer.cpp +++ b/src/libs/utils/filestreamer.cpp @@ -284,14 +284,14 @@ private: WriteBuffer *m_writeBuffer = nullptr; }; -class FileStreamReaderAdapter : public Utils::Tasking::TaskAdapter<FileStreamReader> +class FileStreamReaderAdapter : public TaskAdapter<FileStreamReader> { public: FileStreamReaderAdapter() { connect(task(), &FileStreamBase::done, this, &TaskInterface::done); } void start() override { task()->start(); } }; -class FileStreamWriterAdapter : public Utils::Tasking::TaskAdapter<FileStreamWriter> +class FileStreamWriterAdapter : public TaskAdapter<FileStreamWriter> { public: FileStreamWriterAdapter() { connect(task(), &FileStreamBase::done, this, &TaskInterface::done); } diff --git a/src/libs/utils/filestreamer.h b/src/libs/utils/filestreamer.h index 7d274b9444..3bbca65b8f 100644 --- a/src/libs/utils/filestreamer.h +++ b/src/libs/utils/filestreamer.h @@ -49,7 +49,7 @@ private: class FileStreamerPrivate *d = nullptr; }; -class FileStreamerTaskAdapter : public Utils::Tasking::TaskAdapter<FileStreamer> +class FileStreamerTaskAdapter : public Tasking::TaskAdapter<FileStreamer> { public: FileStreamerTaskAdapter() { connect(task(), &FileStreamer::done, this, diff --git a/src/libs/utils/tasktree.cpp b/src/libs/utils/tasktree.cpp index 3e88b0e8a1..2c88546e6c 100644 --- a/src/libs/utils/tasktree.cpp +++ b/src/libs/utils/tasktree.cpp @@ -7,6 +7,8 @@ #include <QSet> +namespace Tasking { + class Guard { Q_DISABLE_COPY(Guard) @@ -29,9 +31,6 @@ private: Guard &m_guard; }; -namespace Utils { -namespace Tasking { - static TaskAction toTaskAction(bool success) { return success ? TaskAction::StopWithDone : TaskAction::StopWithError; @@ -191,10 +190,6 @@ void TaskItem::setTaskErrorHandler(const TaskEndHandler &handler) m_taskHandler.m_errorHandler = handler; } -} // namespace Tasking - -using namespace Tasking; - class TaskTreePrivate; class TaskNode; @@ -686,8 +681,8 @@ void TaskNode::invokeEndHandler(bool success) } /*! - \class Utils::TaskTree - \inheaderfile utils/tasktree.h + \class TaskTree + \inheaderfile solutions/tasking/tasktree.h \inmodule QtCreator \ingroup mainclasses \brief The TaskTree class runs an async task tree structure defined in a @@ -706,7 +701,6 @@ void TaskNode::invokeEndHandler(bool success) or AsyncTask<ReturnType>: \code - using namespace Utils; using namespace Tasking; const Group root { @@ -1285,7 +1279,7 @@ void TaskNode::invokeEndHandler(bool success) recipe described by the Group root element. As TaskTree is also an asynchronous task, it can be a part of another TaskTree. - To place a nested TaskTree inside another TaskTree, insert the Tasking::TaskTreeTask + To place a nested TaskTree inside another TaskTree, insert the TaskTreeTask element into other tree's Group element. TaskTree reports progress of completed tasks when running. The progress value @@ -1344,7 +1338,7 @@ void TaskNode::invokeEndHandler(bool success) asynchronous task: \code - class TimeoutAdapter : public Utils::Tasking::TaskAdapter<QTimer> + class TimeoutAdapter : public Tasking::TaskAdapter<QTimer> { public: TimeoutAdapter() { @@ -1372,7 +1366,7 @@ void TaskNode::invokeEndHandler(bool success) To make QTimer accessible inside TaskTree under the \e Timeout name, register it with QTC_DECLARE_CUSTOM_TASK(Timeout, TimeoutAdapter). Timeout - becomes a new task type inside Utils::Tasking namespace, using TimeoutAdapter. + becomes a new task type inside Tasking namespace, using TimeoutAdapter. The new task type is now registered, and you can use it in TaskTree: @@ -1416,7 +1410,7 @@ TaskTree::~TaskTree() delete d; } -void TaskTree::setupRoot(const Tasking::Group &root) +void TaskTree::setupRoot(const Group &root) { QTC_ASSERT(!isRunning(), qWarning("The TaskTree is already running, ignoring..."); return); QTC_ASSERT(!d->m_guard.isLocked(), qWarning("The setupRoot() is called from one of the" @@ -1455,7 +1449,7 @@ int TaskTree::progressValue() const return d->m_progressValue; } -void TaskTree::setupStorageHandler(const Tasking::TreeStorageBase &storage, +void TaskTree::setupStorageHandler(const TreeStorageBase &storage, StorageVoidHandler setupHandler, StorageVoidHandler doneHandler) { @@ -1487,4 +1481,4 @@ void TaskTreeTaskAdapter::start() task()->start(); } -} // namespace Utils +} // namespace Tasking diff --git a/src/libs/utils/tasktree.h b/src/libs/utils/tasktree.h index 46333c3dc8..b37749f9a4 100644 --- a/src/libs/utils/tasktree.h +++ b/src/libs/utils/tasktree.h @@ -9,15 +9,13 @@ #include <QObject> #include <QSharedPointer> -namespace Utils { +namespace Tasking { class ExecutionContextActivator; class TaskContainer; class TaskNode; class TaskTreePrivate; -namespace Tasking { - class QTCREATOR_UTILS_EXPORT TaskInterface : public QObject { Q_OBJECT @@ -354,8 +352,6 @@ private: }; }; -} // namespace Tasking - class TaskTreePrivate; class QTCREATOR_UTILS_EXPORT TaskTree final : public QObject @@ -364,10 +360,10 @@ class QTCREATOR_UTILS_EXPORT TaskTree final : public QObject public: TaskTree(); - TaskTree(const Tasking::Group &root); + TaskTree(const Group &root); ~TaskTree(); - void setupRoot(const Tasking::Group &root); + void setupRoot(const Group &root); void start(); void stop(); @@ -378,14 +374,12 @@ public: int progressValue() const; // all finished / skipped / stopped tasks, groups itself excluded template <typename StorageStruct, typename StorageHandler> - void onStorageSetup(const Tasking::TreeStorage<StorageStruct> &storage, - StorageHandler &&handler) { + void onStorageSetup(const TreeStorage<StorageStruct> &storage, StorageHandler &&handler) { setupStorageHandler(storage, wrapHandler<StorageStruct>(std::forward<StorageHandler>(handler)), {}); } template <typename StorageStruct, typename StorageHandler> - void onStorageDone(const Tasking::TreeStorage<StorageStruct> &storage, - StorageHandler &&handler) { + void onStorageDone(const TreeStorage<StorageStruct> &storage, StorageHandler &&handler) { setupStorageHandler(storage, {}, wrapHandler<StorageStruct>(std::forward<StorageHandler>(handler))); } @@ -398,7 +392,7 @@ signals: private: using StorageVoidHandler = std::function<void(void *)>; - void setupStorageHandler(const Tasking::TreeStorageBase &storage, + void setupStorageHandler(const TreeStorageBase &storage, StorageVoidHandler setupHandler, StorageVoidHandler doneHandler); template <typename StorageStruct, typename StorageHandler> @@ -413,22 +407,22 @@ private: TaskTreePrivate *d; }; -class QTCREATOR_UTILS_EXPORT TaskTreeTaskAdapter : public Tasking::TaskAdapter<TaskTree> +class QTCREATOR_UTILS_EXPORT TaskTreeTaskAdapter : public TaskAdapter<TaskTree> { public: TaskTreeTaskAdapter(); void start() final; }; -} // namespace Utils +} // namespace Tasking #define QTC_DECLARE_CUSTOM_TASK(CustomTaskName, TaskAdapterClass)\ -namespace Utils::Tasking { using CustomTaskName = CustomTask<TaskAdapterClass>; } +namespace Tasking { using CustomTaskName = CustomTask<TaskAdapterClass>; } #define QTC_DECLARE_CUSTOM_TEMPLATE_TASK(CustomTaskName, TaskAdapterClass)\ -namespace Utils::Tasking {\ +namespace Tasking {\ template <typename ...Args>\ using CustomTaskName = CustomTask<TaskAdapterClass<Args...>>;\ -} // namespace Utils::Tasking +} // namespace Tasking -QTC_DECLARE_CUSTOM_TASK(TaskTreeTask, Utils::TaskTreeTaskAdapter); +QTC_DECLARE_CUSTOM_TASK(TaskTreeTask, TaskTreeTaskAdapter); |
