summaryrefslogtreecommitdiffstats
path: root/tradeshow/iot-sensortag/sensortagdataproviderpool.h
diff options
context:
space:
mode:
authorKari Hautamäki <kari.hautamaki@qt.io>2017-02-16 08:33:49 +0200
committerMaurice Kalinowski <maurice.kalinowski@qt.io>2017-02-28 13:16:09 +0000
commit35c1c07cd676b9c9afb23ad7266a67d5b6aef03a (patch)
treed43445955be5f1799ca9bb9db2c6e2cfd7915370 /tradeshow/iot-sensortag/sensortagdataproviderpool.h
parentdec3883a1d0d7d24c797cf517fa7fad85b24a1f2 (diff)
iot-sensortag: Allow reconnect after a failed connection attempt
A disconnected sensor tag can be tried to be reconnected by clicking on the chart area or starting rescan from the Sensor settings menu. During a (re)connection process a progress indicator is shown to the user. The user has a possibility to disconnect (and reconnect) a currently connect SensorDataProvider A new state, 'NotFound' is added in SensorTagDataProvider to distinguish between states when a Sensor Tag has not been discovered at all, and when it has already been discovered but is has been disconnected. Change-Id: I54eea72d8c92a67a5ccbb3bc192ac8f33ada1c39 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Diffstat (limited to 'tradeshow/iot-sensortag/sensortagdataproviderpool.h')
-rw-r--r--tradeshow/iot-sensortag/sensortagdataproviderpool.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/tradeshow/iot-sensortag/sensortagdataproviderpool.h b/tradeshow/iot-sensortag/sensortagdataproviderpool.h
index d7ac740..fe8b30f 100644
--- a/tradeshow/iot-sensortag/sensortagdataproviderpool.h
+++ b/tradeshow/iot-sensortag/sensortagdataproviderpool.h
@@ -66,6 +66,7 @@ public:
explicit SensorTagDataProviderPool(QObject *parent = 0);
void startScanning() override;
+ void disconnectProvider(QString id) override;
// setMacFilterList takes presence over name filter
Q_INVOKABLE void setMacFilterList(const QStringList& addressList);
@@ -77,9 +78,11 @@ public:
protected:
SensorTagDataProviderPool(QString poolName, QObject *parent = 0);
virtual void finishScanning();
-
void updateProviderForCloud();
+ QStringList m_macFilters;
+ QStringList m_nameFilters;
+
private slots:
void deviceDiscoveryFinished();
void btDeviceFound(const QBluetoothDeviceInfo &info);
@@ -87,9 +90,8 @@ private slots:
void deviceScanError(QBluetoothDeviceDiscoveryAgent::Error error);
private:
- QStringList m_macFilters;
- QStringList m_nameFilters;
- bool m_deviceScanState;
+ SensorTagDataProvider *findProvider(QString id) const;
+
QBluetoothDeviceDiscoveryAgent *m_discoveryAgent;
SensorTagDataProvider *m_providerForCloud;
};