/* * Copyright 2020 Han Young * * SPDX-License-Identifier: GPL-2.0-or-later */ #pragma once #include "abstractwakeupprovider.h" #include #include class PowerDevilWakeupProvider : public AbstractWakeupProvider { Q_OBJECT public: explicit PowerDevilWakeupProvider(QObject *parent = nullptr); int scheduleWakeup(quint64 timestamp) override; void clearWakeup(int cookie) override; public Q_SLOTS: Q_SCRIPTABLE void wakeupCallback(int cookie); private: QDBusInterface *m_interface = nullptr; QList m_powerDevilCookies; // token for PowerDevil: https://invent.kde.org/plasma/powerdevil/-/merge_requests/13 };