diff options
author | Michal Klocek <michal.klocek@theqtcompany.com> | 2015-11-19 17:47:47 +0100 |
---|---|---|
committer | Michal Klocek <michal.klocek@theqtcompany.com> | 2015-11-23 11:51:06 +0000 |
commit | 384991d3dca08725b6805c5cae1d206238f131c7 (patch) | |
tree | 4de2a2bac25a7a6ee3e68319692dac011b8b1a30 | |
parent | 59a61324d66263bb219ba8fc4ccdd8c244cddf72 (diff) | |
download | qtlocation-384991d3dca08725b6805c5cae1d206238f131c7.tar.gz |
Share common data between b2qt emulator and simulator plugin
Share position information structs between client
and server implementations for simulator plugin.
Required structs exported as private export.
Change-Id: I7c8fb4b93d8cacd6217096e28f770409c8939c29
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
-rw-r--r-- | src/plugins/position/simulator/simulator.pro | 3 | ||||
-rw-r--r-- | src/positioning/positioning.pro | 7 | ||||
-rw-r--r-- | src/positioning/qlocationdata_simulator.cpp (renamed from src/plugins/position/simulator/qlocationdata_simulator.cpp) | 0 | ||||
-rw-r--r-- | src/positioning/qlocationdata_simulator_p.h (renamed from src/plugins/position/simulator/qlocationdata_simulator_p.h) | 21 | ||||
-rw-r--r-- | src/positioning/qpositioningglobal_p.h | 45 |
5 files changed, 69 insertions, 7 deletions
diff --git a/src/plugins/position/simulator/simulator.pro b/src/plugins/position/simulator/simulator.pro index f9e2bdb5..dc00ae1a 100644 --- a/src/plugins/position/simulator/simulator.pro +++ b/src/plugins/position/simulator/simulator.pro @@ -4,16 +4,15 @@ QT = core network positioning PLUGIN_TYPE = position PLUGIN_CLASS_NAME = QGeoPositionInfoSourceFactorySimulator load(qt_plugin) +INCLUDEPATH += ../../../positioning QT += simulator DEFINES += QT_SIMULATOR SOURCES += qgeopositioninfosource_simulator.cpp \ - qlocationdata_simulator.cpp \ qgeosatelliteinfosource_simulator.cpp \ qlocationconnection_simulator.cpp \ qgeopositioninfosourcefactory_simulator.cpp HEADERS += qgeopositioninfosource_simulator_p.h \ - qlocationdata_simulator_p.h \ qgeosatelliteinfosource_simulator_p.h \ qlocationconnection_simulator_p.h \ qgeopositioninfosourcefactory_simulator.h diff --git a/src/positioning/positioning.pro b/src/positioning/positioning.pro index 2e751bfb..0dd91272 100644 --- a/src/positioning/positioning.pro +++ b/src/positioning/positioning.pro @@ -46,7 +46,9 @@ PRIVATE_HEADERS += \ qdeclarativegeolocation_p.h \ qdoublevector2d_p.h \ qdoublevector3d_p.h \ - qgeoprojection_p.h + qgeoprojection_p.h \ + qpositioningglobal_p.h \ + qlocationdata_simulator_p.h SOURCES += \ qgeoaddress.cpp \ @@ -68,7 +70,8 @@ SOURCES += \ qdeclarativegeolocation.cpp \ qdoublevector2d.cpp \ qdoublevector3d.cpp \ - qgeoprojection.cpp + qgeoprojection.cpp \ + qlocationdata_simulator.cpp HEADERS += $$PUBLIC_HEADERS $$PRIVATE_HEADERS diff --git a/src/plugins/position/simulator/qlocationdata_simulator.cpp b/src/positioning/qlocationdata_simulator.cpp index b1ab808c..b1ab808c 100644 --- a/src/plugins/position/simulator/qlocationdata_simulator.cpp +++ b/src/positioning/qlocationdata_simulator.cpp diff --git a/src/plugins/position/simulator/qlocationdata_simulator_p.h b/src/positioning/qlocationdata_simulator_p.h index a847a80f..8848123d 100644 --- a/src/plugins/position/simulator/qlocationdata_simulator_p.h +++ b/src/positioning/qlocationdata_simulator_p.h @@ -45,13 +45,22 @@ // We mean it. // +// +// DO NOT REMOVE +// ------------- +// +// This header file contains structures used to serialize communication between +// simulator's client and server implementations, it is included by simulator +// positioning plugin. + +#include "qpositioningglobal_p.h" #include <QtCore/QMetaType> #include <QtCore/QDateTime> #include <QtCore/QList> QT_BEGIN_NAMESPACE -struct QGeoPositionInfoData +struct Q_POSITIONING_PRIVATE_EXPORT QGeoPositionInfoData { QGeoPositionInfoData(); @@ -76,7 +85,7 @@ struct QGeoPositionInfoData bool enabled; }; -struct QGeoSatelliteInfoData +struct Q_POSITIONING_PRIVATE_EXPORT QGeoSatelliteInfoData { struct SatelliteInfo { @@ -102,7 +111,13 @@ struct QGeoSatelliteInfoData QList<SatelliteInfo> satellites; }; -void qt_registerLocationTypes(); +Q_POSITIONING_PRIVATE_EXPORT void qt_registerLocationTypes(); +Q_POSITIONING_PRIVATE_EXPORT QDataStream &operator<<(QDataStream &out, const QGeoPositionInfoData &s); +Q_POSITIONING_PRIVATE_EXPORT QDataStream &operator>>(QDataStream &in, QGeoPositionInfoData &s); +Q_POSITIONING_PRIVATE_EXPORT QDataStream &operator<<(QDataStream &out, const QGeoSatelliteInfoData &s); +Q_POSITIONING_PRIVATE_EXPORT QDataStream &operator>>(QDataStream &in, QGeoSatelliteInfoData &s); +Q_POSITIONING_PRIVATE_EXPORT QDataStream &operator<<(QDataStream &out, const QGeoSatelliteInfoData::SatelliteInfo &s); +Q_POSITIONING_PRIVATE_EXPORT QDataStream &operator>>(QDataStream &in, QGeoSatelliteInfoData::SatelliteInfo &s); QT_END_NAMESPACE diff --git a/src/positioning/qpositioningglobal_p.h b/src/positioning/qpositioningglobal_p.h new file mode 100644 index 00000000..d3a10dae --- /dev/null +++ b/src/positioning/qpositioningglobal_p.h @@ -0,0 +1,45 @@ +/**************************************************************************** +** +** Copyright (C) 2015 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the QtPositioning module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL21$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 or version 3 as published by the Free +** Software Foundation and appearing in the file LICENSE.LGPLv21 and +** LICENSE.LGPLv3 included in the packaging of this file. Please review the +** following information to ensure the GNU Lesser General Public License +** requirements will be met: https://www.gnu.org/licenses/lgpl.html and +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** As a special exception, The Qt Company gives you certain additional +** rights. These rights are described in The Qt Company LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QPOSITIONINGGLOBAL_P_H +#define QPOSITIONINGGLOBAL_P_H + +#include "qpositioningglobal.h" + +QT_BEGIN_NAMESPACE + +#define Q_POSITIONING_PRIVATE_EXPORT Q_POSITIONING_EXPORT + +QT_END_NAMESPACE + +#endif // QPOSITIONINGGLOBAL_P_H + |