QGIS API Documentation  3.26.3-Buenos Aires (65e4edfdad)
qgsprovidermetadata.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  qgsprovidermetadata.cpp - Metadata class for
3  describing a data provider.
4  -------------------
5  begin : Sat Jan 10 2004
6  copyright : (C) 2004 by Gary E.Sherman
7  email : sherman at mrcc.com
8  ***************************************************************************/
9 
10 /***************************************************************************
11  * *
12  * This program is free software; you can redistribute it and/or modify *
13  * it under the terms of the GNU General Public License as published by *
14  * the Free Software Foundation; either version 2 of the License, or *
15  * (at your option) any later version. *
16  * *
17  ***************************************************************************/
18 
19 #include "qgsprovidermetadata.h"
20 #include "qgsdataprovider.h"
21 #include "qgsmaplayer.h"
22 #include "qgsexception.h"
25 
27  QString const &description,
28  QString const &library )
29  : mKey( key )
30  , mDescription( description )
31  , mLibrary( library )
32 {}
33 
34 QgsProviderMetadata::QgsProviderMetadata( const QString &key, const QString &description, const CreateDataProviderFunction &createFunc )
35  : mKey( key )
36  , mDescription( description )
37  , mCreateFunction( createFunc )
38 {}
39 
41 {
42  qDeleteAll( mProviderConnections );
43 }
44 
45 QString QgsProviderMetadata::key() const
46 {
47  return mKey;
48 }
49 
51 {
52  return mDescription;
53 }
54 
56 {
57  return QIcon();
58 }
59 
60 QgsProviderMetadata::ProviderMetadataCapabilities QgsProviderMetadata::capabilities() const
61 {
62  return QgsProviderMetadata::ProviderMetadataCapabilities();
63 }
64 
65 QgsProviderMetadata::ProviderCapabilities QgsProviderMetadata::providerCapabilities() const
66 {
67  return QgsProviderMetadata::ProviderCapabilities();
68 }
69 
70 QList<QgsMapLayerType> QgsProviderMetadata::supportedLayerTypes() const
71 {
72  return {};
73 }
74 
76 {
77  return mLibrary;
78 }
79 
81 {
82  return mCreateFunction;
83 }
84 
86 {
87 
88 }
89 
91 {
92 
93 }
94 
96 {
97  return QString();
98 }
99 
100 QList<QgsMeshDriverMetadata> QgsProviderMetadata::meshDriversMetadata()
101 {
102  return QList<QgsMeshDriverMetadata>();
103 }
104 
105 int QgsProviderMetadata::priorityForUri( const QString & ) const
106 {
107  return 0;
108 }
109 
110 QList<QgsMapLayerType> QgsProviderMetadata::validLayerTypesForUri( const QString & ) const
111 {
112  return QList<QgsMapLayerType>();
113 }
114 
115 bool QgsProviderMetadata::uriIsBlocklisted( const QString & ) const
116 {
117  return false;
118 }
119 
120 QStringList QgsProviderMetadata::sidecarFilesForUri( const QString & ) const
121 {
122  return QStringList();
123 }
124 
125 QList<QgsProviderSublayerDetails> QgsProviderMetadata::querySublayers( const QString &, Qgis::SublayerQueryFlags, QgsFeedback * ) const
126 {
127  return QList<QgsProviderSublayerDetails>();
128 }
129 
131  const QgsDataProvider::ProviderOptions &options,
132  QgsDataProvider::ReadFlags flags )
133 {
134  if ( mCreateFunction )
135  {
136  return mCreateFunction( uri, options, flags );
137  }
138  return nullptr;
139 }
140 
141 void QgsProviderMetadata::setBoolParameter( QVariantMap &uri, const QString &parameter, const QVariant &value )
142 {
143  if ( value.toString().compare( QStringLiteral( "yes" ), Qt::CaseInsensitive ) == 0 ||
144  value.toString().compare( QStringLiteral( "1" ), Qt::CaseInsensitive ) == 0 ||
145  value.toString().compare( QStringLiteral( "true" ), Qt::CaseInsensitive ) == 0 )
146  {
147  uri[ parameter ] = true;
148  }
149  else if ( value.toString().compare( QStringLiteral( "no" ), Qt::CaseInsensitive ) == 0 ||
150  value.toString().compare( QStringLiteral( "0" ), Qt::CaseInsensitive ) == 0 ||
151  value.toString().compare( QStringLiteral( "false" ), Qt::CaseInsensitive ) == 0 )
152  {
153  uri[ parameter ] = false;
154  }
155 }
156 
157 bool QgsProviderMetadata::boolParameter( const QVariantMap &uri, const QString &parameter, bool defaultValue )
158 {
159  if ( uri.value( parameter, QString() ).toString().compare( QStringLiteral( "yes" ), Qt::CaseInsensitive ) == 0 ||
160  uri.value( parameter, QString() ).toString().compare( QStringLiteral( "1" ), Qt::CaseInsensitive ) == 0 ||
161  uri.value( parameter, QString() ).toString().compare( QStringLiteral( "true" ), Qt::CaseInsensitive ) == 0 )
162  {
163  return true;
164  }
165  else if ( uri.value( parameter, QString() ).toString().compare( QStringLiteral( "no" ), Qt::CaseInsensitive ) == 0 ||
166  uri.value( parameter, QString() ).toString().compare( QStringLiteral( "0" ), Qt::CaseInsensitive ) == 0 ||
167  uri.value( parameter, QString() ).toString().compare( QStringLiteral( "false" ), Qt::CaseInsensitive ) == 0 )
168  {
169  return false;
170  }
171 
172  return defaultValue;
173 }
174 
175 QVariantMap QgsProviderMetadata::decodeUri( const QString & ) const
176 {
177  return QVariantMap();
178 }
179 
180 QString QgsProviderMetadata::encodeUri( const QVariantMap & ) const
181 {
182  return QString();
183 }
184 
186  const QString &, const QgsFields &,
188  bool, QMap<int, int> &,
189  QString &errorMessage, const QMap<QString, QVariant> * )
190 {
191  errorMessage = QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "createEmptyLayer" ) );
192  return Qgis::VectorExportResult::ErrorProviderUnsupportedFeature;
193 }
194 
196  const QString &, const QString &,
197  int, Qgis::DataType, int,
198  int, double *,
200  const QStringList & )
201 {
202  return nullptr;
203 }
204 
206  const QString &,
207  const QString &,
208  const QgsCoordinateReferenceSystem & ) const
209 {
210  return false;
211 }
212 
214  const QString &,
215  const QgsCoordinateReferenceSystem & ) const
216 {
217  return false;
218 }
219 
220 QList<QPair<QString, QString> > QgsProviderMetadata::pyramidResamplingMethods()
221 {
222  return QList<QPair<QString, QString> >();
223 }
224 
225 QList<QgsDataItemProvider *> QgsProviderMetadata::dataItemProviders() const
226 {
227  return QList<QgsDataItemProvider *>();
228 }
229 
230 int QgsProviderMetadata::listStyles( const QString &, QStringList &, QStringList &,
231  QStringList &, QString &errCause )
232 {
233  errCause = QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "listStyles" ) );
234  return -1;
235 }
236 
237 bool QgsProviderMetadata::styleExists( const QString &, const QString &, QString &errorCause )
238 {
239  errorCause.clear();
240  return false;
241 }
242 
243 QString QgsProviderMetadata::getStyleById( const QString &, const QString &, QString &errCause )
244 {
245  errCause = QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "getStyleById" ) );
246  return QString();
247 }
248 
249 bool QgsProviderMetadata::deleteStyleById( const QString &, const QString &, QString &errCause )
250 {
251  errCause = QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "deleteStyleById" ) );
252  return false;
253 }
254 
255 bool QgsProviderMetadata::saveStyle( const QString &, const QString &, const QString &, const QString &,
256  const QString &, const QString &, bool, QString &errCause )
257 {
258  errCause = QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "saveStyle" ) );
259  return false;
260 }
261 
262 QString QgsProviderMetadata::loadStyle( const QString &, QString &errCause )
263 {
264  errCause = QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "loadStyle" ) );
265  return QString();
266 }
267 
268 bool QgsProviderMetadata::saveLayerMetadata( const QString &, const QgsLayerMetadata &, QString & )
269 {
270  throw QgsNotSupportedException( QObject::tr( "Provider %1 does not support writing layer metadata" ).arg( key() ) );
271 }
272 
273 bool QgsProviderMetadata::createDb( const QString &, QString &errCause )
274 {
275  errCause = QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "createDb" ) );
276  return false;
277 }
278 
280 {
281  return nullptr;
282 }
283 
284 QMap<QString, QgsAbstractProviderConnection *> QgsProviderMetadata::connections( bool cached )
285 {
286  Q_UNUSED( cached );
287  throw QgsProviderConnectionException( QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "connections" ) ) );
288 }
289 
290 QMap<QString, QgsAbstractDatabaseProviderConnection *> QgsProviderMetadata::dbConnections( bool cached )
291 {
292  return connections<QgsAbstractDatabaseProviderConnection>( cached ) ;
293 }
294 
296 {
297  const QMap<QString, QgsAbstractProviderConnection *> constConns { connections( cached ) };
298  const QStringList constKeys { constConns.keys( ) };
299  for ( const QString &key : constKeys )
300  {
301  if ( key == name )
302  {
303  return constConns.value( key );
304  }
305  }
306  return nullptr;
307 }
308 
310 {
311  Q_UNUSED( name );
312  throw QgsProviderConnectionException( QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "connection" ) ) );
313 }
314 
315 
316 QgsAbstractProviderConnection *QgsProviderMetadata::createConnection( const QString &uri, const QVariantMap &configuration )
317 {
318  Q_UNUSED( configuration );
319  Q_UNUSED( uri );
320  throw QgsProviderConnectionException( QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "connection" ) ) );
321 }
322 
323 void QgsProviderMetadata::deleteConnection( const QString &name )
324 {
325  Q_UNUSED( name );
326  throw QgsProviderConnectionException( QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "deleteConnection" ) ) );
327 }
328 
329 void QgsProviderMetadata::saveConnection( const QgsAbstractProviderConnection *connection, const QString &name )
330 {
331  Q_UNUSED( connection )
332  Q_UNUSED( name )
333  throw QgsProviderConnectionException( QObject::tr( "Provider %1 has no %2 method" ).arg( key(), QStringLiteral( "saveConnection" ) ) );
334 }
335 
337 void QgsProviderMetadata::saveConnectionProtected( const QgsAbstractProviderConnection *conn, const QString &name )
338 {
339  const bool isNewConnection = !connections().contains( name );
340  conn->store( name );
341  mProviderConnections.clear();
342 
343  if ( !isNewConnection )
344  emit connectionChanged( name );
345  else
346  emit connectionCreated( name );
347 }
349 
350 template<typename T>
351 QMap<QString, T *> QgsProviderMetadata::connections( bool cached )
352 {
353  QMap<QString, T *> result;
354  const auto constConns { connections( cached ) };
355  const QStringList constConnKeys { constConns.keys() };
356  for ( const auto &c : constConnKeys )
357  {
358  T *casted { static_cast<T *>( constConns.value( c ) ) };
359  if ( casted )
360  {
361  result.insert( c, casted );
362  }
363  }
364  return result;
365 }
366 
368 
370  const QString &description,
371  const MeshDriverCapabilities &capabilities,
372  const QString &writeDatasetOnfileSuffix )
373  : mName( name )
374  , mDescription( description )
375  , mCapabilities( capabilities )
376  , mWriteDatasetOnFileSuffix( writeDatasetOnfileSuffix )
377 {
378 }
379 
381  const QString &description,
382  const MeshDriverCapabilities &capabilities,
383  const QString &writeDatasetOnfileSuffix,
384  const QString &writeMeshFrameOnFileSuffix,
385  int maxVerticesPerface )
386  : mName( name )
387  , mDescription( description )
388  , mCapabilities( capabilities )
389  , mWriteDatasetOnFileSuffix( writeDatasetOnfileSuffix )
390  , mWriteMeshFrameOnFileSuffix( ( writeMeshFrameOnFileSuffix ) )
391  , mMaxVerticesPerFace( maxVerticesPerface )
392 {
393 }
394 
395 QgsMeshDriverMetadata::MeshDriverCapabilities QgsMeshDriverMetadata::capabilities() const
396 {
397  return mCapabilities;
398 }
399 
401 {
402  return mName;
403 }
404 
406 {
407  return mDescription;
408 }
409 
411 {
412  return mWriteDatasetOnFileSuffix;
413 }
414 
416 {
417  return mWriteMeshFrameOnFileSuffix;
418 }
419 
421 {
422  return mMaxVerticesPerFace;
423 }
QgsProviderMetadata::dbConnections
QMap< QString, QgsAbstractDatabaseProviderConnection * > dbConnections(bool cached=true) SIP_THROW(QgsProviderConnectionException)
Returns a dictionary of database provider connections, the dictionary key is the connection identifie...
Definition: qgsprovidermetadata.cpp:290
QgsProviderMetadata::saveConnection
virtual void saveConnection(const QgsAbstractProviderConnection *connection, const QString &name) SIP_THROW(QgsProviderConnectionException)
Stores the connection in the settings.
Definition: qgsprovidermetadata.cpp:329
QgsMeshDriverMetadata::name
QString name() const
Returns the name (key) for this driver.
Definition: qgsprovidermetadata.cpp:400
QgsProviderMetadata::dataItemProviders
virtual QList< QgsDataItemProvider * > dataItemProviders() const
Returns data item providers.
Definition: qgsprovidermetadata.cpp:225
QgsProviderMetadata::createEmptyLayer
virtual Qgis::VectorExportResult createEmptyLayer(const QString &uri, const QgsFields &fields, QgsWkbTypes::Type wkbType, const QgsCoordinateReferenceSystem &srs, bool overwrite, QMap< int, int > &oldToNewAttrIdxMap, QString &errorMessage, const QMap< QString, QVariant > *options)
Creates new empty vector layer.
Definition: qgsprovidermetadata.cpp:185
QgsDataProvider::ProviderOptions
Setting options for creating vector data providers.
Definition: qgsdataprovider.h:107
QgsProviderMetadata::loadStyle
virtual QString loadStyle(const QString &uri, QString &errCause)
Loads a layer style defined by uri.
Definition: qgsprovidermetadata.cpp:262
QgsDataProvider
Abstract base class for spatial data provider implementations.
Definition: qgsdataprovider.h:40
QgsProviderMetadata::createConnection
virtual QgsAbstractProviderConnection * createConnection(const QString &uri, const QVariantMap &configuration) SIP_THROW(QgsProviderConnectionException)
Creates a new connection from uri and configuration, the newly created connection is not automaticall...
Definition: qgsprovidermetadata.cpp:316
Qgis::VectorExportResult
VectorExportResult
Vector layer export result codes.
Definition: qgis.h:449
QgsProviderMetadata::~QgsProviderMetadata
virtual ~QgsProviderMetadata()
dtor
Definition: qgsprovidermetadata.cpp:40
QgsProviderMetadata::FilterType
FilterType
Type of file filters.
Definition: qgsprovidermetadata.h:347
QgsProviderMetadata::capabilities
virtual QgsProviderMetadata::ProviderMetadataCapabilities capabilities() const
Returns the provider metadata capabilities.
Definition: qgsprovidermetadata.cpp:60
QgsLayerMetadata
A structured metadata store for a map layer.
Definition: qgslayermetadata.h:56
QgsFields
Container of fields for a vector layer.
Definition: qgsfields.h:44
Qgis::DataType
DataType
Raster data types.
Definition: qgis.h:128
QgsProviderMetadata::priorityForUri
virtual int priorityForUri(const QString &uri) const
Returns an integer representing the priority which this provider should have when opening a dataset w...
Definition: qgsprovidermetadata.cpp:105
QgsProviderMetadata::validLayerTypesForUri
virtual QList< QgsMapLayerType > validLayerTypesForUri(const QString &uri) const
Returns a list of valid layer types which the provider can be used with when opening the specified ur...
Definition: qgsprovidermetadata.cpp:110
QgsWkbTypes::Type
Type
The WKB type describes the number of dimensions a geometry has.
Definition: qgswkbtypes.h:69
QgsTransaction
This class allows including a set of layers in a database-side transaction, provided the layer data p...
Definition: qgstransaction.h:56
QgsMesh
Mesh - vertices, edges and faces.
Definition: qgsmeshdataprovider.h:58
QgsProviderMetadata::icon
virtual QIcon icon() const
Returns an icon representing the provider.
Definition: qgsprovidermetadata.cpp:55
QgsProviderMetadata::sidecarFilesForUri
virtual QStringList sidecarFilesForUri(const QString &uri) const
Given a uri, returns any sidecar files which are associated with the URI and this provider.
Definition: qgsprovidermetadata.cpp:120
QgsProviderMetadata::supportedLayerTypes
virtual QList< QgsMapLayerType > supportedLayerTypes() const
Returns a list of the map layer types supported by the provider.
Definition: qgsprovidermetadata.cpp:70
QgsProviderMetadata::encodeUri
virtual QString encodeUri(const QVariantMap &parts) const
Reassembles a provider data source URI from its component paths (e.g.
Definition: qgsprovidermetadata.cpp:180
QgsProviderMetadata::setBoolParameter
static void setBoolParameter(QVariantMap &uri, const QString &parameter, const QVariant &value)
Sets the value into the uri parameter as a bool.
Definition: qgsprovidermetadata.cpp:141
QgsProviderMetadata::deleteConnection
virtual void deleteConnection(const QString &name) SIP_THROW(QgsProviderConnectionException)
Removes the connection with the given name from the settings.
Definition: qgsprovidermetadata.cpp:323
QgsProviderMetadata::createRasterDataProvider
virtual QgsRasterDataProvider * createRasterDataProvider(const QString &uri, const QString &format, int nBands, Qgis::DataType type, int width, int height, double *geoTransform, const QgsCoordinateReferenceSystem &crs, const QStringList &createOptions=QStringList())
Creates a new instance of the raster data provider.
Definition: qgsprovidermetadata.cpp:195
QgsProviderMetadata::uriIsBlocklisted
virtual bool uriIsBlocklisted(const QString &uri) const
Returns true if the specified uri is known by this provider to be something which should be blocklist...
Definition: qgsprovidermetadata.cpp:115
QgsMeshDriverMetadata::description
QString description() const
Returns the description for this driver.
Definition: qgsprovidermetadata.cpp:405
QgsMeshDriverMetadata::QgsMeshDriverMetadata
QgsMeshDriverMetadata()
Constructs default metadata without any capabilities.
qgsprovidermetadata.h
QgsProviderMetadata::findConnection
QgsAbstractProviderConnection * findConnection(const QString &name, bool cached=true) SIP_THROW(QgsProviderConnectionException)
Searches and returns a (possibly NULL) connection from the stored provider connections.
Definition: qgsprovidermetadata.cpp:295
QgsProviderMetadata::QgsProviderMetadata
QgsProviderMetadata(const QString &key, const QString &description, const QString &library=QString())
Constructor for provider metadata.
Definition: qgsprovidermetadata.cpp:26
QgsMeshDriverMetadata::capabilities
MeshDriverCapabilities capabilities() const
Returns the capabilities for this driver.
Definition: qgsprovidermetadata.cpp:395
QgsProviderMetadata::CreateDataProviderFunction
std::function< QgsDataProvider *(const QString &, const QgsDataProvider::ProviderOptions &, QgsDataProvider::ReadFlags &) > CreateDataProviderFunction
Typedef for data provider creation function.
Definition: qgsprovidermetadata.h:212
QgsFeedback
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Definition: qgsfeedback.h:44
QgsProviderMetadata::connectionCreated
void connectionCreated(const QString &name)
Emitted when a connection with the specified name is created.
QgsProviderMetadata::key
QString key() const
This returns the unique key associated with the provider.
Definition: qgsprovidermetadata.cpp:45
QgsProviderMetadata::createProvider
virtual QgsDataProvider * createProvider(const QString &uri, const QgsDataProvider::ProviderOptions &options, QgsDataProvider::ReadFlags flags=QgsDataProvider::ReadFlags())
Class factory to return a pointer to a newly created QgsDataProvider object.
Definition: qgsprovidermetadata.cpp:130
QgsProviderMetadata::listStyles
virtual int listStyles(const QString &uri, QStringList &ids, QStringList &names, QStringList &descriptions, QString &errCause)
Lists stored layer styles in the provider defined by uri.
Definition: qgsprovidermetadata.cpp:230
qgsmaplayer.h
QgsProviderMetadata::querySublayers
virtual QList< QgsProviderSublayerDetails > querySublayers(const QString &uri, Qgis::SublayerQueryFlags flags=Qgis::SublayerQueryFlags(), QgsFeedback *feedback=nullptr) const
Queries the specified uri and returns a list of any valid sublayers found in the dataset which can be...
Definition: qgsprovidermetadata.cpp:125
QgsProviderMetadata::deleteStyleById
virtual bool deleteStyleById(const QString &uri, const QString &styleId, QString &errCause)
Deletes a layer style defined by styleId.
Definition: qgsprovidermetadata.cpp:249
QgsMeshDriverMetadata::writeDatasetOnFileSuffix
QString writeDatasetOnFileSuffix() const
Returns the suffix used to write datasets on file.
Definition: qgsprovidermetadata.cpp:410
QgsProviderConnectionException
Custom exception class for provider connection related exceptions.
Definition: qgsexception.h:100
QgsProviderMetadata::description
QString description() const
This returns descriptive text for the provider.
Definition: qgsprovidermetadata.cpp:50
QgsCoordinateReferenceSystem
This class represents a coordinate reference system (CRS).
Definition: qgscoordinatereferencesystem.h:211
QgsProviderMetadata::createTransaction
virtual QgsTransaction * createTransaction(const QString &connString)
Returns new instance of transaction.
Definition: qgsprovidermetadata.cpp:279
QgsMeshDriverMetadata::writeMeshFrameOnFileSuffix
QString writeMeshFrameOnFileSuffix() const
Returns the suffix used to write mesh on file.
Definition: qgsprovidermetadata.cpp:415
QgsProviderMetadata::providerCapabilities
virtual QgsProviderMetadata::ProviderCapabilities providerCapabilities() const
Returns the provider's capabilities.
Definition: qgsprovidermetadata.cpp:65
QgsProviderMetadata::boolParameter
static bool boolParameter(const QVariantMap &uri, const QString &parameter, bool defaultValue=false)
Returns the parameter value in the uri as a bool.
Definition: qgsprovidermetadata.cpp:157
QgsProviderMetadata::saveStyle
virtual bool saveStyle(const QString &uri, const QString &qmlStyle, const QString &sldStyle, const QString &styleName, const QString &styleDescription, const QString &uiFileContent, bool useAsDefault, QString &errCause)
Saves a layer style to provider.
Definition: qgsprovidermetadata.cpp:255
QgsProviderMetadata::createMeshData
virtual bool createMeshData(const QgsMesh &mesh, const QString &fileName, const QString &driverName, const QgsCoordinateReferenceSystem &crs) const
Creates mesh data source from a file name fileName and a driver driverName, that is the mesh frame st...
Definition: qgsprovidermetadata.cpp:205
QgsProviderMetadata::getStyleById
virtual QString getStyleById(const QString &uri, const QString &styleId, QString &errCause)
Gets a layer style defined by uri.
Definition: qgsprovidermetadata.cpp:243
c
As part of the API refactoring and improvements which landed in the Processing API was substantially reworked from the x version This was done in order to allow much of the underlying Processing framework to be ported into c
Definition: porting_processing.dox:1
QgsProviderMetadata::library
Q_DECL_DEPRECATED QString library() const
This returns the library file name.
Definition: qgsprovidermetadata.cpp:75
QgsProviderMetadata::decodeUri
virtual QVariantMap decodeUri(const QString &uri) const
Breaks a provider data source URI into its component paths (e.g.
Definition: qgsprovidermetadata.cpp:175
QgsProviderMetadata::createFunction
Q_DECL_DEPRECATED CreateDataProviderFunction createFunction() const
Returns a pointer to the direct provider creation function, if supported by the provider.
Definition: qgsprovidermetadata.cpp:80
qgsdataprovider.h
QgsProviderMetadata::initProvider
virtual void initProvider()
Initialize the provider.
Definition: qgsprovidermetadata.cpp:85
QgsProviderMetadata::styleExists
virtual bool styleExists(const QString &uri, const QString &styleId, QString &errorCause)
Returns true if a layer style with the specified styleId exists in the provider defined by uri.
Definition: qgsprovidermetadata.cpp:237
qgsexception.h
QgsNotSupportedException
Custom exception class which is raised when an operation is not supported.
Definition: qgsexception.h:117
QgsAbstractProviderConnection
The QgsAbstractProviderConnection provides an interface for data provider connections.
Definition: qgsabstractproviderconnection.h:44
QgsProviderMetadata::connectionChanged
void connectionChanged(const QString &name)
Emitted when the connection with the specified name is changed, e.g.
qgsprovidersublayerdetails.h
QgsProviderMetadata::meshDriversMetadata
virtual QList< QgsMeshDriverMetadata > meshDriversMetadata()
Builds the list of available mesh drivers metadata.
Definition: qgsprovidermetadata.cpp:100
QgsProviderMetadata::pyramidResamplingMethods
virtual QList< QPair< QString, QString > > pyramidResamplingMethods()
Returns pyramid resampling methods available for provider.
Definition: qgsprovidermetadata.cpp:220
qgsabstractdatabaseproviderconnection.h
QgsProviderMetadata::connections
virtual QMap< QString, QgsAbstractProviderConnection * > connections(bool cached=true) SIP_THROW(QgsProviderConnectionException)
Returns a dictionary of stored provider connections, the dictionary key is the connection identifier.
Definition: qgsprovidermetadata.cpp:284
QgsProviderMetadata::saveLayerMetadata
virtual bool saveLayerMetadata(const QString &uri, const QgsLayerMetadata &metadata, QString &errorMessage) SIP_THROW(QgsNotSupportedException)
Saves metadata to the layer corresponding to the specified uri.
Definition: qgsprovidermetadata.cpp:268
QgsMeshDriverMetadata::maximumVerticesCountPerFace
int maximumVerticesCountPerFace() const
Returns the maximum number of vertices per face supported by the driver.
Definition: qgsprovidermetadata.cpp:420
QgsRasterDataProvider
Base class for raster data providers.
Definition: qgsrasterdataprovider.h:88
QgsProviderMetadata::filters
virtual QString filters(FilterType type)
Builds the list of file filter strings (supported formats)
Definition: qgsprovidermetadata.cpp:95
QgsAbstractProviderConnection::store
virtual void store(const QString &name) const =0
Stores the connection in the settings.
QgsProviderMetadata::createDb
virtual bool createDb(const QString &dbPath, QString &errCause)
Creates database by the provider on the path.
Definition: qgsprovidermetadata.cpp:273
QgsProviderMetadata::cleanupProvider
virtual void cleanupProvider()
Cleanup the provider.
Definition: qgsprovidermetadata.cpp:90