summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHarald Meyer <dev@meh.at>2015-12-13 14:43:23 +0100
committerHarald Meyer <dev@meh.at>2015-12-16 12:07:55 +0000
commit5927f1ac4f8728e209bd0bbb1423ffb82dd6dbf6 (patch)
tree83951ad9f4134129ec8dd15d423ab78941e5ea6a
parent51a775b51b320dd3913f2e6f29ea9360a559e814 (diff)
downloadqtlocation-5927f1ac4f8728e209bd0bbb1423ffb82dd6dbf6.tar.gz
Added support for Qstarz GPS tracker
Added support for Qstarz tracker (with MTK II chipset) such as BT-Q818XT for instance. Change-Id: I937358a82ebce76ac1cdaf87458234f8045d11ad Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
-rw-r--r--src/plugins/position/serialnmea/qgeopositioninfosourcefactory_serialnmea.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/plugins/position/serialnmea/qgeopositioninfosourcefactory_serialnmea.cpp b/src/plugins/position/serialnmea/qgeopositioninfosourcefactory_serialnmea.cpp
index 2b6b3ce6..a3f8ac98 100644
--- a/src/plugins/position/serialnmea/qgeopositioninfosourcefactory_serialnmea.cpp
+++ b/src/plugins/position/serialnmea/qgeopositioninfosourcefactory_serialnmea.cpp
@@ -36,6 +36,7 @@
#include <QtSerialPort/qserialport.h>
#include <QtSerialPort/qserialportinfo.h>
#include <QtCore/qloggingcategory.h>
+#include <QSet>
Q_LOGGING_CATEGORY(lcSerial, "qt.positioning.serialnmea")
@@ -64,16 +65,13 @@ NmeaSource::NmeaSource(QObject *parent)
}
// Try to find a well-known device.
+ QSet<int> supportedDevices;
+ supportedDevices << 0x67b; // GlobalSat (BU-353S4 and probably others)
+ supportedDevices << 0xe8d; // Qstarz MTK II
QString portName;
- for (int i = 0; i < ports.count(); ++i) {
- const QString candidatePortName = ports[i].portName();
- bool acceptThis = false;
-
- // GlobalSat (BU-353S4 and probably others)
- acceptThis |= ports[i].hasVendorIdentifier() && ports[i].vendorIdentifier() == 0x67b;
-
- if (acceptThis) {
- portName = candidatePortName;
+ foreach (const QSerialPortInfo& port, ports) {
+ if (port.hasVendorIdentifier() && supportedDevices.contains(port.vendorIdentifier())) {
+ portName = port.portName();
break;
}
}