QGIS API Documentation
3.14.0-Pi (9f7028fd23)
|
#include <qgsrasterdataprovider.h>
Public Types | |
enum | ProviderCapability { NoProviderCapabilities = 0, ReadLayerMetadata = 1 << 1, WriteLayerMetadata = 1 << 2, ProviderHintBenefitsFromResampling = 1 << 3 } |
Enumeration with capabilities that raster providers might implement. More... | |
enum | TransformType { TransformImageToLayer, TransformLayerToImage } |
Types of transformation in transformCoordinates() function. More... | |
Public Types inherited from QgsDataProvider | |
enum | DataCapability { NoDataCapabilities = 0, File = 1, Dir = 1 << 1, Database = 1 << 2, Net = 1 << 3 } |
Used in browser model to understand which items for which providers should be populated. More... | |
enum | ProviderProperty { EvaluateDefaultValues, CustomData = 3000 } |
Properties are used to pass custom configuration options into data providers. More... | |
Public Types inherited from QgsRasterInterface | |
enum | Capability { NoCapabilities = 0, Size = 1 << 1, Create = 1 << 2, Remove = 1 << 3, BuildPyramids = 1 << 4, Identify = 1 << 5, IdentifyValue = 1 << 6, IdentifyText = 1 << 7, IdentifyHtml = 1 << 8, IdentifyFeature = 1 << 9, Prefetch = 1 << 10 } |
If you add to this, please also add to capabilitiesString() More... | |
Signals | |
void | statusChanged (const QString &) const |
Emit a message to be displayed on status bar, usually used by network providers (WMS,WCS) More... | |
Signals inherited from QgsDataProvider | |
void | dataChanged () |
Emitted whenever a change is made to the data provider which may have caused changes in the provider's data OUTSIDE of QGIS. More... | |
void | fullExtentCalculated () |
Emitted whenever a deferred extent calculation is completed by the provider. More... | |
void | notify (const QString &msg) |
Emitted when the datasource issues a notification. More... | |
Public Member Functions | |
QgsRasterDataProvider () | |
Provider capabilities. More... | |
QgsRasterDataProvider (const QString &uri, const QgsDataProvider::ProviderOptions &providerOptions=QgsDataProvider::ProviderOptions()) | |
Constructor for QgsRasterDataProvider. More... | |
virtual double | bandOffset (int bandNo) const |
Read band offset for raster value. More... | |
virtual double | bandScale (int bandNo) const |
Read band scale for raster value. More... | |
QgsRasterBlock * | block (int bandNo, const QgsRectangle &boundingBox, int width, int height, QgsRasterBlockFeedback *feedback=nullptr) override |
Read block of data using given extent and size. More... | |
virtual QList< QgsRasterPyramid > | buildPyramidList (QList< int > overviewList=QList< int >()) |
Returns the raster layers pyramid list. More... | |
virtual QString | buildPyramids (const QList< QgsRasterPyramid > &pyramidList, const QString &resamplingMethod="NEAREST", QgsRaster::RasterPyramidsFormat format=QgsRaster::PyramidsGTiff, const QStringList &configOptions=QStringList(), QgsRasterBlockFeedback *feedback=nullptr) |
Create pyramid overviews. More... | |
QgsRasterInterface * | clone () const override=0 |
Clone itself, create deep copy. More... | |
virtual int | colorInterpretation (int bandNo) const |
Returns data type for the band specified by number. More... | |
virtual QString | colorInterpretationName (int bandNo) const |
QString | colorName (int colorInterpretation) const |
virtual QList< QgsColorRampShader::ColorRampItem > | colorTable (int bandNo) const |
QDateTime | dataTimestamp () const override |
Current time stamp of data source. More... | |
Qgis::DataType | dataType (int bandNo) const override=0 |
Returns data type for the band specified by number. More... | |
int | dpi () const |
Returns the dpi of the output device. More... | |
QgsRectangle | extent () const override=0 |
Returns the extent of the layer. More... | |
virtual QgsFields | fields () const |
Returns the fields of the raster layer for data providers that expose them, the default implementation returns an empty list. More... | |
virtual QImage | getLegendGraphic (double scale=0, bool forceRefresh=false, const QgsRectangle *visibleExtent=nullptr) |
Returns the legend rendered as pixmap. More... | |
virtual QgsImageFetcher * | getLegendGraphicFetcher (const QgsMapSettings *mapSettings) |
Returns a new image downloader for the raster legend. More... | |
bool | hasPyramids () |
Returns true if raster has at least one populated histogram. More... | |
virtual QString | htmlMetadata ()=0 |
Returns metadata in a format suitable for feeding directly into a subset of the GUI raster properties "Metadata" tab. More... | |
virtual QgsRasterIdentifyResult | identify (const QgsPointXY &point, QgsRaster::IdentifyFormat format, const QgsRectangle &boundingBox=QgsRectangle(), int width=0, int height=0, int dpi=96) |
Identify raster value(s) found on the point position. More... | |
virtual bool | ignoreExtents () const |
Returns true if the extents reported by the data provider are not reliable and it's possible that there is renderable content outside of these extents. More... | |
virtual bool | isEditable () const |
Checks whether the provider is in editing mode, i.e. More... | |
virtual QString | lastError ()=0 |
Returns the verbose error text for the last error in this provider. More... | |
virtual QString | lastErrorFormat () |
Returns the format of the error text for the last error in this provider. More... | |
virtual QString | lastErrorTitle ()=0 |
Returns the caption error text for the last error in this provider. More... | |
virtual QList< double > | nativeResolutions () const |
Returns a list of native resolutions if available, i.e. More... | |
virtual QgsRasterDataProvider::ProviderCapabilities | providerCapabilities () const |
Returns flags containing the supported capabilities of the data provider. More... | |
virtual bool | reload () |
Reload data (data could change) More... | |
virtual bool | remove () |
Remove dataset. More... | |
virtual double | sample (const QgsPointXY &point, int band, bool *ok=nullptr, const QgsRectangle &boundingBox=QgsRectangle(), int width=0, int height=0, int dpi=96) |
Samples a raster value from the specified band found at the point position. More... | |
void | setDpi (int dpi) |
Sets the output device resolution. More... | |
virtual bool | setEditable (bool enabled) |
Turns on/off editing mode of the provider. More... | |
bool | setInput (QgsRasterInterface *input) override |
Set input. More... | |
virtual bool | setNoDataValue (int bandNo, double noDataValue) |
Set no data value on created dataset. More... | |
virtual void | setUserNoDataValue (int bandNo, const QgsRasterRangeList &noData) |
virtual void | setUseSourceNoDataValue (int bandNo, bool use) |
Sets the source nodata value usage. More... | |
Qgis::DataType | sourceDataType (int bandNo) const override=0 |
Returns source data type for the band specified by number, source data type may be shorter than dataType. More... | |
virtual bool | sourceHasNoDataValue (int bandNo) const |
Returns true if source band has no data value. More... | |
virtual double | sourceNoDataValue (int bandNo) const |
Value representing no data value. More... | |
virtual int | stepHeight () const |
Step height for raster iterations. More... | |
virtual int | stepWidth () const |
Step width for raster iterations. More... | |
QStringList | subLayers () const override |
Returns the sublayers of this layer - useful for providers that manage their own layers, such as WMS. More... | |
virtual bool | supportsLegendGraphic () const |
Returns whether the provider supplies a legend graphic. More... | |
const QgsRasterDataProviderTemporalCapabilities * | temporalCapabilities () const override |
Returns the provider's temporal capabilities. More... | |
QgsRasterDataProviderTemporalCapabilities * | temporalCapabilities () override |
Returns the provider's temporal capabilities. More... | |
QDateTime | timestamp () const override |
Time stamp of data source in the moment when data/metadata were loaded by provider. More... | |
virtual QgsPoint | transformCoordinates (const QgsPoint &point, TransformType type) |
Transforms coordinates between source image coordinate space [0..width]x[0..height] and layer coordinate space (georeferenced coordinates). More... | |
virtual QgsRasterRangeList | userNoDataValues (int bandNo) const |
Returns a list of user no data value ranges. More... | |
virtual bool | useSourceNoDataValue (int bandNo) const |
Returns the source nodata value usage. More... | |
virtual QString | validateCreationOptions (const QStringList &createOptions, const QString &format) |
Validates creation options for a specific dataset and destination format. More... | |
virtual QString | validatePyramidsConfigOptions (QgsRaster::RasterPyramidsFormat pyramidsFormat, const QStringList &configOptions, const QString &fileFormat) |
Validates pyramid creation options for a specific dataset and destination format. More... | |
virtual bool | write (void *data, int band, int width, int height, int xOffset, int yOffset) |
Writes into the provider datasource. More... | |
bool | writeBlock (QgsRasterBlock *block, int band, int xOffset=0, int yOffset=0) |
Writes pixel data from a raster block into the provider data source. More... | |
Public Member Functions inherited from QgsDataProvider | |
QgsDataProvider (const QString &uri=QString(), const QgsDataProvider::ProviderOptions &providerOptions=QgsDataProvider::ProviderOptions()) | |
Create a new dataprovider with the specified in the uri. More... | |
virtual QgsCoordinateReferenceSystem | crs () const =0 |
Returns the coordinate system for the data source. More... | |
virtual QString | dataComment () const |
Returns a short comment for the data that this provider is providing access to (e.g. More... | |
virtual QString | dataSourceUri (bool expandAuthConfig=false) const |
Gets the data source specification. More... | |
virtual QString | description () const =0 |
Returns description. More... | |
virtual bool | enterUpdateMode () |
Enter update mode. More... | |
virtual QgsError | error () const |
Gets current status error. More... | |
virtual QString | fileRasterFilters () const |
Returns raster file filter string. More... | |
virtual QString | fileVectorFilters () const |
Returns vector file filter string. More... | |
virtual void | invalidateConnections (const QString &connection) |
Invalidate connections corresponding to specified name. More... | |
virtual bool | isValid () const =0 |
Returns true if this is a valid layer. More... | |
virtual QgsLayerMetadata | layerMetadata () const |
Returns layer metadata collected from the provider's source. More... | |
virtual bool | leaveUpdateMode () |
Leave update mode. More... | |
virtual QString | name () const =0 |
Returns a provider name. More... | |
QVariant | providerProperty (int property, const QVariant &defaultValue) const |
Gets the current value of a certain provider property. More... | |
QVariant | providerProperty (ProviderProperty property, const QVariant &defaultValue=QVariant()) const |
Gets the current value of a certain provider property. More... | |
virtual void | reloadData () |
Reloads the data from the source by calling reloadProviderData() implemented by providers with data caches to synchronize, changes in the data source, feature counts and other specific actions. More... | |
virtual bool | renderInPreview (const QgsDataProvider::PreviewContext &context) |
Returns whether the layer must be rendered in preview jobs. More... | |
virtual void | setDataSourceUri (const QString &uri) |
Set the data source specification. More... | |
virtual void | setLayerOrder (const QStringList &layers) |
Reorder the list of layer names to be rendered by this provider (in order from bottom to top) More... | |
virtual void | setListening (bool isListening) |
Set whether the provider will listen to datasource notifications If set, the provider will issue notify signals. More... | |
void | setProviderProperty (int property, const QVariant &value) |
Allows setting arbitrary properties on the provider. More... | |
void | setProviderProperty (ProviderProperty property, const QVariant &value) |
Allows setting arbitrary properties on the provider. More... | |
virtual void | setSubLayerVisibility (const QString &name, bool vis) |
Set the visibility of the given sublayer name. More... | |
virtual bool | setSubsetString (const QString &subset, bool updateFeatureCount=true) |
Set the subset string used to create a subset of features in the layer. More... | |
virtual void | setTransformContext (const QgsCoordinateTransformContext &transformContext) |
Sets data coordinate transform context to transformContext. More... | |
void | setUri (const QgsDataSourceUri &uri) |
Set the data source specification. More... | |
virtual uint | subLayerCount () const |
Returns the number of layers for the current data source. More... | |
virtual QStringList | subLayerStyles () const |
Sub-layer styles for each sub-layer handled by this provider, in order from bottom to top. More... | |
virtual QString | subsetString () const |
Returns the subset definition string (typically sql) currently in use by the layer and used by the provider to limit the feature set. More... | |
virtual bool | supportsSubsetString () const |
Returns true if the provider supports setting of subset strings. More... | |
QgsCoordinateTransformContext | transformContext () const |
Returns data provider coordinate transform context. More... | |
virtual void | updateExtents () |
Update the extents of the layer. More... | |
QgsDataSourceUri | uri () const |
Gets the data source specification. More... | |
virtual bool | writeLayerMetadata (const QgsLayerMetadata &metadata) |
Writes layer metadata to the underlying provider source. More... | |
Public Member Functions inherited from QgsRasterInterface | |
QgsRasterInterface (QgsRasterInterface *input=nullptr) | |
virtual | ~QgsRasterInterface ()=default |
virtual int | bandCount () const =0 |
Gets number of bands. More... | |
virtual QgsRasterBandStats | bandStatistics (int bandNo, int stats=QgsRasterBandStats::All, const QgsRectangle &extent=QgsRectangle(), int sampleSize=0, QgsRasterBlockFeedback *feedback=nullptr) |
Returns the band statistics. More... | |
virtual int | capabilities () const |
Returns a bitmask containing the supported capabilities. More... | |
QString | capabilitiesString () const |
Returns the raster interface capabilities in friendly format. More... | |
virtual void | cumulativeCut (int bandNo, double lowerCount, double upperCount, double &lowerValue, double &upperValue, const QgsRectangle &extent=QgsRectangle(), int sampleSize=0) |
Find values for cumulative pixel count cut. More... | |
int | dataTypeSize (int bandNo) |
virtual QString | generateBandName (int bandNumber) const |
helper function to create zero padded band names More... | |
virtual bool | hasHistogram (int bandNo, int binCount, double minimum=std::numeric_limits< double >::quiet_NaN(), double maximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &extent=QgsRectangle(), int sampleSize=0, bool includeOutOfRange=false) |
Returns true if histogram is available (cached, already calculated) More... | |
virtual bool | hasStatistics (int bandNo, int stats=QgsRasterBandStats::All, const QgsRectangle &extent=QgsRectangle(), int sampleSize=0) |
Returns true if histogram is available (cached, already calculated). More... | |
virtual QgsRasterHistogram | histogram (int bandNo, int binCount=0, double minimum=std::numeric_limits< double >::quiet_NaN(), double maximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &extent=QgsRectangle(), int sampleSize=0, bool includeOutOfRange=false, QgsRasterBlockFeedback *feedback=nullptr) |
Returns a band histogram. More... | |
virtual QgsRasterInterface * | input () const |
Current input. More... | |
virtual bool | on () const |
Returns whether the interface is on or off. More... | |
virtual void | readXml (const QDomElement &filterElem) |
Sets base class members from xml. Usually called from create() methods of subclasses. More... | |
virtual void | setOn (bool on) |
Sets whether the interface is on or off. More... | |
virtual QgsRasterInterface * | sourceInput () |
Gets source / raw input, the first in pipe, usually provider. More... | |
virtual const QgsRasterInterface * | sourceInput () const |
Gets source / raw input, the first in pipe, usually provider. More... | |
virtual void | writeXml (QDomDocument &doc, QDomElement &parentElem) const |
Write base class members to xml. More... | |
virtual int | xBlockSize () const |
Gets block size. More... | |
virtual int | xSize () const |
Gets raster size. More... | |
virtual int | yBlockSize () const |
virtual int | ySize () const |
Static Public Member Functions | |
static QgsRasterDataProvider * | create (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()) |
Creates a new dataset with mDataSourceURI. More... | |
static QgsRaster::IdentifyFormat | identifyFormatFromName (const QString &formatName) |
static QString | identifyFormatLabel (QgsRaster::IdentifyFormat format) |
static QString | identifyFormatName (QgsRaster::IdentifyFormat format) |
static Capability | identifyFormatToCapability (QgsRaster::IdentifyFormat format) |
static QList< QPair< QString, QString > > | pyramidResamplingMethods (const QString &providerKey) |
Returns a list of pyramid resampling method name and label pairs for given provider. More... | |
Static Public Member Functions inherited from QgsDataProvider | |
static QString | sublayerSeparator () |
String sequence used for separating components of sublayers strings. More... | |
Protected Member Functions | |
void | copyBaseSettings (const QgsRasterDataProvider &other) |
Copy member variables from other raster data provider. Useful for implementation of clone() method in subclasses. More... | |
virtual bool | readBlock (int bandNo, int xBlock, int yBlock, void *data) |
Reads a block of raster data into data. More... | |
virtual bool | readBlock (int bandNo, QgsRectangle const &viewExtent, int width, int height, void *data, QgsRasterBlockFeedback *feedback=nullptr) |
Reads a block of raster data into data, using the given extent and size. More... | |
bool | userNoDataValuesContains (int bandNo, double value) const |
Returns true if user no data contains value. More... | |
Protected Member Functions inherited from QgsDataProvider | |
void | appendError (const QgsErrorMessage &message) |
Add error message. More... | |
void | setError (const QgsError &error) |
Sets error message. More... | |
Protected Member Functions inherited from QgsRasterInterface | |
void | initHistogram (QgsRasterHistogram &histogram, int bandNo, int binCount, double minimum=std::numeric_limits< double >::quiet_NaN(), double maximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &boundingBox=QgsRectangle(), int sampleSize=0, bool includeOutOfRange=false) |
Fill in histogram defaults if not specified. More... | |
void | initStatistics (QgsRasterBandStats &statistics, int bandNo, int stats=QgsRasterBandStats::All, const QgsRectangle &boundingBox=QgsRectangle(), int binCount=0) |
Fill in statistics defaults if not specified. More... | |
Protected Attributes | |
int | mDpi = -1 |
Dots per inch. More... | |
QgsRectangle | mExtent |
QList< bool > | mSrcHasNoDataValue |
Source no data value exists. More... | |
QList< double > | mSrcNoDataValue |
Source no data value is available and is set to be used or internal no data is available. More... | |
QList< QgsRasterRangeList > | mUserNoDataValue |
List of lists of user defined additional no data values for each band, indexed from 0. More... | |
QList< bool > | mUseSrcNoDataValue |
Use source nodata value. More... | |
Protected Attributes inherited from QgsDataProvider | |
QgsError | mError |
Error. More... | |
QDateTime | mTimestamp |
Timestamp of data in the moment when the data were loaded by provider. More... | |
Protected Attributes inherited from QgsRasterInterface | |
QList< QgsRasterHistogram > | mHistograms |
List of cached histograms, all bands mixed. More... | |
QgsRasterInterface * | mInput = nullptr |
bool | mOn = true |
QList< QgsRasterBandStats > | mStatistics |
List of cached statistics, all bands mixed. More... | |
Base class for raster data providers.
Definition at line 88 of file qgsrasterdataprovider.h.
Enumeration with capabilities that raster providers might implement.
Enumerator | |
---|---|
NoProviderCapabilities | Provider has no capabilities. |
ReadLayerMetadata | Provider can read layer metadata from data store. Since QGIS 3.0. See QgsDataProvider::layerMetadata() |
WriteLayerMetadata | Provider can write layer metadata to the data store. Since QGIS 3.0. See QgsDataProvider::writeLayerMetadata() |
ProviderHintBenefitsFromResampling | Provider benefits from resampling and should apply user default resampling settings (since QGIS 3.10) |
Definition at line 98 of file qgsrasterdataprovider.h.
Types of transformation in transformCoordinates() function.
Enumerator | |
---|---|
TransformImageToLayer | Transforms image coordinates to layer (georeferenced) coordinates. |
TransformLayerToImage | Transforms layer (georeferenced) coordinates to image coordinates. |
Definition at line 563 of file qgsrasterdataprovider.h.
QgsRasterDataProvider::QgsRasterDataProvider | ( | ) |
Provider capabilities.
Definition at line 216 of file qgsrasterdataprovider.cpp.
QgsRasterDataProvider::QgsRasterDataProvider | ( | const QString & | uri, |
const QgsDataProvider::ProviderOptions & | providerOptions = QgsDataProvider::ProviderOptions() |
||
) |
Constructor for QgsRasterDataProvider.
The uri argument gives a provider-specific uri indicating the underlying data source and it's parameters.
The options argument specifies generic provider options.
Definition at line 224 of file qgsrasterdataprovider.cpp.
|
inlinevirtual |
Read band offset for raster value.
Definition at line 235 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Read band scale for raster value.
Definition at line 229 of file qgsrasterdataprovider.h.
|
overridevirtual |
Read block of data using given extent and size.
Implements QgsRasterInterface.
Definition at line 45 of file qgsrasterdataprovider.cpp.
|
inlinevirtual |
Returns the raster layers pyramid list.
overviewList | used to construct the pyramid list (optional), when empty the list is defined by the provider. A pyramid list defines the POTENTIAL pyramids that can be in a raster. To know which of the pyramid layers ACTUALLY exists you need to look at the existsFlag member in each struct stored in the list. |
Definition at line 338 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Create pyramid overviews.
Definition at line 316 of file qgsrasterdataprovider.h.
|
overridepure virtual |
Clone itself, create deep copy.
Implements QgsRasterInterface.
|
inlinevirtual |
Returns data type for the band specified by number.
Definition at line 151 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Definition at line 220 of file qgsrasterdataprovider.h.
|
inline |
Definition at line 157 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Definition at line 259 of file qgsrasterdataprovider.h.
|
protected |
Copy member variables from other raster data provider. Useful for implementation of clone() method in subclasses.
Definition at line 530 of file qgsrasterdataprovider.cpp.
|
static |
Creates a new dataset with mDataSourceURI.
Definition at line 423 of file qgsrasterdataprovider.cpp.
|
inlineoverridevirtual |
Current time stamp of data source.
Reimplemented from QgsDataProvider.
Definition at line 428 of file qgsrasterdataprovider.h.
|
overridepure virtual |
Returns data type for the band specified by number.
Implements QgsRasterInterface.
|
inline |
Returns the dpi of the output device.
Definition at line 419 of file qgsrasterdataprovider.h.
|
overridepure virtual |
Returns the extent of the layer.
Implements QgsDataProvider.
|
inlinevirtual |
Returns the fields of the raster layer for data providers that expose them, the default implementation returns an empty list.
Definition at line 142 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Returns the legend rendered as pixmap.
This is useful for layers which need to get legend layers remotely as WMS.
scale | Optional parameter that is the Scale of the layer |
forceRefresh | Optional bool parameter to force refresh getLegendGraphic call |
visibleExtent | Visible extent for providers supporting contextual legends, in layer CRS |
Definition at line 288 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Returns a new image downloader for the raster legend.
mapSettings | map settings for legend providers supporting contextual legends. |
nullptr
if the provider does not support legend at all. Ownership of the returned object is transferred to caller.Definition at line 309 of file qgsrasterdataprovider.h.
bool QgsRasterDataProvider::hasPyramids | ( | ) |
Returns true
if raster has at least one populated histogram.
Definition at line 362 of file qgsrasterdataprovider.cpp.
|
pure virtual |
Returns metadata in a format suitable for feeding directly into a subset of the GUI raster properties "Metadata" tab.
Definition at line 242 of file qgsrasterdataprovider.cpp.
|
virtual |
Identify raster value(s) found on the point position.
The context parameters extent, width and height are important to identify on the same zoom level as a displayed map and to do effective caching (WCS). If context params are not specified the highest resolution is used. capabilities() may be used to test if format is supported by provider. Values are set to 'no data' or empty string if point is outside data source extent.
point | coordinates in data source CRS |
format | result format |
boundingBox | context bounding box |
width | context width |
height | context height |
dpi | context dpi |
Definition at line 251 of file qgsrasterdataprovider.cpp.
|
static |
Definition at line 481 of file qgsrasterdataprovider.cpp.
|
static |
Definition at line 464 of file qgsrasterdataprovider.cpp.
|
static |
Definition at line 447 of file qgsrasterdataprovider.cpp.
|
static |
Definition at line 490 of file qgsrasterdataprovider.cpp.
|
virtual |
Returns true if the extents reported by the data provider are not reliable and it's possible that there is renderable content outside of these extents.
Definition at line 512 of file qgsrasterdataprovider.cpp.
|
inlinevirtual |
Checks whether the provider is in editing mode, i.e.
raster write operations will be accepted. By default providers are not editable. Use setEditable() method to enable/disable editing.
Definition at line 436 of file qgsrasterdataprovider.h.
|
pure virtual |
Returns the verbose error text for the last error in this provider.
If an operation returns 0 (e.g. draw()), this function returns the text of the error associated with the failure. Interactive users of this provider can then, for example, call a QMessageBox to display the contents.
|
virtual |
Returns the format of the error text for the last error in this provider.
Definition at line 334 of file qgsrasterdataprovider.cpp.
|
pure virtual |
Returns the caption error text for the last error in this provider.
If an operation returns 0 (e.g. draw()), this function returns the text of the error associated with the failure. Interactive users of this provider can then, for example, call a QMessageBox to display the contents.
|
virtual |
Returns a list of native resolutions if available, i.e.
map units per pixel at which the raster source was originally created.
Resolutions are calculated in the provider's crs().
Definition at line 507 of file qgsrasterdataprovider.cpp.
|
virtual |
Returns flags containing the supported capabilities of the data provider.
Definition at line 231 of file qgsrasterdataprovider.cpp.
|
static |
Returns a list of pyramid resampling method name and label pairs for given provider.
Definition at line 352 of file qgsrasterdataprovider.cpp.
|
inlineprotectedvirtual |
Reads a block of raster data into data.
true
if the block was successfully read, or false
if an error occurred and the block could not be read. Definition at line 598 of file qgsrasterdataprovider.h.
|
inlineprotectedvirtual |
Reads a block of raster data into data, using the given extent and size.
true
if the block was successfully read, or false
if an error occurred and the block could not be read. Definition at line 606 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Reload data (data could change)
Definition at line 218 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Remove dataset.
Definition at line 498 of file qgsrasterdataprovider.h.
|
virtual |
Samples a raster value from the specified band found at the point position.
The context parameters boundingBox, width and height are important to identify on the same zoom level as a displayed map and to do effective caching (WCS). If context params are not specified the highest resolution is used.
If ok is specified and the point is outside data source extent, or an invalid band number was specified, then ok will be set to false
. In this case the function will return a NaN value.
Definition at line 316 of file qgsrasterdataprovider.cpp.
|
inline |
Sets the output device resolution.
Definition at line 422 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Turns on/off editing mode of the provider.
When in editing mode, it is possible to overwrite data of the provider using writeBlock() calls.
true
if the switch to/from editing mode was successful Definition at line 448 of file qgsrasterdataprovider.h.
|
inlineoverridevirtual |
Set input.
Returns true
if set correctly, false
if cannot use that input
Reimplemented from QgsRasterInterface.
Definition at line 130 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Set no data value on created dataset.
bandNo | band number |
noDataValue | no data value |
Definition at line 495 of file qgsrasterdataprovider.h.
|
virtual |
Definition at line 382 of file qgsrasterdataprovider.cpp.
|
virtual |
Sets the source nodata value usage.
Definition at line 33 of file qgsrasterdataprovider.cpp.
|
overridepure virtual |
Returns source data type for the band specified by number, source data type may be shorter than dataType.
Reimplemented from QgsRasterInterface.
|
inlinevirtual |
Returns true
if source band has no data value.
Definition at line 243 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Value representing no data value.
Definition at line 252 of file qgsrasterdataprovider.h.
|
signal |
Emit a message to be displayed on status bar, usually used by network providers (WMS,WCS)
|
inlinevirtual |
Step height for raster iterations.
Definition at line 539 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Step width for raster iterations.
Definition at line 532 of file qgsrasterdataprovider.h.
|
inlineoverridevirtual |
Returns the sublayers of this layer - useful for providers that manage their own layers, such as WMS.
Reimplemented from QgsDataProvider.
Definition at line 266 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Returns whether the provider supplies a legend graphic.
Definition at line 275 of file qgsrasterdataprovider.h.
|
overridevirtual |
Returns the provider's temporal capabilities.
This may be nullptr
, depending on the data provider.
Reimplemented from QgsDataProvider.
|
overridevirtual |
Returns the provider's temporal capabilities.
This may be nullptr
, depending on the data provider.
Reimplemented from QgsDataProvider.
Definition at line 413 of file qgsrasterdataprovider.cpp.
|
inlineoverridevirtual |
Time stamp of data source in the moment when data/metadata were loaded by provider.
Reimplemented from QgsDataProvider.
Definition at line 425 of file qgsrasterdataprovider.h.
|
virtual |
Transforms coordinates between source image coordinate space [0..width]x[0..height] and layer coordinate space (georeferenced coordinates).
Often this transformation is a simple 2D affine transformation (offset and scaling), but rasters with different georeferencing methods like GCPs (ground control points) or RPCs (rational polynomial coefficients) may require a more complex transform.
If the transform fails (input coordinates are outside of the valid range or data provider does not support this functionality), an empty point is returned.
Definition at line 517 of file qgsrasterdataprovider.cpp.
|
inlinevirtual |
Returns a list of user no data value ranges.
Definition at line 257 of file qgsrasterdataprovider.h.
|
protected |
Returns true
if user no data contains value.
Definition at line 524 of file qgsrasterdataprovider.cpp.
|
inlinevirtual |
Returns the source nodata value usage.
Definition at line 246 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Validates creation options for a specific dataset and destination format.
Definition at line 511 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Validates pyramid creation options for a specific dataset and destination format.
Definition at line 518 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Writes into the provider datasource.
Definition at line 452 of file qgsrasterdataprovider.h.
bool QgsRasterDataProvider::writeBlock | ( | QgsRasterBlock * | block, |
int | band, | ||
int | xOffset = 0 , |
||
int | yOffset = 0 |
||
) |
Writes pixel data from a raster block into the provider data source.
This will override previously stored pixel values. It is assumed that cells in the passed raster block are aligned with the cells of the data source. If raster block does not cover the whole area of the data source, only a subset of pixels covered by the raster block will be overwritten. By default, writing of raster data starts from the first cell of the raster - it is possible to set offset in pixels by specifying non-zero xOffset and yOffset values.
Writing is supported only by some data providers. Provider has to be in editing mode in order to allow write operations.
true
on success Definition at line 339 of file qgsrasterdataprovider.cpp.
|
protected |
Dots per inch.
Extended WMS (e.g. QGIS mapserver) support DPI dependent output and therefore are suited for printing. A value of -1 means it has not been set
Definition at line 619 of file qgsrasterdataprovider.h.
|
mutableprotected |
Definition at line 646 of file qgsrasterdataprovider.h.
|
protected |
Source no data value exists.
Definition at line 631 of file qgsrasterdataprovider.h.
|
protected |
Source no data value is available and is set to be used or internal no data is available.
Used internally only
Cell value representing original source no data. e.g. -9999, indexed from 0
Definition at line 628 of file qgsrasterdataprovider.h.
|
protected |
List of lists of user defined additional no data values for each band, indexed from 0.
Definition at line 644 of file qgsrasterdataprovider.h.
|
protected |
Use source nodata value.
User can disable usage of source nodata value as nodata. It may happen that a value is wrongly given by GDAL as nodata (e.g. 0) and it has to be treated as regular value.
Definition at line 638 of file qgsrasterdataprovider.h.