aboutsummaryrefslogtreecommitdiffstats
path: root/src/tools/clangpchmanagerbackend/source/pchtaskqueue.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/clangpchmanagerbackend/source/pchtaskqueue.h')
-rw-r--r--src/tools/clangpchmanagerbackend/source/pchtaskqueue.h19
1 files changed, 15 insertions, 4 deletions
diff --git a/src/tools/clangpchmanagerbackend/source/pchtaskqueue.h b/src/tools/clangpchmanagerbackend/source/pchtaskqueue.h
index 80d96b8e85..a7a455b357 100644
--- a/src/tools/clangpchmanagerbackend/source/pchtaskqueue.h
+++ b/src/tools/clangpchmanagerbackend/source/pchtaskqueue.h
@@ -37,6 +37,8 @@ class PchCreatorInterface;
class PrecompiledHeaderStorageInterface;
class ProgressCounter;
class Environment;
+class FileSystemInterface;
+class FilePathCachingInterface;
class PchTaskQueue final : public PchTaskQueueInterface
{
@@ -48,14 +50,20 @@ public:
ProgressCounter &progressCounter,
PrecompiledHeaderStorageInterface &precompiledHeaderStorage,
Sqlite::TransactionInterface &transactionsInterface,
- const Environment &environment)
+ const Environment &environment,
+ FileSystemInterface &fileSystem,
+ FilePathCachingInterface &filePathCache)
: m_systemPchTaskScheduler(systemPchTaskScheduler)
, m_projectPchTaskScheduler(projectPchTaskScheduler)
, m_precompiledHeaderStorage(precompiledHeaderStorage)
, m_transactionsInterface(transactionsInterface)
, m_progressCounter(progressCounter)
, m_environment(environment)
- {}
+ , m_fileSystem(fileSystem)
+ , m_filePathCache(filePathCache)
+ {
+ Q_UNUSED(m_transactionsInterface)
+ }
void addSystemPchTasks(PchTasks &&pchTasks) override;
void addProjectPchTasks(PchTasks &&pchTasks) override;
@@ -72,8 +80,9 @@ public:
private:
void addPchTasks(PchTasks &&pchTasks, PchTasks &destination);
void removePchTasksByProjectPartId(const ProjectPartIds &projectsPartIds, PchTasks &destination);
- void processProjectPchTasks();
- void processSystemPchTasks();
+ int processProjectPchTasks();
+ int processSystemPchTasks();
+ void deleteUnusedPchs();
private:
PchTasks m_systemPchTasks;
@@ -84,6 +93,8 @@ private:
Sqlite::TransactionInterface &m_transactionsInterface;
ProgressCounter &m_progressCounter;
const Environment &m_environment;
+ FileSystemInterface &m_fileSystem;
+ FilePathCachingInterface &m_filePathCache;
};
} // namespace ClangBackEnd