aboutsummaryrefslogtreecommitdiffstats
path: root/src/tools/clangpchmanagerbackend/source/projectpartsmanager.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/clangpchmanagerbackend/source/projectpartsmanager.h')
-rw-r--r--src/tools/clangpchmanagerbackend/source/projectpartsmanager.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/tools/clangpchmanagerbackend/source/projectpartsmanager.h b/src/tools/clangpchmanagerbackend/source/projectpartsmanager.h
index 2b3c43ebc8..6583db25c6 100644
--- a/src/tools/clangpchmanagerbackend/source/projectpartsmanager.h
+++ b/src/tools/clangpchmanagerbackend/source/projectpartsmanager.h
@@ -28,6 +28,7 @@
#include "clangpchmanagerbackend_global.h"
#include <projectpartsmanagerinterface.h>
+#include <projectpartsstorageinterface.h>
#include <utils/smallstringvector.h>
@@ -37,18 +38,24 @@ inline namespace Pch {
class ProjectPartsManager final : public ProjectPartsManagerInterface
{
public:
+ ProjectPartsManager(ProjectPartsStorageInterface &projectPartsStorage)
+ : m_projectPartsStorage(projectPartsStorage)
+ {}
+
ProjectPartContainers update(ProjectPartContainers &&projectsParts) override;
- void remove(const Utils::SmallStringVector &projectPartIds) override;
- ProjectPartContainers projects(const Utils::SmallStringVector &projectPartIds) const override;
+ void remove(const ProjectPartIds &projectPartIds) override;
+ ProjectPartContainers projects(const ProjectPartIds &projectPartIds) const override;
void updateDeferred(const ProjectPartContainers &projectsParts) override;
ProjectPartContainers deferredUpdates() override;
- ProjectPartContainers newProjectParts(ProjectPartContainers &&projectsParts) const;
+ static ProjectPartContainers filterNewProjectParts(ProjectPartContainers &&newProjectsParts,
+ const ProjectPartContainers &oldProjectParts);
void mergeProjectParts(const ProjectPartContainers &projectsParts);
const ProjectPartContainers &projectParts() const;
private:
ProjectPartContainers m_projectParts;
+ ProjectPartsStorageInterface &m_projectPartsStorage;
};
} // namespace Pch