QGIS API Documentation
2.8.2-Wien
|
A registry / canonical manager of data providers. More...
#include <qgsproviderregistry.h>
Public Types | |
typedef std::map< QString, QgsProviderMetadata * > | Providers |
open the given vector data source |
Public Member Functions | |
virtual | ~QgsProviderRegistry () |
Virtual dectructor. | |
virtual QString | databaseDrivers () const |
return a string containing the available database drivers | |
virtual QString | directoryDrivers () const |
return a string containing the available directory drivers | |
virtual QString | fileRasterFilters () const |
return raster file filter string | |
virtual QString | fileVectorFilters () const |
return vector file filter string | |
void * | function (const QString &providerKey, const QString &functionName) |
Get pointer to provider function. | |
QString | library (const QString &providerKey) const |
Return path for the library of the provider. | |
const QDir & | libraryDirectory () const |
return library directory where plugins are found | |
QString | pluginList (bool asHtml=false) const |
Return list of provider plugins found. | |
virtual QString | protocolDrivers () const |
return a string containing the available protocol drivers | |
QgsDataProvider * | provider (const QString &providerKey, const QString &dataSource) |
Create an instance of the provider. | |
int | providerCapabilities (const QString &providerKey) const |
Return the provider capabilities. | |
QLibrary * | providerLibrary (const QString &providerKey) const |
QStringList | providerList () const |
Return list of available providers by their keys. | |
const QgsProviderMetadata * | providerMetadata (const QString &providerKey) const |
Return metadata of the provider or NULL if not found. | |
void | registerGuis (QWidget *widget) |
QWidget * | selectWidget (const QString &providerKey, QWidget *parent=0, Qt::WindowFlags fl=0) |
void | setLibraryDirectory (const QDir &path) |
Set library directory where to search for plugins. |
Static Public Member Functions | |
static QgsProviderRegistry * | instance (QString pluginPath=QString::null) |
means of accessing canonical single instance |
A registry / canonical manager of data providers.
This is a Singleton class that manages data provider access.
Definition at line 40 of file qgsproviderregistry.h.
typedef std::map<QString, QgsProviderMetadata*> QgsProviderRegistry::Providers |
open the given vector data source
Similar to open(QString const &), except that the user specifies a data provider with which to open the data source instead of using the default data provider that QgsDataManager would figure out to use. This should be useful when (and if) there will exist more than one data provider that can handle a given data source. (E.g., use GDAL to open an SDTS file, or a different data provider that uses sdts++.)
Called by QgsDataManager::open().
name | could be a file, URI |
provider | is the key for the dataprovider used to open name |
Temporarily always returns false until finished implementing.
Eventually would be nice if could make QgsDataManager smart enough to figure out whether the given name mapped to a vector, raster, or database source.type for data provider metadata associative container
Definition at line 164 of file qgsproviderregistry.h.
|
virtual |
Virtual dectructor.
Definition at line 205 of file qgsproviderregistry.cpp.
|
virtual |
return a string containing the available database drivers
Definition at line 485 of file qgsproviderregistry.cpp.
|
virtual |
return a string containing the available directory drivers
Definition at line 490 of file qgsproviderregistry.cpp.
|
virtual |
return 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.
Definition at line 480 of file qgsproviderregistry.cpp.
|
virtual |
return 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.
It'd be nice to eventually be raster/vector neutral.
Definition at line 475 of file qgsproviderregistry.cpp.
void * QgsProviderRegistry::function | ( | const QString & | providerKey, |
const QString & | functionName | ||
) |
Get pointer to provider function.
providerKey | identificator of the provider |
functionName | name of function |
Definition at line 425 of file qgsproviderregistry.cpp.
|
static |
means of accessing canonical single instance
Definition at line 48 of file qgsproviderregistry.cpp.
QString QgsProviderRegistry::library | ( | const QString & | providerKey | ) | const |
Return path for the library of the provider.
Definition at line 249 of file qgsproviderregistry.cpp.
QDir const & QgsProviderRegistry::libraryDirectory | ( | ) | const |
return library directory where plugins are found
Definition at line 302 of file qgsproviderregistry.cpp.
QString QgsProviderRegistry::pluginList | ( | bool | asHtml = false | ) | const |
Return list of provider plugins found.
Definition at line 262 of file qgsproviderregistry.cpp.
|
virtual |
return a string containing the available protocol drivers
Definition at line 495 of file qgsproviderregistry.cpp.
QgsDataProvider * QgsProviderRegistry::provider | ( | const QString & | providerKey, |
const QString & | dataSource | ||
) |
Create an instance of the provider.
Copied from QgsVectorLayer::setDataProvider TODO: Make it work in the generic environment.
providerKey | identificator of the provider |
dataSource | string containing data source for the provider |
TODO: Is this class really the best place to put a data provider loader? It seems more sensible to provide the code in one place rather than in qgsrasterlayer, qgsvectorlayer, serversourceselect, etc.
Definition at line 320 of file qgsproviderregistry.cpp.
int QgsProviderRegistry::providerCapabilities | ( | const QString & | providerKey | ) | const |
Return the provider capabilities.
providerKey | identificator of the provider |
Definition at line 374 of file qgsproviderregistry.cpp.
QLibrary * QgsProviderRegistry::providerLibrary | ( | const QString & | providerKey | ) | const |
Definition at line 444 of file qgsproviderregistry.cpp.
QStringList QgsProviderRegistry::providerList | ( | ) | const |
Return list of available providers by their keys.
Definition at line 500 of file qgsproviderregistry.cpp.
const QgsProviderMetadata * QgsProviderRegistry::providerMetadata | ( | const QString & | providerKey | ) | const |
Return metadata of the provider or NULL if not found.
Definition at line 510 of file qgsproviderregistry.cpp.
void QgsProviderRegistry::registerGuis | ( | QWidget * | widget | ) |
Definition at line 460 of file qgsproviderregistry.cpp.
QWidget * QgsProviderRegistry::selectWidget | ( | const QString & | providerKey, |
QWidget * | parent = 0 , |
||
Qt::WindowFlags | fl = 0 |
||
) |
Definition at line 394 of file qgsproviderregistry.cpp.
void QgsProviderRegistry::setLibraryDirectory | ( | const QDir & | path | ) |
Set library directory where to search for plugins.
Definition at line 296 of file qgsproviderregistry.cpp.