mirror of
https://github.com/qgis/QGIS.git
synced 2025-11-10 00:09:28 -05:00
The trust flag at the projetc level is only used to read vector layer extent from xml, not from provider. This flag was not available at the vector layer and data provider level. We propose a new QgsMapLayer reading flag to propagate the trust layer metadata prohect's read flag an d a new provider options to trust datasource config. Trusting the datasource config means that the provider can use estimated metadata, the primary key is unique and the detectable geometry type and srid are the same as the requested.
389 lines
11 KiB
Plaintext
389 lines
11 KiB
Plaintext
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/core/qgsproviderregistry.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
************************************************************************/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class QgsProviderRegistry
|
|
{
|
|
%Docstring
|
|
A registry / canonical manager of data providers.
|
|
|
|
This is a Singleton class that manages data provider access.
|
|
|
|
Providers can be either loaded via libraries or native providers that
|
|
are included in the core QGIS installation and accessed through function pointers.
|
|
|
|
Loaded providers may be restricted using QGIS_PROVIDER_FILE environment variable.
|
|
QGIS_PROVIDER_FILE is regexp pattern applied to provider file name (not provider key).
|
|
For example, if the variable is set to gdal|ogr|postgres it will load only providers gdal,
|
|
ogr and postgres.
|
|
%End
|
|
|
|
%TypeHeaderCode
|
|
#include "qgsproviderregistry.h"
|
|
%End
|
|
public:
|
|
|
|
enum WidgetMode
|
|
{
|
|
|
|
None,
|
|
|
|
Embedded,
|
|
|
|
Manager,
|
|
};
|
|
|
|
static QgsProviderRegistry *instance( const QString &pluginPath = QString() );
|
|
%Docstring
|
|
Means of accessing canonical single instance
|
|
%End
|
|
|
|
virtual ~QgsProviderRegistry();
|
|
|
|
QString library( const QString &providerKey ) const /Deprecated/;
|
|
%Docstring
|
|
Returns path for the library of the provider.
|
|
|
|
If the provider uses direct provider function pointers instead of a library an empty string will
|
|
be returned.
|
|
|
|
.. deprecated::
|
|
QGIS 3.10 - providers may not need to be loaded from a library (empty string returned)
|
|
%End
|
|
|
|
QString pluginList( bool asHtml = false ) const;
|
|
%Docstring
|
|
Returns list of provider plugins found
|
|
%End
|
|
|
|
QDir libraryDirectory() const;
|
|
%Docstring
|
|
Returns the library directory where plugins are found.
|
|
%End
|
|
|
|
void setLibraryDirectory( const QDir &path );
|
|
%Docstring
|
|
Sets library directory where to search for plugins
|
|
%End
|
|
|
|
QgsDataProvider *createProvider( const QString &providerKey,
|
|
const QString &dataSource,
|
|
const QgsDataProvider::ProviderOptions &options = QgsDataProvider::ProviderOptions(),
|
|
QgsDataProvider::ReadFlags flags = QgsDataProvider::ReadFlags() ) /Factory/;
|
|
%Docstring
|
|
Creates a new instance of a provider.
|
|
|
|
:param providerKey: identifier of the provider
|
|
:param dataSource: string containing data source for the provider
|
|
:param options: provider options
|
|
:param flags: provider flags since QGIS 3.16
|
|
|
|
:return: new instance of provider or ``None`` on error
|
|
|
|
.. seealso:: :py:func:`createRasterDataProvider`
|
|
%End
|
|
|
|
int providerCapabilities( const QString &providerKey ) const /Deprecated/;
|
|
%Docstring
|
|
Returns the provider capabilities
|
|
|
|
:param providerKey: identifier of the provider
|
|
|
|
.. versionadded:: 2.6
|
|
|
|
.. deprecated::
|
|
QGIS 3.10 (use instead capabilities() method of individual data item provider)
|
|
%End
|
|
|
|
|
|
virtual QgsRasterDataProvider *createRasterDataProvider(
|
|
const QString &providerKey,
|
|
const QString &uri,
|
|
const QString &format,
|
|
int nBands,
|
|
Qgis::DataType type,
|
|
int width, int height,
|
|
double *geoTransform,
|
|
const QgsCoordinateReferenceSystem &crs,
|
|
const QStringList &createOptions = QStringList() ) /Factory/;
|
|
%Docstring
|
|
Creates new instance of raster data provider
|
|
|
|
.. seealso:: :py:func:`createProvider`
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
QList<QPair<QString, QString> > pyramidResamplingMethods( const QString &providerKey );
|
|
%Docstring
|
|
Returns list of raster pyramid resampling methods
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
QVariantMap decodeUri( const QString &providerKey, const QString &uri );
|
|
%Docstring
|
|
Breaks a provider data source URI into its component paths (e.g. file path, layer name).
|
|
|
|
:param providerKey: identifier of the provider
|
|
:param uri: uri string
|
|
|
|
:return: map containing components. Standard components include "path", "layerName", "url".
|
|
|
|
.. note::
|
|
|
|
this function may not be supported by all providers, an empty map will be returned in such case
|
|
|
|
.. versionadded:: 3.4
|
|
%End
|
|
|
|
QString encodeUri( const QString &providerKey, const QVariantMap &parts );
|
|
%Docstring
|
|
Reassembles a provider data source URI from its component paths (e.g. file path, layer name).
|
|
|
|
:param providerKey: identifier of the provider
|
|
:param parts: parts as returned by decodeUri
|
|
|
|
:return: datasource uri string
|
|
|
|
.. note::
|
|
|
|
this function may not be supported by all providers, an empty string will be returned in such case
|
|
|
|
.. seealso:: :py:func:`decodeUri`
|
|
|
|
.. versionadded:: 3.12
|
|
%End
|
|
|
|
QWidget *createSelectionWidget( const QString &providerKey, QWidget *parent = 0, Qt::WindowFlags fl = Qt::WindowFlags(), QgsProviderRegistry::WidgetMode widgetMode = QgsProviderRegistry::WidgetMode::None ) /Deprecated/;
|
|
%Docstring
|
|
Returns a new widget for selecting layers from a provider.
|
|
Either the ``parent`` widget must be set or the caller becomes
|
|
responsible for deleting the returned widget.
|
|
|
|
.. deprecated::
|
|
QGIS 3.10 - use QgsGui.sourceSelectProviderRegistry()->createDataSourceWidget() instead
|
|
%End
|
|
|
|
QList< QgsDataItemProvider * > dataItemProviders( const QString &providerKey ) const /Factory/;
|
|
%Docstring
|
|
Returns list of data item providers of the provider
|
|
|
|
.. note::
|
|
|
|
Ownership of created data item providers is passed to the caller.
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
int listStyles( const QString &providerKey,
|
|
const QString &uri,
|
|
QStringList &ids,
|
|
QStringList &names,
|
|
QStringList &descriptions,
|
|
QString &errCause );
|
|
%Docstring
|
|
Lists stored layer styles in the provider defined by ``providerKey`` and ``uri``
|
|
|
|
:return: -1 if not implemented by provider, otherwise number of styles stored
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
QString getStyleById( const QString &providerKey, const QString &uri, QString styleId, QString &errCause );
|
|
%Docstring
|
|
Gets a layer style defined by ``styleId``
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
bool deleteStyleById( const QString &providerKey, const QString &uri, QString styleId, QString &errCause );
|
|
%Docstring
|
|
Deletes a layer style defined by ``styleId``
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
bool saveStyle( const QString &providerKey, const QString &uri, const QString &qmlStyle, const QString &sldStyle,
|
|
const QString &styleName, const QString &styleDescription,
|
|
const QString &uiFileContent, bool useAsDefault, QString &errCause );
|
|
%Docstring
|
|
Saves a layer style to provider
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
QString loadStyle( const QString &providerKey, const QString &uri, QString &errCause );
|
|
%Docstring
|
|
Loads a layer style defined by ``uri``
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
bool createDb( const QString &providerKey, const QString &dbPath, QString &errCause );
|
|
%Docstring
|
|
Creates database by the provider on the path
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
QgsTransaction *createTransaction( const QString &providerKey, const QString &connString ) /Factory/;
|
|
%Docstring
|
|
Returns new instance of transaction. Ownership is transferred to the caller
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
QFunctionPointer function( const QString &providerKey, const QString &functionName ) /Deprecated/;
|
|
%Docstring
|
|
Gets pointer to provider function
|
|
|
|
:param providerKey: identifier of the provider
|
|
:param functionName: name of function
|
|
|
|
:return: pointer to function or ``None`` on error. If the provider uses direct provider
|
|
function pointers instead of a library ``None`` will be returned.
|
|
|
|
.. deprecated::
|
|
QGIS 3.10 - any provider functionality should be accessed through QgsProviderMetadata
|
|
%End
|
|
|
|
QLibrary *createProviderLibrary( const QString &providerKey ) const /Factory,Deprecated/;
|
|
%Docstring
|
|
Returns a new QLibrary for the specified ``providerKey``. Ownership of the returned
|
|
object is transferred to the caller and the caller is responsible for deleting it.
|
|
|
|
If the provider uses direct provider function pointers instead of a library ``None`` will
|
|
be returned.
|
|
|
|
.. deprecated::
|
|
QGIS 3.10 - providers may not need to be loaded from a library
|
|
%End
|
|
|
|
QStringList providerList() const;
|
|
%Docstring
|
|
Returns list of available providers by their keys
|
|
%End
|
|
|
|
QgsProviderMetadata *providerMetadata( const QString &providerKey ) const;
|
|
%Docstring
|
|
Returns metadata of the provider or ``None`` if not found
|
|
%End
|
|
|
|
virtual QString fileVectorFilters() const;
|
|
%Docstring
|
|
Returns vector file filter string
|
|
|
|
Returns a string suitable for a QFileDialog of vector file formats
|
|
supported by all data providers.
|
|
|
|
This walks through all data providers appending calls to their
|
|
fileVectorFilters to a string, which is then returned.
|
|
|
|
\note
|
|
|
|
It'd be nice to eventually be raster/vector neutral.
|
|
%End
|
|
|
|
virtual QString fileRasterFilters() const;
|
|
%Docstring
|
|
Returns raster file filter string
|
|
|
|
Returns a string suitable for a QFileDialog of raster file formats
|
|
supported by all data providers.
|
|
|
|
This walks through all data providers appending calls to their
|
|
buildSupportedRasterFileFilter to a string, which is then returned.
|
|
|
|
.. note::
|
|
|
|
This replaces :py:func:`QgsRasterLayer.buildSupportedRasterFileFilter()`
|
|
%End
|
|
|
|
virtual QString fileMeshFilters() const;
|
|
%Docstring
|
|
Returns mesh file filter string
|
|
|
|
Returns a string suitable for a QFileDialog of mesh file formats
|
|
supported by all data providers.
|
|
|
|
This walks through all data providers appending calls to their
|
|
fileMeshFilters to a string, which is then returned.
|
|
|
|
.. seealso:: :py:func:`fileMeshDatasetFilters`
|
|
|
|
.. versionadded:: 3.6
|
|
%End
|
|
|
|
virtual QString fileMeshDatasetFilters() const;
|
|
%Docstring
|
|
Returns mesh's dataset file filter string
|
|
|
|
Returns a string suitable for a QFileDialog of mesh datasets file formats
|
|
supported by all data providers.
|
|
|
|
This walks through all data providers appending calls to their
|
|
fileMeshFilters to a string, which is then returned.
|
|
|
|
.. seealso:: :py:func:`fileMeshFilters`
|
|
|
|
.. versionadded:: 3.6
|
|
%End
|
|
|
|
virtual QString databaseDrivers() const;
|
|
%Docstring
|
|
Returns a string containing the available database drivers
|
|
%End
|
|
virtual QString directoryDrivers() const;
|
|
%Docstring
|
|
Returns a string containing the available directory drivers
|
|
%End
|
|
virtual QString protocolDrivers() const;
|
|
%Docstring
|
|
Returns a string containing the available protocol drivers
|
|
%End
|
|
|
|
void registerGuis( QWidget *widget ) /Deprecated/;
|
|
%Docstring
|
|
|
|
.. deprecated:: QGIS 3.10
|
|
- does nothing - use QgsGui.providerGuiRegistry()
|
|
%End
|
|
|
|
bool registerProvider( QgsProviderMetadata *providerMetadata /Transfer/ );
|
|
%Docstring
|
|
register a new vector data provider from its ``providerMetadata``
|
|
|
|
:return: ``True`` on success, ``False`` if a provider with the same key was already registered
|
|
|
|
.. note::
|
|
|
|
ownership of the QgsProviderMetadata instance is transferred to the registry
|
|
|
|
.. versionadded:: 3.2
|
|
%End
|
|
|
|
|
|
private:
|
|
QgsProviderRegistry( const QString &pluginPath );
|
|
}; // class QgsProviderRegistry
|
|
|
|
|
|
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/core/qgsproviderregistry.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
************************************************************************/
|