7#include "GeoSceneLayer.h"
9#include "GeoSceneAbstractDataset.h"
10#include "GeoSceneFilter.h"
11#include "GeoSceneTypes.h"
16class GeoSceneLayerPrivate
19 GeoSceneLayerPrivate(
const QString &name);
20 ~GeoSceneLayerPrivate();
27 GeoSceneFilter *m_filter;
36GeoSceneLayerPrivate::GeoSceneLayerPrivate(
const QString &name) :
45GeoSceneLayerPrivate::~GeoSceneLayerPrivate()
47 qDeleteAll(m_datasets);
50GeoSceneLayer::GeoSceneLayer(
const QString &name) :
51 d(new GeoSceneLayerPrivate(
name))
55GeoSceneLayer::~GeoSceneLayer()
60const char* GeoSceneLayer::nodeType()
const
62 return GeoSceneTypes::GeoSceneLayerType;
69 while (it != d->m_datasets.end()) {
71 if ( currentAbstractDataset->name() == dataset->name() ) {
72 delete currentAbstractDataset;
73 d->m_datasets.erase(it);
82 d->m_datasets.append( dataset );
92 for (; it != end; ++it) {
93 if ( (*it)->name() == name ) {
103GeoSceneAbstractDataset* GeoSceneLayer::dataset(
const QString& name )
105 return const_cast<GeoSceneAbstractDataset*
>
106 (
static_cast<GeoSceneLayer
const *
>( this )->dataset( name ));
109const GeoSceneAbstractDataset * GeoSceneLayer::groundDataset()
const
111 if (d->m_datasets.isEmpty())
114 return d->m_datasets.first();
119GeoSceneAbstractDataset * GeoSceneLayer::groundDataset()
121 return const_cast<GeoSceneAbstractDataset*
>
122 (
static_cast<GeoSceneLayer
const *
>( this )->groundDataset() );
127 return d->m_datasets;
130QString GeoSceneLayer::name()
const
135QString GeoSceneLayer::backend()
const
140void GeoSceneLayer::setBackend(
const QString& backend )
142 d->m_backend = backend;
145bool GeoSceneLayer::isTiled()
const
150void GeoSceneLayer::setTiled(
bool tiled )
155QString GeoSceneLayer::role()
const
160void GeoSceneLayer::setRole(
const QString& role )
165const GeoSceneFilter* GeoSceneLayer::filter()
const
170GeoSceneFilter* GeoSceneLayer::filter()
175void GeoSceneLayer::addFilter( GeoSceneFilter * filter )
180void GeoSceneLayer::removeFilter( GeoSceneFilter * filter )
182 if (filter == d->m_filter) {
183 d->m_filter =
nullptr;
Contents used inside a layer.
QString name(StandardShortcut id)
Binds a QML item to a specific geodetic location in screen coordinates.
QFuture< void > filter(QThreadPool *pool, Sequence &sequence, KeepFunctor &&filterFunction)