diff options
author | Harald Meyer <dev@meh.at> | 2015-12-13 14:43:23 +0100 |
---|---|---|
committer | Harald Meyer <dev@meh.at> | 2015-12-16 12:07:55 +0000 |
commit | 5927f1ac4f8728e209bd0bbb1423ffb82dd6dbf6 (patch) | |
tree | 83951ad9f4134129ec8dd15d423ab78941e5ea6a | |
parent | 51a775b51b320dd3913f2e6f29ea9360a559e814 (diff) | |
download | qtlocation-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.cpp | 16 |
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; } } |