File indexing completed on 2024-04-28 03:59:49
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_MODEM_H 0008 #define MODEMMANAGERQT_FAKE_MODEM_MODEM_H 0009 0010 #include "generictypes.h" 0011 0012 #include <QObject> 0013 0014 #include <QDBusObjectPath> 0015 0016 class Modem : public QObject 0017 { 0018 Q_OBJECT 0019 Q_CLASSINFO("D-Bus Interface", "org.kde.fakemodem.Modem") 0020 public: 0021 explicit Modem(QObject *parent = nullptr); 0022 ~Modem() override; 0023 0024 Q_PROPERTY(uint AccessTechnologies READ accessTechnologies) 0025 Q_PROPERTY(QList<QDBusObjectPath> Bearers READ bearers) 0026 Q_PROPERTY(ModemManager::UIntList CurrentBands READ currentBands) 0027 Q_PROPERTY(uint CurrentCapabilities READ currentCapabilities) 0028 Q_PROPERTY(ModemManager::CurrentModesType CurrentModes READ currentModes) 0029 Q_PROPERTY(QString Device READ device) 0030 Q_PROPERTY(QString DeviceIdentifier READ deviceIdentifier) 0031 Q_PROPERTY(QStringList Drivers READ drivers) 0032 Q_PROPERTY(QString EquipmentIdentifier READ equipmentIdentifier) 0033 Q_PROPERTY(QString Manufacturer READ manufacturer) 0034 Q_PROPERTY(uint MaxActiveBearers READ maxActiveBearers) 0035 Q_PROPERTY(uint MaxBearers READ maxBearers) 0036 Q_PROPERTY(QString Model READ model) 0037 Q_PROPERTY(QStringList OwnNumbers READ ownNumbers) 0038 Q_PROPERTY(QString Plugin READ plugin) 0039 Q_PROPERTY(ModemManager::PortList Ports READ ports) 0040 Q_PROPERTY(uint PowerState READ powerState) 0041 Q_PROPERTY(QString PrimaryPort READ primaryPort) 0042 Q_PROPERTY(QString Revision READ revision) 0043 Q_PROPERTY(ModemManager::SignalQualityPair SignalQuality READ signalQuality) 0044 Q_PROPERTY(QDBusObjectPath Sim READ sim) 0045 Q_PROPERTY(int State READ state) 0046 Q_PROPERTY(uint StateFailedReason READ stateFailedReason) 0047 Q_PROPERTY(ModemManager::UIntList SupportedBands READ supportedBands) 0048 Q_PROPERTY(ModemManager::UIntList SupportedCapabilities READ supportedCapabilities) 0049 Q_PROPERTY(uint SupportedIpFamilies READ supportedIpFamilies) 0050 Q_PROPERTY(ModemManager::SupportedModesType SupportedModes READ supportedModes) 0051 Q_PROPERTY(uint UnlockRequired READ unlockRequired) 0052 Q_PROPERTY(ModemManager::UnlockRetriesMap UnlockRetries READ unlockRetries) 0053 0054 uint accessTechnologies() const; 0055 QList<QDBusObjectPath> bearers() const; 0056 ModemManager::UIntList currentBands() const; 0057 uint currentCapabilities() const; 0058 ModemManager::CurrentModesType currentModes() const; 0059 QString device() const; 0060 QString deviceIdentifier() const; 0061 QStringList drivers() const; 0062 QString equipmentIdentifier() const; 0063 QString manufacturer() const; 0064 uint maxActiveBearers() const; 0065 uint maxBearers() const; 0066 QString model() const; 0067 QStringList ownNumbers() const; 0068 QString plugin() const; 0069 ModemManager::PortList ports() const; 0070 uint powerState() const; 0071 QString primaryPort() const; 0072 QString revision() const; 0073 ModemManager::SignalQualityPair signalQuality() const; 0074 QDBusObjectPath sim() const; 0075 int state() const; 0076 uint stateFailedReason() const; 0077 ModemManager::UIntList supportedBands() const; 0078 ModemManager::UIntList supportedCapabilities() const; 0079 uint supportedIpFamilies() const; 0080 ModemManager::SupportedModesType supportedModes() const; 0081 uint unlockRequired() const; 0082 ModemManager::UnlockRetriesMap unlockRetries() const; 0083 0084 /* Not part of DBus interface */ 0085 void addBearer(const QDBusObjectPath &bearer); 0086 void removeBearer(const QDBusObjectPath &bearer); 0087 QString modemPath() const; 0088 void setEnableNotifications(bool enable); 0089 void setAccessTechnologies(uint technologies); 0090 void setDevice(const QString &device); 0091 void setDeviceIdentifier(const QString &deviceIdentifier); 0092 void setDrivers(const QStringList &drivers); 0093 void setEquipmentIdentifier(const QString &identifier); 0094 void setManufacturer(const QString &manufacturer); 0095 void setMaxActiveBearers(uint bearers); 0096 void setMaxBearers(uint bearers); 0097 void setModemPath(const QString &path); 0098 void setModel(const QString &model); 0099 void setOwnNumbers(const QStringList &numbers); 0100 void setPlugin(const QString &plugin); 0101 void setPorts(const ModemManager::PortList &ports); 0102 void setPrimaryPort(const QString &port); 0103 void setRevision(const QString &revision); 0104 void setSignalQuality(const ModemManager::SignalQualityPair &signalQuality); 0105 void setSim(const QDBusObjectPath &sim); 0106 void setState(int state); 0107 void setStateFailedReason(uint reason); 0108 void setSupportedBands(const ModemManager::UIntList &bands); 0109 void setSupportedCapabilities(const ModemManager::UIntList &capabilities); 0110 void setSupportedIpFamilies(uint families); 0111 void setSupportedModes(const ModemManager::SupportedModesType &modes); 0112 void setUnlockRequired(uint unlockRequired); 0113 void setUnlockRetries(const ModemManager::UnlockRetriesMap &unlockRetries); 0114 0115 QVariantMap toMap() const; 0116 0117 public Q_SLOTS: 0118 Q_SCRIPTABLE QString Command(const QString &cmd, uint timeout); 0119 Q_SCRIPTABLE QDBusObjectPath CreateBearer(const QVariantMap &properties); 0120 Q_SCRIPTABLE void DeleteBearer(const QDBusObjectPath &bearer); 0121 Q_SCRIPTABLE void Enable(bool enable); 0122 Q_SCRIPTABLE void FactoryReset(const QString &code); 0123 Q_SCRIPTABLE QList<QDBusObjectPath> ListBearers(); 0124 Q_SCRIPTABLE void Reset(); 0125 Q_SCRIPTABLE void SetCurrentBands(const QList<uint> &bands); 0126 Q_SCRIPTABLE void SetCurrentCapabilities(uint capabilities); 0127 Q_SCRIPTABLE void SetCurrentModes(ModemManager::CurrentModesType modes); 0128 Q_SCRIPTABLE void SetPowerState(uint state); 0129 0130 Q_SIGNALS: 0131 Q_SCRIPTABLE void StateChanged(int oldState, int newState, uint reason); 0132 0133 private: 0134 uint m_accessTechnologies; 0135 QList<QDBusObjectPath> m_bearers; 0136 ModemManager::UIntList m_currentBands; 0137 uint m_currentCapabilities; 0138 ModemManager::CurrentModesType m_currentModes; 0139 QString m_device; 0140 QString m_deviceIdentifier; 0141 QStringList m_drivers; 0142 bool m_enabledNotifications; 0143 QString m_equipmentIdentifier; 0144 QString m_manufacturer; 0145 uint m_maxActiveBearers; 0146 uint m_maxBearers; 0147 QString m_path; 0148 QString m_model; 0149 QStringList m_ownNumbers; 0150 QString m_plugin; 0151 ModemManager::PortList m_ports; 0152 uint m_powerState; 0153 QString m_primaryPort; 0154 QString m_revision; 0155 ModemManager::SignalQualityPair m_signalQuality; 0156 QDBusObjectPath m_sim; 0157 int m_state; 0158 uint m_stateFailedReason; 0159 ModemManager::UIntList m_supportedBands; 0160 ModemManager::UIntList m_supportedCapabilities; 0161 uint m_supportedIpFamilies; 0162 ModemManager::SupportedModesType m_supportedModes; 0163 uint m_unlockRequired; 0164 ModemManager::UnlockRetriesMap m_unlockRetries; 0165 }; 0166 0167 #endif