Akonadi Search

indexeditems.h
1 /*
2  * This file is part of the KDE Akonadi Search Project
3  * SPDX-FileCopyrightText: 2016-2023 Laurent Montel <[email protected]>
4  *
5  * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
6  *
7  */
8 #pragma once
9 
10 #include "search_pim_export.h"
11 #include <Akonadi/Item>
12 #include <QObject>
13 
14 #include <memory>
15 
16 namespace Akonadi
17 {
18 namespace Search
19 {
20 namespace PIM
21 {
22 class IndexedItemsPrivate;
23 
24 /** Indexed items. */
25 class AKONADI_SEARCH_PIM_EXPORT IndexedItems : public QObject
26 {
27  Q_OBJECT
28 public:
29  explicit IndexedItems(QObject *parent = nullptr);
30  ~IndexedItems() override;
31 
32  void setOverrideDbPrefixPath(const QString &path);
33 
34  [[nodiscard]] qlonglong indexedItems(const qlonglong id);
35 
36  void findIndexedInDatabase(QSet<Akonadi::Item::Id> &indexed, Akonadi::Collection::Id collectionId, const QString &dbPath);
37  void findIndexed(QSet<Akonadi::Item::Id> &indexed, Akonadi::Collection::Id collectionId);
38 
39  [[nodiscard]] QString emailIndexingPath() const;
40  [[nodiscard]] QString collectionIndexingPath() const;
41  [[nodiscard]] QString calendarIndexingPath() const;
42  [[nodiscard]] QString akonotesIndexingPath() const;
43  [[nodiscard]] QString emailContactsIndexingPath() const;
44  [[nodiscard]] QString contactIndexingPath() const;
45 
46 private:
47  std::unique_ptr<IndexedItemsPrivate> const d;
48 };
49 }
50 }
51 }
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Dec 11 2023 04:06:30 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.