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_OMA_H 0008 #define MODEMMANAGERQT_FAKE_MODEM_MODEM_OMA_H 0009 0010 #include "generictypes.h" 0011 0012 #include <QDBusAbstractAdaptor> 0013 0014 class ModemOma : public QDBusAbstractAdaptor 0015 { 0016 Q_OBJECT 0017 Q_CLASSINFO("D-Bus Interface", "org.kde.fakemodem.Modem.Oma") 0018 public: 0019 explicit ModemOma(QObject *parent = nullptr); 0020 ~ModemOma() override; 0021 0022 Q_PROPERTY(uint Features READ features) 0023 Q_PROPERTY(ModemManager::OmaSessionTypes PendingNetworkInitiatedSessions READ pendingNetworkInitiatedSessions) 0024 Q_PROPERTY(int SessionState READ sessionState) 0025 Q_PROPERTY(uint SessionType READ sessionType) 0026 0027 uint features() const; 0028 ModemManager::OmaSessionTypes pendingNetworkInitiatedSessions() const; 0029 int sessionState() const; 0030 uint sessionType() const; 0031 0032 /* Not part of dbus interface */ 0033 void setModemPath(const QString &path); 0034 void setEnableNotifications(bool enable); 0035 void setFeatures(uint features); 0036 void setPendingNetworkInitiatedSessions(const ModemManager::OmaSessionTypes &sessions); 0037 void setSessionState(int state); 0038 void setSessionType(uint type); 0039 0040 QVariantMap toMap() const; 0041 0042 public Q_SLOTS: 0043 Q_SCRIPTABLE void AcceptNetworkInitiatedSession(uint session_id, bool accept); 0044 Q_SCRIPTABLE void CancelSession(); 0045 Q_SCRIPTABLE void Setup(uint features); 0046 Q_SCRIPTABLE void StartClientInitiatedSession(uint session_type); 0047 0048 Q_SIGNALS: // SIGNALS 0049 Q_SCRIPTABLE void SessionStateChanged(int old_session_state, int new_session_state, uint session_state_failed_reason); 0050 0051 private: 0052 QString m_modemPath; 0053 bool m_enabledNotifications; 0054 uint m_features; 0055 ModemManager::OmaSessionTypes m_sessions; 0056 int m_sessionState; 0057 uint m_sessionType; 0058 }; 0059 0060 #endif