QGIS API Documentation  2.8.2-Wien
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
qgsgpsdetector.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsgpsdetector.h - description
3  -------------------
4  begin : January 13th, 2009
5  copyright : (C) 2009 by Juergen E. Fischer
6  email : jef at norbit dot de
7  ***************************************************************************/
8 
9 /***************************************************************************
10  * *
11  * This program is free software; you can redistribute it and/or modify *
12  * it under the terms of the GNU General Public License as published by *
13  * the Free Software Foundation; either version 2 of the License, or *
14  * (at your option) any later version. *
15  * *
16  ***************************************************************************/
17 
18 #ifndef QGSGPSDETECTOR_H
19 #define QGSGPSDETECTOR_H
20 
21 #include <QObject>
22 #include <QList>
23 #include <QPair>
24 
25 #include "qextserialport.h"
26 
27 class QgsGPSConnection;
28 struct QgsGPSInformation;
29 
30 // Class to detect the GPS port
31 class CORE_EXPORT QgsGPSDetector : public QObject
32 {
33  Q_OBJECT
34  public:
35  QgsGPSDetector( QString portName );
36  ~QgsGPSDetector();
37 
38  static QList< QPair<QString, QString> > availablePorts();
39 
40  public slots:
41  void advance();
42  void detected( const QgsGPSInformation& );
43  void connDestroyed( QObject * );
44 
45  signals:
46  void detected( QgsGPSConnection * );
47  void detectionFailed();
48 
49  private:
50  int mPortIndex;
51  int mBaudIndex;
52  QList< QPair< QString, QString > > mPortList;
53  QList<BaudRateType> mBaudList;
54 
55  QgsGPSConnection *mConn;
56 };
57 
58 #endif // QGSGPSDETECTOR_H