Warning, file /plasma/discover/libdiscover/DiscoverBackendsFactory.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002  *   SPDX-FileCopyrightText: 2012 Aleix Pol Gonzalez <aleixpol@blue-systems.com>
0003  *
0004  *   SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005  */
0006 
0007 #pragma once
0008 
0009 #include "discovercommon_export.h"
0010 #include <QList>
0011 #include <QStringList>
0012 class QCommandLineParser;
0013 class AbstractResourcesBackend;
0014 
0015 class DISCOVERCOMMON_EXPORT DiscoverBackendsFactory
0016 {
0017 public:
0018     DiscoverBackendsFactory();
0019 
0020     QVector<AbstractResourcesBackend *> backend(const QString &name) const;
0021     QVector<AbstractResourcesBackend *> allBackends() const;
0022     QStringList allBackendNames(bool whitelist = true, bool allowDummy = false) const;
0023     int backendsCount() const;
0024 
0025     static void setupCommandLine(QCommandLineParser *parser);
0026     static void processCommandLine(QCommandLineParser *parser, bool test);
0027     static void setRequestedBackends(const QStringList &backends);
0028     static bool hasRequestedBackends();
0029 
0030 private:
0031     QVector<AbstractResourcesBackend *> backendForFile(const QString &path, const QString &name) const;
0032 };