Marble

GeoSceneLayer.h
1 /*
2  SPDX-FileCopyrightText: 2008 Torsten Rahn <[email protected]>
3 
4  SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6 
7 #ifndef MARBLE_GEOSCENELAYER_H
8 #define MARBLE_GEOSCENELAYER_H
9 
10 #include <QString>
11 #include <QVector>
12 
13 #include <geodata_export.h>
14 
15 #include "GeoDocument.h"
16 
17 namespace Marble
18 {
19 
20 class GeoSceneAbstractDataset;
21 class GeoSceneFilter;
22 class GeoSceneLayerPrivate;
23 
24 /**
25  * @short Layer of a GeoScene document.
26  */
27 
28 class GEODATA_EXPORT GeoSceneLayer : public GeoNode
29 {
30  public:
31  explicit GeoSceneLayer( const QString& name );
32  ~GeoSceneLayer() override;
33 
34  const char* nodeType() const override;
35 
36  /**
37  * @brief Add a data set to the legend
38  * @param dataset the new data set
39  */
40  void addDataset( GeoSceneAbstractDataset* );
41 
42  const GeoSceneAbstractDataset * dataset( const QString& ) const;
43  GeoSceneAbstractDataset * dataset( const QString& );
44 
45  const GeoSceneAbstractDataset * groundDataset() const;
46  GeoSceneAbstractDataset * groundDataset();
47 
48  QVector<GeoSceneAbstractDataset*> datasets() const;
49 
50  QString name() const;
51 
52  QString backend() const;
53  void setBackend( const QString& plugin );
54 
55  /**
56  * @brief returns whether the data is organized in quad tiles.
57  */
58  bool isTiled() const;
59  void setTiled( bool );
60 
61  QString role() const;
62  void setRole( const QString& type );
63 
64  const GeoSceneFilter * filter() const;
65  GeoSceneFilter * filter();
66  void addFilter( GeoSceneFilter * filter );
67  void removeFilter( GeoSceneFilter * filter );
68 
69  private:
70  Q_DISABLE_COPY( GeoSceneLayer )
71 
72  GeoSceneLayerPrivate * const d;
73 };
74 
75 }
76 
77 #endif
Binds a QML item to a specific geodetic location in screen coordinates.
A shared base class for all classes that are mapped to a specific tag (ie.
Definition: GeoDocument.h:34
const QLatin1String name
Contents used inside a layer.
Layer of a GeoScene document.
Definition: GeoSceneLayer.h:28
PartitionTable::TableType type
Filter of a GeoScene document.
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Tue Dec 7 2021 23:10:59 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.