1 | /* |
2 | This file is part of the KDE Baloo Project |
3 | SPDX-FileCopyrightText: 2013 Vishesh Handa <me@vhanda.in> |
4 | |
5 | SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL |
6 | */ |
7 | |
8 | #ifndef BALOO_CORE_RESULT_ITERATOR_H |
9 | #define BALOO_CORE_RESULT_ITERATOR_H |
10 | |
11 | #include "core_export.h" |
12 | |
13 | #include <QString> |
14 | |
15 | #include <memory> |
16 | |
17 | namespace Baloo { |
18 | |
19 | class ResultList; |
20 | class ResultIteratorPrivate; |
21 | |
22 | /** |
23 | * @class ResultIterator resultiterator.h <Baloo/ResultIterator> |
24 | */ |
25 | class BALOO_CORE_EXPORT ResultIterator |
26 | { |
27 | public: |
28 | ResultIterator(ResultIterator &&rhs); |
29 | ~ResultIterator(); |
30 | |
31 | ResultIterator(const ResultIterator& rhs) = delete; |
32 | ResultIterator &operator=(const ResultIterator& rhs) = delete; |
33 | |
34 | bool next(); |
35 | QString filePath() const; |
36 | QByteArray documentId() const; |
37 | |
38 | private: |
39 | BALOO_CORE_NO_EXPORT explicit ResultIterator(ResultList&& res); |
40 | std::unique_ptr<ResultIteratorPrivate> d; |
41 | |
42 | friend class Query; |
43 | }; |
44 | |
45 | } |
46 | #endif // BALOO_CORE_RESULT_ITERATOR_H |
47 | |