From ee1d48a9a5f3672f329301a844e69f2e184afcac Mon Sep 17 00:00:00 2001 From: harlekin Date: Fri, 07 Mar 2003 22:55:36 +0000 Subject: show signal strength for connections --- (limited to 'noncore/net/opietooth/lib') diff --git a/noncore/net/opietooth/lib/manager.cc b/noncore/net/opietooth/lib/manager.cc index 8ddcfe8..c89d325 100644 --- a/noncore/net/opietooth/lib/manager.cc +++ b/noncore/net/opietooth/lib/manager.cc @@ -260,7 +260,6 @@ void Manager::searchConnections() { } } void Manager::slotConnectionExited( OProcess* proc ) { - qWarning("<<<<<<<<<<<<<<<<setName( mac.latin1() ); + + if (!sig_proc->start(OProcess::NotifyOnExit, OProcess::AllOutput) ) { + emit signalStrength( mac, "-1" ); + delete sig_proc; + } +} + +void Manager::slotSignalStrengthOutput(OProcess* proc, char* cha, int len) { + QCString str(cha, len ); + QString temp = QString(str).stripWhiteSpace(); + QStringList value = QStringList::split(' ', temp ); + emit signalStrength( proc->name(), value[2].latin1() ); +} + + +void Manager::slotSignalStrengthExited( OProcess* proc ) { + delete proc; +} diff --git a/noncore/net/opietooth/lib/manager.h b/noncore/net/opietooth/lib/manager.h index 0ebe1b3..abc8ba1 100644 --- a/noncore/net/opietooth/lib/manager.h +++ b/noncore/net/opietooth/lib/manager.h @@ -124,6 +124,7 @@ namespace OpieTooth { */ void searchConnections(); + void signalStrength( const QString &mac ); //// not implemented yet /*static*/ QString toDevice( const QString& mac ); /*static*/ QString toMac( const QString &device ); @@ -138,6 +139,7 @@ namespace OpieTooth { void foundServices( const QString& device, Services::ValueList ); void foundDevices( const QString& device, RemoteDevice::ValueList ); void connections( ConnectionState::ValueList ); + void signalStrength( const QString& mac, const QString& strengh ); private slots: void slotProcessExited(OProcess* ); @@ -150,6 +152,9 @@ private slots: void slotConnectionExited(OProcess* ); void slotConnectionOutput(OProcess*, char*, int ); + + void slotSignalStrengthOutput( OProcess*, char*, int ); + void slotSignalStrengthExited( OProcess* ); private: Services::ValueList parseSDPOutput( const QString& ); RemoteDevice::ValueList parseHCIOutput( const QString& ); @@ -157,8 +162,10 @@ private slots: OProcess *m_hcitool; OProcess *m_sdp; // not only one QString m_device; + QMap m_signalStrength; QMap m_out; QMap m_devices; + QMap m_signalMac; QString m_hcitoolCon; }; }; -- cgit v0.9.0.2