1
/***************************************************************************
2
* Copyright (C) 2008 by Kevin Ottens <ervin@kde.org> *
3
* Copyright (C) 2008-2010 by Dario Freddi <drf@kde.org> *
5
* This program is free software; you can redistribute it and/or modify *
6
* it under the terms of the GNU General Public License as published by *
7
* the Free Software Foundation; either version 2 of the License, or *
8
* (at your option) any later version. *
10
* This program is distributed in the hope that it will be useful, *
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13
* GNU General Public License for more details. *
15
* You should have received a copy of the GNU General Public License *
16
* along with this program; if not, write to the *
17
* Free Software Foundation, Inc., *
18
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
19
***************************************************************************/
21
#ifndef POWERDEVILFDOCONNECTOR_H
22
#define POWERDEVILFDOCONNECTOR_H
24
#include <QtCore/QObject>
26
#include "powerdevilbackendinterface.h"
27
#include "powerdevilpolicyagent.h"
29
namespace PowerDevil {
32
class FdoConnector : public QObject, protected QDBusContext
35
Q_DISABLE_COPY(FdoConnector)
37
Q_CLASSINFO("D-Bus Interface", "org.freedesktop.PowerManagement")
38
Q_CLASSINFO("D-Bus Interface", "org.freedesktop.PowerManagement.Inhibit")
41
FdoConnector(PowerDevil::Core *parent);
46
bool GetPowerSaveStatus();
53
int Inhibit(const QString &application, const QString &reason);
54
void UnInhibit(int cookie);
55
void ForceUnInhibitAll();
58
void CanSuspendChanged(bool canSuspend);
59
void CanHibernateChanged(bool canHibernate);
60
void PowerSaveStatusChanged(bool savePower);
62
void HasInhibitChanged(bool hasInhibit);
65
void onAcAdapterStateChanged(PowerDevil::BackendInterface::AcAdapterState);
66
void onUnavailablePoliciesChanged(PowerDevil::PolicyAgent::RequiredPolicies);
69
PowerDevil::Core *m_core;
74
#endif /*POWERDEVILFDOCONNECTOR_H*/