File indexing completed on 2024-05-19 11:47:22

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_3GPP_H
0008 #define MODEMMANAGERQT_FAKE_MODEM_MODEM_3GPP_H
0009 
0010 #include "generictypes.h"
0011 
0012 #include <QObject>
0013 
0014 #include <QDBusObjectPath>
0015 
0016 class Modem3gpp : public QDBusAbstractAdaptor
0017 {
0018     Q_OBJECT
0019     Q_CLASSINFO("D-Bus Interface", "org.kde.fakemodem.Modem.Modem3gpp")
0020 public:
0021     explicit Modem3gpp(QObject *parent = nullptr);
0022     ~Modem3gpp() override;
0023 
0024     Q_PROPERTY(uint EnabledFacilityLocks READ enabledFacilityLocks)
0025     Q_PROPERTY(QString Imei READ imei)
0026     Q_PROPERTY(QString OperatorCode READ operatorCode)
0027     Q_PROPERTY(QString OperatorName READ operatorName)
0028     Q_PROPERTY(uint RegistrationState READ registrationState)
0029     Q_PROPERTY(uint SubscriptionState READ subscriptionState)
0030 
0031     uint enabledFacilityLocks() const;
0032     QString imei() const;
0033     QString operatorCode() const;
0034     QString operatorName() const;
0035     uint registrationState() const;
0036     uint subscriptionState() const;
0037 
0038     /* Not part of dbus interface */
0039     void setModemPath(const QString &path);
0040     void setEnableNotifications(bool enable);
0041     void setEnabledFacilityLocks(uint enabledFacilitiesLocks);
0042     void setImei(const QString &imei);
0043     void setOperatorCode(const QString &operatorCode);
0044     void setOperatorName(const QString &operatorName);
0045     void setRegistrationState(uint registrationState);
0046     void setSubscriptionState(uint subscriptionState);
0047 
0048     QVariantMap toMap() const;
0049 
0050 public Q_SLOTS:
0051     Q_SCRIPTABLE void Register(const QString &operator_id);
0052     Q_SCRIPTABLE ModemManager::QVariantMapList Scan();
0053 
0054 private:
0055     QString m_modemPath;
0056     bool m_enabledNotifications;
0057     uint m_enabledFacilityLocks;
0058     QString m_imei;
0059     QString m_operatorCode;
0060     QString m_operatorName;
0061     uint m_registrationState;
0062     uint m_subscriptionState;
0063 };
0064 
0065 #endif