QGIS API Documentation 3.99.0-Master (26c88405ac0)
Loading...
Searching...
No Matches
qgsabstractlayermetadataprovider.h
Go to the documentation of this file.
1/***************************************************************************
2 qgslayermetadataprovider.h - QgsLayerMetadataProvider
3
4 ---------------------
5 begin : 17.8.2022
6 copyright : (C) 2022 by Alessandro Pasotti
7 email : elpaso at itopen dot it
8 ***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16#ifndef QGSABSTRACTLAYERMETADATAPROVIDER_H
17#define QGSABSTRACTLAYERMETADATAPROVIDER_H
18
19#include "qgis.h"
20#include "qgis_core.h"
22#include "qgslayermetadata.h"
23#include "qgspolygon.h"
24#include "qgsrectangle.h"
25
26#include <QObject>
27
28class QgsFeedback;
29
40
59{
60
61 public:
62
68
70
74 const QgsPolygon &geographicExtent() const;
75
80
85
90
94 const QString &authid() const;
95
99 void setAuthid( const QString &authid );
100
104 const QString &uri() const;
105
109 void setUri( const QString &Uri );
110
114 const QString &dataProviderName() const;
115
119 void setDataProviderName( const QString &dataProviderName );
120
125
130
134 const QString &standardUri() const;
135
139 void setStandardUri( const QString &standardUri );
140
141
142 private:
143
145 QgsPolygon mGeographicExtent;
149 QString mAuthid;
151 QString mUri;
153 QString mDataProviderName;
157 QString mStandardUri;
158};
159
161
162
173{
174
175 public:
176
180 QList<QgsLayerMetadataProviderResult> metadata() const;
181
186
190 QStringList errors() const;
191
195 void addError( const QString &error );
196
197 private:
198
200 QList<QgsLayerMetadataProviderResult> mMetadata;
202 QStringList mErrors;
203};
204
206
207
214{
215
216 public:
217
219
224 virtual QString id() const = 0;
225
234 virtual QgsLayerMetadataSearchResults search( const QgsMetadataSearchContext &searchContext, const QString &searchString = QString(), const QgsRectangle &geographicExtent = QgsRectangle(), QgsFeedback *feedback = nullptr ) const = 0;
235
236};
237
238#endif // QGSABSTRACTLAYERMETADATAPROVIDER_H
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
Definition qgis.h:358
@ Unknown
Unknown types.
Definition qgis.h:362
LayerType
Types of layers that can be added to a map.
Definition qgis.h:190
@ Vector
Vector layer.
Definition qgis.h:191
Layer metadata provider backend interface.
virtual ~QgsAbstractLayerMetadataProvider()=default
virtual QString id() const =0
Returns the id of the layer metadata provider implementation, usually the name of the data provider b...
virtual QgsLayerMetadataSearchResults search(const QgsMetadataSearchContext &searchContext, const QString &searchString=QString(), const QgsRectangle &geographicExtent=QgsRectangle(), QgsFeedback *feedback=nullptr) const =0
Searches for metadata optionally filtering by search string and geographic extent.
Contains information about the context in which a coordinate transform is executed.
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Definition qgsfeedback.h:44
Result record of layer metadata provider search.
QgsLayerMetadataProviderResult(const QgsLayerMetadata &metadata)
Constructor for QgsLayerMetadataProviderResult.
Qgis::GeometryType geometryType() const
Returns the layer geometry type.
const QgsPolygon & geographicExtent() const
Returns the layer extent in EPSG:4326.
const QString & standardUri() const
Returns the metadata standard URI (usually "http://mrcc.com/qgis.dtd").
void setDataProviderName(const QString &dataProviderName)
Sets the data provider name to dataProviderName.
void setGeographicExtent(const QgsPolygon &geographicExtent)
Sets the layer extent in EPSG:4326 to geographicExtent.
void setGeometryType(Qgis::GeometryType geometryType)
Sets the layer geometry type to geometryType.
void setLayerType(Qgis::LayerType layerType)
Sets the layer type to layerType.
const QString & dataProviderName() const
Returns the data provider name.
void setAuthid(const QString &authid)
Sets the layer authid.
void setUri(const QString &Uri)
Sets the layer data source URI to Uri.
const QString & uri() const
Returns the layer data source URI.
void setStandardUri(const QString &standardUri)
Sets the metadata standard URI to standardUri.
const QString & authid() const
Returns the layer CRS authid.
Qgis::LayerType layerType() const
Returns the layer type.
Container of result records from a layer metadata search.
void addError(const QString &error)
Adds a error to the list of errors.
void addMetadata(const QgsLayerMetadataProviderResult &metadata)
Adds a Metadata record to the list of results.
QStringList errors() const
Returns the list of errors occurred during a metadata search.
QList< QgsLayerMetadataProviderResult > metadata() const
Returns the list of metadata results.
QgsLayerMetadata()=default
Polygon geometry type.
Definition qgspolygon.h:33
A rectangle specified with double values.
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
QgsCoordinateTransformContext transformContext
Coordinate transform context.