File indexing completed on 2024-04-28 03:59:48
0001 /* 0002 SPDX-FileCopyrightText: 2015 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 MODEMMANAGERQT_FAKE_MODEM_H 0008 #define MODEMMANAGERQT_FAKE_MODEM_H 0009 0010 #include "bearer.h" 0011 #include "modem.h" 0012 #include "objectmanager.h" 0013 0014 #include <QDBusObjectPath> 0015 #include <QObject> 0016 0017 class FakeModem : public QObject 0018 { 0019 Q_OBJECT 0020 Q_CLASSINFO("D-Bus Interface", "org.kde.fakemodem") 0021 public: 0022 explicit FakeModem(QObject *parent = nullptr); 0023 ~FakeModem() override; 0024 0025 /* Not part of DBus interface */ 0026 void addModem(Modem *modem); 0027 void removeModem(Modem *modem); 0028 void addBearer(Bearer *bearer); 0029 void removeBearer(Bearer *bearer); 0030 void addInterfaces(const QDBusObjectPath &object_path, const ModemManager::MMVariantMapMap &interfaces_and_properties); 0031 void removeInterfaces(const QDBusObjectPath &object_path, const QStringList &interfaces); 0032 0033 public Q_SLOTS: 0034 Q_SCRIPTABLE void ScanDevices(); 0035 Q_SCRIPTABLE void SetLogging(const QString &level); 0036 0037 private: 0038 /* Not part of DBus interface */ 0039 int m_bearerCounter; 0040 int m_modemCounter; 0041 QMap<QDBusObjectPath, Bearer *> m_bearers; 0042 QMap<QDBusObjectPath, Modem *> m_modems; 0043 ObjectManager *m_objectManager; 0044 }; 0045 0046 #endif