Warning, file /frameworks/modemmanager-qt/src/modemsignal.cpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* 0002 SPDX-FileCopyrightText: 2014 Lukas Tinkl <ltinkl@redhat.com> 0003 SPDX-FileCopyrightText: 2015 Jan Grulich <jgrulich@redhat.com> 0004 0005 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0006 */ 0007 0008 #include "modemsignal.h" 0009 #include "mmdebug_p.h" 0010 #include "modemsignal_p.h" 0011 #ifdef MMQT_STATIC 0012 #include "dbus/fakedbus.h" 0013 #else 0014 #include "dbus/dbus.h" 0015 #endif 0016 0017 ModemManager::ModemSignalPrivate::ModemSignalPrivate(const QString &path, ModemSignal *q) 0018 : InterfacePrivate(path, q) 0019 #ifdef MMQT_STATIC 0020 , modemSignalIface(QLatin1String(MMQT_DBUS_SERVICE), path, QDBusConnection::sessionBus()) 0021 #else 0022 , modemSignalIface(QLatin1String(MMQT_DBUS_SERVICE), path, QDBusConnection::systemBus()) 0023 #endif 0024 , q_ptr(q) 0025 { 0026 if (modemSignalIface.isValid()) { 0027 rate = modemSignalIface.rate(); 0028 cdma = modemSignalIface.cdma(); 0029 evdo = modemSignalIface.evdo(); 0030 gsm = modemSignalIface.gsm(); 0031 umts = modemSignalIface.umts(); 0032 lte = modemSignalIface.lte(); 0033 } 0034 } 0035 0036 ModemManager::ModemSignal::ModemSignal(const QString &path, QObject *parent) 0037 : Interface(*new ModemSignalPrivate(path, this), parent) 0038 { 0039 Q_D(ModemSignal); 0040 #ifdef MMQT_STATIC 0041 QDBusConnection::sessionBus().connect(QLatin1String(MMQT_DBUS_SERVICE), 0042 d->uni, 0043 QLatin1String(DBUS_INTERFACE_PROPS), 0044 QStringLiteral("PropertiesChanged"), 0045 d, 0046 SLOT(onPropertiesChanged(QString, QVariantMap, QStringList))); 0047 #else 0048 QDBusConnection::systemBus().connect(QLatin1String(MMQT_DBUS_SERVICE), 0049 d->uni, 0050 QLatin1String(DBUS_INTERFACE_PROPS), 0051 QStringLiteral("PropertiesChanged"), 0052 d, 0053 SLOT(onPropertiesChanged(QString, QVariantMap, QStringList))); 0054 #endif 0055 } 0056 0057 ModemManager::ModemSignal::~ModemSignal() 0058 { 0059 } 0060 0061 uint ModemManager::ModemSignal::rate() const 0062 { 0063 Q_D(const ModemSignal); 0064 return d->rate; 0065 } 0066 0067 QVariantMap ModemManager::ModemSignal::cdma() const 0068 { 0069 Q_D(const ModemSignal); 0070 return d->cdma; 0071 } 0072 0073 QVariantMap ModemManager::ModemSignal::evdo() const 0074 { 0075 Q_D(const ModemSignal); 0076 return d->evdo; 0077 } 0078 0079 QVariantMap ModemManager::ModemSignal::gsm() const 0080 { 0081 Q_D(const ModemSignal); 0082 return d->gsm; 0083 } 0084 0085 QVariantMap ModemManager::ModemSignal::lte() const 0086 { 0087 Q_D(const ModemSignal); 0088 return d->lte; 0089 } 0090 0091 QVariantMap ModemManager::ModemSignal::umts() const 0092 { 0093 Q_D(const ModemSignal); 0094 return d->umts; 0095 } 0096 0097 QDBusPendingReply<void> ModemManager::ModemSignal::setup(uint rate) 0098 { 0099 Q_D(ModemSignal); 0100 return d->modemSignalIface.Setup(rate); 0101 } 0102 0103 void ModemManager::ModemSignal::setTimeout(int timeout) 0104 { 0105 Q_D(ModemSignal); 0106 d->modemSignalIface.setTimeout(timeout); 0107 } 0108 0109 int ModemManager::ModemSignal::timeout() const 0110 { 0111 Q_D(const ModemSignal); 0112 return d->modemSignalIface.timeout(); 0113 } 0114 0115 void ModemManager::ModemSignalPrivate::onPropertiesChanged(const QString &interface, const QVariantMap &properties, const QStringList &invalidatedProps) 0116 { 0117 Q_Q(ModemSignal); 0118 Q_UNUSED(invalidatedProps); 0119 qCDebug(MMQT) << interface << properties.keys(); 0120 0121 if (interface == QLatin1String(MMQT_DBUS_INTERFACE_MODEM_SIGNAL)) { 0122 QVariantMap::const_iterator it = properties.constFind(QLatin1String(MM_MODEM_SIGNAL_PROPERTY_RATE)); 0123 if (it != properties.constEnd()) { 0124 rate = it->toUInt(); 0125 Q_EMIT q->rateChanged(rate); 0126 } 0127 it = properties.constFind(QLatin1String(MM_MODEM_SIGNAL_PROPERTY_CDMA)); 0128 if (it != properties.constEnd()) { 0129 cdma = qdbus_cast<QVariantMap>(*it); 0130 Q_EMIT q->cdmaChanged(cdma); 0131 } 0132 it = properties.constFind(QLatin1String(MM_MODEM_SIGNAL_PROPERTY_EVDO)); 0133 if (it != properties.constEnd()) { 0134 evdo = qdbus_cast<QVariantMap>(*it); 0135 Q_EMIT q->cdmaChanged(evdo); 0136 } 0137 it = properties.constFind(QLatin1String(MM_MODEM_SIGNAL_PROPERTY_GSM)); 0138 if (it != properties.constEnd()) { 0139 gsm = qdbus_cast<QVariantMap>(*it); 0140 Q_EMIT q->cdmaChanged(gsm); 0141 } 0142 it = properties.constFind(QLatin1String(MM_MODEM_SIGNAL_PROPERTY_UMTS)); 0143 if (it != properties.constEnd()) { 0144 umts = qdbus_cast<QVariantMap>(*it); 0145 Q_EMIT q->cdmaChanged(umts); 0146 } 0147 it = properties.constFind(QLatin1String(MM_MODEM_SIGNAL_PROPERTY_LTE)); 0148 if (it != properties.constEnd()) { 0149 lte = qdbus_cast<QVariantMap>(*it); 0150 Q_EMIT q->cdmaChanged(lte); 0151 } 0152 } 0153 } 0154 0155 #include "moc_modemsignal.cpp"