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