QGIS API Documentation 4.0.0-Norrköping (1ddcee3d0e4)
Loading...
Searching...
No Matches
qgslayermetadataproviderregistry.h
Go to the documentation of this file.
1/***************************************************************************
2 qgslayermetadataproviderregistry.h - QgsLayerMetadataProviderRegistry
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 QGSLAYERMETADATAPROVIDERREGISTRY_H
17#define QGSLAYERMETADATAPROVIDERREGISTRY_H
18
19#include "qgis.h"
20#include "qgis_core.h"
22#include "qgslayermetadata.h"
23
24#include <QObject>
25
26class QgsFeedback;
27
28#ifdef SIP_RUN
29// clang-format off
30% ModuleHeaderCode
32% End
33// clang-format on
34#endif
35
45 class CORE_EXPORT QgsLayerMetadataProviderRegistry : public QObject
46{
47 Q_OBJECT
48 public:
50 explicit QgsLayerMetadataProviderRegistry( QObject *parent = nullptr );
51
54
57
59 QList<QgsAbstractLayerMetadataProvider *> layerMetadataProviders() const;
60
63
69 const QgsMetadataSearchContext &searchContext, const QString &searchString = QString(), const QgsRectangle &geographicExtent = QgsRectangle(), QgsFeedback *feedback = nullptr
70 );
71
72 private:
73 QHash<QString, QgsAbstractLayerMetadataProvider *> mMetadataProviders;
74};
75
76#endif // QGSLAYERMETADATAPROVIDERREGISTRY_H
Layer metadata provider backend interface.
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Definition qgsfeedback.h:44
QgsLayerMetadataProviderRegistry(QObject *parent=nullptr)
Creates the layer metadata provider registry, with an optional parent.
QList< QgsAbstractLayerMetadataProvider * > layerMetadataProviders() const
Returns the list of all registered layer metadata providers.
const QgsLayerMetadataSearchResults search(const QgsMetadataSearchContext &searchContext, const QString &searchString=QString(), const QgsRectangle &geographicExtent=QgsRectangle(), QgsFeedback *feedback=nullptr)
Search for layers in all the registered layer metadata providers, optionally filtering by searchStrin...
void unregisterLayerMetadataProvider(QgsAbstractLayerMetadataProvider *metadataProvider)
Unregisters a layer metadata provider metadataProvider and destroys its instance.
void registerLayerMetadataProvider(QgsAbstractLayerMetadataProvider *metadataProvider)
Registers a layer metadata provider metadataProvider and takes ownership of it.
QgsAbstractLayerMetadataProvider * layerMetadataProviderFromId(const QString &id)
Returns metadata provider implementation if the id matches one. Returns nullptr otherwise.
Container of result records from a layer metadata search.
A rectangle specified with double values.
#define SIP_TRANSFER
Definition qgis_sip.h:35