File indexing completed on 2024-04-28 16:49:41

0001 /*
0002  *  SPDX-FileCopyrightText: 2012 Alejandro Fiestas Olivares <afiestas@kde.org>
0003  *  SPDX-FileCopyrightText: 2012, 2013 Daniel Vrátil <dvratil@redhat.com>
0004  *  SPDX-FileCopyrightText: 2014 Sebastian Kügler <sebas@kde.org>
0005  *
0006  *  SPDX-License-Identifier: LGPL-2.1-or-later
0007  */
0008 
0009 #ifndef QSCREEN_BACKEND_H
0010 #define QSCREEN_BACKEND_H
0011 
0012 #include "abstractbackend.h"
0013 
0014 #include <QLoggingCategory>
0015 
0016 namespace KScreen
0017 {
0018 class QScreenConfig;
0019 
0020 class QScreenBackend : public KScreen::AbstractBackend
0021 {
0022     Q_OBJECT
0023     Q_PLUGIN_METADATA(IID "org.kf5.kscreen.backends.qscreen")
0024 
0025 public:
0026     explicit QScreenBackend();
0027     ~QScreenBackend() override;
0028 
0029     QString name() const override;
0030     QString serviceName() const override;
0031     KScreen::ConfigPtr config() const override;
0032     void setConfig(const KScreen::ConfigPtr &config) override;
0033     bool isValid() const override;
0034 
0035 private:
0036     bool m_isValid;
0037     static KScreen::QScreenConfig *s_internalConfig;
0038 };
0039 } // namespace
0040 
0041 Q_DECLARE_LOGGING_CATEGORY(KSCREEN_QSCREEN)
0042 
0043 #endif // QSCREEN_BACKEND_H