QGIS API Documentation
3.26.3-Buenos Aires (65e4edfdad)
|
Go to the documentation of this file.
16 #ifndef QQGSDATAPROVIDER_H
17 #define QQGSDATAPROVIDER_H
19 #include "qgis_core.h"
23 #include <QStringList>
45 if ( qobject_cast<QgsVectorDataProvider *>( sipCpp ) )
47 sipType = sipType_QgsVectorDataProvider;
49 else if ( qobject_cast<QgsRasterDataProvider *>( sipCpp ) )
51 sipType = sipType_QgsRasterDataProvider;
53 else if ( qobject_cast<QgsMeshDataProvider *>( sipCpp ) )
55 sipType = sipType_QgsMeshDataProvider;
57 else if ( qobject_cast<QgsPointCloudDataProvider *>( sipCpp ) )
59 sipType = sipType_QgsPointCloudDataProvider;
78 NoDataCapabilities = 0,
84 Q_DECLARE_FLAGS( DataCapabilities, DataCapability )
123 FlagTrustDataSource = 1 << 0,
124 SkipFeatureCount = 1 << 1,
125 FlagLoadDefaultStyle = 1 << 2,
126 SkipGetExtent = 1 << 3,
127 SkipFullScan = 1 << 4,
129 Q_DECLARE_FLAGS( ReadFlags, ReadFlag )
138 QgsDataProvider::ReadFlags flags = QgsDataProvider::ReadFlags() );
154 mDataSourceURI = uri;
168 if ( expandAuthConfig && mDataSourceURI.contains( QLatin1String(
"authcfg" ) ) )
171 return uri.
uri( expandAuthConfig );
175 return mDataSourceURI;
196 mDataSourceURI = uri.
uri(
true );
214 virtual Qgis::DataProviderFlags flags()
const;
245 virtual
bool isValid() const = 0;
250 virtual
void updateExtents()
266 Q_UNUSED( updateFeatureCount )
298 return QStringList();
310 return QStringList();
331 if ( layers.count() < 1 )
345 if ( name.isEmpty() || !vis )
368 virtual QString name()
const = 0;
383 virtual QString description()
const = 0;
426 virtual void reloadData();
429 virtual QDateTime
timestamp()
const {
return mTimestamp; }
496 void setProviderProperty( ProviderProperty property,
const QVariant &value );
504 void setProviderProperty(
int property,
const QVariant &value );
512 QVariant providerProperty( ProviderProperty property,
const QVariant &defaultValue = QVariant() )
const;
520 QVariant providerProperty(
int property,
const QVariant &defaultValue )
const;
532 virtual void setListening(
bool isListening );
544 double lastRenderingTimeMs = -1;
547 double maxRenderingTimeMs = MAXIMUM_LAYER_PREVIEW_TIME_MS;
612 static QString sublayerSeparator();
622 void fullExtentCalculated();
645 void notify( const QString &msg );
653 QDateTime mTimestamp;
665 QgsDataProvider::ReadFlags mReadFlags = QgsDataProvider::ReadFlags();
673 QString mDataSourceURI;
677 QMap< int, QVariant > mProviderProperties;
682 mutable QMutex mOptionsMutex;
688 virtual void reloadProviderData() {}
Class for storing the component parts of a RDBMS data source URI (e.g. a Postgres data source).
virtual QStringList subLayerStyles() const
Sub-layer styles for each sub-layer handled by this provider, in order from bottom to top.
virtual uint subLayerCount() const
Returns the number of layers for the current data source.
Contains information about the context in which a coordinate transform is executed.
virtual bool supportsSubsetString() const
Returns true if the provider supports setting of subset strings.
Setting options for creating vector data providers.
Abstract base class for spatial data provider implementations.
virtual void setSubLayerVisibility(const QString &name, bool vis)
Set the visibility of the given sublayer name.
const QgsCoordinateReferenceSystem & crs
virtual bool setSubsetString(const QString &subset, bool updateFeatureCount=true)
Set the subset string used to create a subset of features in the layer.
virtual void invalidateConnections(const QString &connection)
Invalidate connections corresponding to specified name.
virtual QgsError error() const
Gets current status error.
QgsError is container for error messages (report). It may contain chain (sort of traceback) of error ...
virtual QString dataSourceUri(bool expandAuthConfig=false) const
Gets the data source specification.
void append(const QString &message, const QString &tag)
Append new error message.
ProviderProperty
Properties are used to pass custom configuration options into data providers.
A rectangle specified with double values.
virtual QDateTime timestamp() const
Time stamp of data source in the moment when data/metadata were loaded by provider.
Base class for handling properties relating to a data provider's temporal capabilities.
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)
@ EvaluateDefaultValues
Evaluate default values on provider side when calling QgsVectorDataProvider::defaultValue( int index ...
void setUri(const QgsDataSourceUri &uri)
Set the data source specification.
virtual bool writeLayerMetadata(const QgsLayerMetadata &metadata)
Writes layer metadata to the underlying provider source.
virtual bool enterUpdateMode()
Enter update mode.
Stores settings related to the context in which a preview job runs.
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsField::ConfigurationFlags) CORE_EXPORT QDataStream &operator<<(QDataStream &out
Writes the field to stream out. QGIS version compatibility is not guaranteed.
void setError(const QgsError &error)
Sets error message.
QgsErrorMessage represents single error message.
This class represents a coordinate reference system (CRS).
virtual QDateTime dataTimestamp() const
Current time stamp of data source.
virtual QString fileVectorFilters() const
Returns vector file filter string.
virtual void setDataSourceUri(const QString &uri)
Set the data source specification.
QgsCoordinateTransformContext transformContext
Coordinate transform context.
QString uri(bool expandAuthConfig=true) const
Returns the complete URI as a string.
QgsDataSourceUri uri() const
Gets the data source specification.
virtual bool leaveUpdateMode()
Leave update mode.
virtual QString subsetString() const
Returns the subset definition string (typically sql) currently in use by the layer and used by the pr...
virtual QgsLayerMetadata layerMetadata() const
Returns layer metadata collected from the provider's source.
virtual QString dataComment() const
Returns a short comment for the data that this provider is providing access to (e....
ReadFlag
Flags which control dataprovider construction.
DataCapability
Used in browser model to understand which items for which providers should be populated.
virtual void setLayerOrder(const QStringList &layers)
Reorder the list of layer names to be rendered by this provider (in order from bottom to top)
virtual QString fileRasterFilters() const
Returns raster file filter string.
virtual QStringList subLayers() const
Sub-layers handled by this provider, in order from bottom to top.