File indexing completed on 2024-05-12 15:51:17

0001 // SPDX-FileCopyrightText: 2015 Dan Leinir Turthra Jensen <admin@leinir.dk>
0002 // SPDX-FileCopyrightText: 2022 Carl Schwan <carl@carlschwan.eu>
0003 // SPDX-License-Identifier: LGPL-2.1-only or LGPL-3.0-only or LicenseRef-KDE-Accepted-LGPL
0004 
0005 #pragma once
0006 
0007 #include <QRunnable>
0008 
0009 #include "contentlisterbase.h"
0010 #include <memory>
0011 
0012 class FilesystemContentLister : public ContentListerBase
0013 {
0014     Q_OBJECT
0015 public:
0016     explicit FilesystemContentLister(QObject *parent = nullptr);
0017     ~FilesystemContentLister() override;
0018     /**
0019      * \brief Start a search.
0020      * @param queries  List of ContentQueries that the search should be limited to.
0021      */
0022     void startSearch(const QList<ContentQuery *> &queries) override;
0023 
0024 private:
0025     void queryFinished(QRunnable *runnable);
0026 
0027     class Private;
0028     std::unique_ptr<Private> d;
0029 };