Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qgeomapmapboxgl_p.h
Go to the documentation of this file.
1// Copyright (C) 2017 The Qt Company Ltd.
2// Copyright (C) 2017 Mapbox, Inc.
3// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
4
5#ifndef QGEOMAPMAPBOXGL_P_H
6#define QGEOMAPMAPBOXGL_P_H
7
8#include <QtCore/QHash>
9#include <QtCore/QList>
10#include <QtCore/QSharedPointer>
11#include <QtCore/QTimer>
12#include <QtCore/QVariant>
13#include <QtCore/QRectF>
14#include <QtLocation/private/qgeomap_p_p.h>
15
16class QMapboxGL;
18
20{
21 Q_DECLARE_PUBLIC(QGeoMapMapboxGL)
22
23public:
25
27
28 QSGNode *updateSceneGraph(QSGNode *oldNode, QQuickWindow *window);
29
30 QGeoMap::ItemTypes supportedMapItemTypes() const override;
31 void addMapItem(QDeclarativeGeoMapItemBase *item) override;
32 void removeMapItem(QDeclarativeGeoMapItemBase *item) override;
33
34 /* Data members */
35 enum SyncState : int {
36 NoSync = 0,
37 ViewportSync = 1 << 0,
39 MapTypeSync = 1 << 2,
41 };
43
45 bool m_useFBO = true;
46 bool m_developmentMode = false;
48
50 bool m_shouldRefresh = true;
51 bool m_warned = false;
52 bool m_threadedRendering = false;
53 bool m_styleLoaded = false;
54
56
58
59protected:
60 void changeViewportSize(const QSize &size) override;
61 void changeCameraData(const QGeoCameraData &oldCameraData) override;
62 void changeActiveMapType(const QGeoMapType &mapType) override;
63
64 void setVisibleArea(const QRectF &visibleArea) override;
65 QRectF visibleArea() const override;
66
67private:
69
70 void syncStyleChanges(QMapboxGL *map);
71 void threadedRenderingHack(QQuickWindow *window, QMapboxGL *map);
72
73 QRectF m_visibleArea;
74};
75
76Q_DECLARE_OPERATORS_FOR_FLAGS(QGeoMapMapboxGLPrivate::SyncStates)
77
78#endif // QGEOMAPMAPBOXGL_P_H
QRectF visibleArea() const override
void setVisibleArea(const QRectF &visibleArea) override
QMapboxGLSettings m_settings
void addMapItem(QDeclarativeGeoMapItemBase *item) override
void changeActiveMapType(const QGeoMapType &mapType) override
QList< QSharedPointer< QMapboxGLStyleChange > > m_styleChanges
QGeoMap::ItemTypes supportedMapItemTypes() const override
void changeCameraData(const QGeoCameraData &oldCameraData) override
Q_DECLARE_FLAGS(SyncStates, SyncState)
void removeMapItem(QDeclarativeGeoMapItemBase *item) override
void changeViewportSize(const QSize &size) override
QSGNode * updateSceneGraph(QSGNode *oldNode, QQuickWindow *window)
void setMapboxGLSettings(const QMapboxGLSettings &, bool useChinaEndpoint)
QString copyrightsStyleSheet() const override
Capabilities capabilities() const override
void setMapItemsBefore(const QString &)
QSGNode * updateSceneGraph(QSGNode *oldNode, QQuickWindow *window) override
#define MBGL_TILE_SIZE