16#ifndef QGSTILEDSCENECHUNKLOADER_P_H
17#define QGSTILEDSCENECHUNKLOADER_P_H
38#include <QFutureWatcher>
43class QgsTiledSceneChunkLoaderFactory;
54class QgsTiledSceneChunkLoader :
public QgsChunkLoader
58 QgsTiledSceneChunkLoader( QgsChunkNode *node,
const QgsTiledSceneIndex &index,
const QgsTiledSceneChunkLoaderFactory &factory,
double zValueScale,
double zValueOffset );
60 ~QgsTiledSceneChunkLoader();
62 virtual Qt3DCore::QEntity *createEntity( Qt3DCore::QEntity *parent );
65 const QgsTiledSceneChunkLoaderFactory &mFactory;
67 QFutureWatcher<void> *mFutureWatcher =
nullptr;
68 Qt3DCore::QEntity *mEntity =
nullptr;
79class QgsTiledSceneChunkLoaderFactory :
public QgsChunkLoaderFactory
83 QgsTiledSceneChunkLoaderFactory(
85 double zValueScale,
double zValueOffset );
87 virtual QgsChunkLoader *createChunkLoader( QgsChunkNode *node )
const override;
88 virtual QgsChunkNode *createRootNode()
const override;
89 virtual QVector<QgsChunkNode *> createChildren( QgsChunkNode *node )
const override;
91 virtual bool canCreateChildren( QgsChunkNode *node )
override;
92 virtual void prepareChildren( QgsChunkNode *node )
override;
94 QgsChunkNode *nodeForTile(
const QgsTiledSceneTile &t,
const QgsChunkNodeId &nodeId, QgsChunkNode *parent )
const;
95 void fetchHierarchyForNode(
long long nodeId, QgsChunkNode *origNode );
98 QString mRelativePathBase;
100 double mZValueScale = 1.0;
101 double mZValueOffset = 0;
103 QSet<long long> mPendingHierarchyFetches;
104 QSet<long long> mFutureHierarchyFetches;
118class QgsTiledSceneLayerChunkedEntity :
public QgsChunkedEntity
123 double zValueScale,
double zValueOffset );
125 ~QgsTiledSceneLayerChunkedEntity();
129 int pendingJobsCount()
const override;
This class represents a coordinate reference system (CRS).
An index for tiled scene data providers.
Represents an individual tile from a tiled scene data source.
Helper struct to store ray casting parameters.