File indexing completed on 2024-04-21 16:20:06

0001 /*
0002     SPDX-FileCopyrightText: 2014 Jan Grulich <jgrulich@redhat.com>
0003 
0004     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0005 */
0006 
0007 #ifndef PLASMA_NM_MONITOR_H
0008 #define PLASMA_NM_MONITOR_H
0009 
0010 #include <QDBusPendingCallWatcher>
0011 #include <QObject>
0012 
0013 #include "bluetoothmonitor.h"
0014 #include "modemmonitor.h"
0015 
0016 class Q_DECL_EXPORT Monitor : public QObject
0017 {
0018     Q_OBJECT
0019     Q_CLASSINFO("D-Bus Interface", "org.kde.plasmanetworkmanagement")
0020 public:
0021     explicit Monitor(QObject *parent);
0022     ~Monitor() override;
0023 
0024 public Q_SLOTS:
0025     Q_SCRIPTABLE bool bluetoothConnectionExists(const QString &bdAddr, const QString &service);
0026     Q_SCRIPTABLE void addBluetoothConnection(const QString &bdAddr, const QString &service, const QString &connectionName);
0027     Q_SCRIPTABLE void unlockModem(const QString &modem);
0028 
0029 private:
0030     BluetoothMonitor *const m_bluetoothMonitor;
0031     ModemMonitor *m_modemMonitor = nullptr;
0032 };
0033 
0034 #endif // PLASMA_NM_MONITOR_H