QGIS API Documentation
3.10.0-A Coruña (6c816b4204)
|
Base class for raster data providers. More...
#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... | |
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 } |
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 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... | |
QDateTime | timestamp () const override |
Time stamp of data source in the moment when data/metadata were loaded by provider. 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 | 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 (ProviderProperty property, const QVariant &defaultValue=QVariant()) const |
Gets the current value of a certain provider property. More... | |
QVariant | providerProperty (int property, const QVariant &defaultValue) const |
Gets the current value of a certain provider property. More... | |
virtual void | reloadData () |
Reloads the data from the source. 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 (ProviderProperty property, const QVariant &value) |
Allows setting arbitrary properties on the provider. More... | |
void | setProviderProperty (int 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 above 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 const QgsRasterInterface * | sourceInput () const |
Gets source / raw input, the first in pipe, usually provider. More... | |
virtual QgsRasterInterface * | sourceInput () |
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... | |
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... | |
Additional Inherited Members | |
Static Public Attributes inherited from QgsDataProvider | |
static QString | SUBLAYER_SEPARATOR = QString( "!!::!!" ) |
String sequence used for separating components of sublayers strings. More... | |
Base class for raster data providers.
Definition at line 87 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 97 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 222 of file qgsrasterdataprovider.cpp.
|
inlinevirtual |
Read band offset for raster value.
Definition at line 227 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Read band scale for raster value.
Definition at line 221 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 327 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Create pyramid overviews.
Definition at line 305 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 143 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Definition at line 212 of file qgsrasterdataprovider.h.
|
inline |
Definition at line 149 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Definition at line 251 of file qgsrasterdataprovider.h.
|
protected |
Copy member variables from other raster data provider. Useful for implementation of clone() method in subclasses.
Definition at line 506 of file qgsrasterdataprovider.cpp.
|
static |
Creates a new dataset with mDataSourceURI.
Definition at line 409 of file qgsrasterdataprovider.cpp.
|
inlineoverridevirtual |
Current time stamp of data source.
Reimplemented from QgsDataProvider.
Definition at line 418 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 409 of file qgsrasterdataprovider.h.
|
overridepure virtual |
Returns the extent of the layer.
Implements QgsDataProvider.
|
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 277 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 298 of file qgsrasterdataprovider.h.
bool QgsRasterDataProvider::hasPyramids | ( | ) |
Returns true
if raster has at least one populated histogram.
Definition at line 357 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 239 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 246 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 430 of file qgsrasterdataprovider.cpp.
|
static |
Definition at line 473 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 495 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 426 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 329 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 490 of file qgsrasterdataprovider.cpp.
|
virtual |
Returns flags containing the supported capabilities of the data provider.
Definition at line 228 of file qgsrasterdataprovider.cpp.
|
static |
Returns a list of pyramid resampling method name and label pairs for given provider.
Definition at line 347 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 564 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 572 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Reload data (data could change)
Definition at line 210 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Remove dataset.
Definition at line 488 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 311 of file qgsrasterdataprovider.cpp.
|
inline |
Sets the output device resolution.
Definition at line 412 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 438 of file qgsrasterdataprovider.h.
|
inlineoverridevirtual |
Set input.
Returns true
if set correctly, false
if cannot use that input
Reimplemented from QgsRasterInterface.
Definition at line 129 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Set no data value on created dataset.
bandNo | band number |
noDataValue | no data value |
Definition at line 485 of file qgsrasterdataprovider.h.
|
virtual |
Definition at line 377 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 235 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Value representing no data value.
Definition at line 244 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 529 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Step width for raster iterations.
Definition at line 522 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 258 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Returns whether the provider supplies a legend graphic.
Definition at line 264 of file qgsrasterdataprovider.h.
|
inlineoverridevirtual |
Time stamp of data source in the moment when data/metadata were loaded by provider.
Reimplemented from QgsDataProvider.
Definition at line 415 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Returns a list of user no data value ranges.
Definition at line 249 of file qgsrasterdataprovider.h.
|
protected |
Returns true
if user no data contains value.
Definition at line 500 of file qgsrasterdataprovider.cpp.
|
inlinevirtual |
Returns the source nodata value usage.
Definition at line 238 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Validates creation options for a specific dataset and destination format.
Definition at line 501 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Validates pyramid creation options for a specific dataset and destination format.
Definition at line 508 of file qgsrasterdataprovider.h.
|
inlinevirtual |
Writes into the provider datasource.
Definition at line 442 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 334 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 585 of file qgsrasterdataprovider.h.
|
mutableprotected |
Definition at line 612 of file qgsrasterdataprovider.h.
|
protected |
Source no data value exists.
Definition at line 597 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 onlyCell value representing original source no data. e.g. -9999, indexed from 0
Definition at line 594 of file qgsrasterdataprovider.h.
|
protected |
List of lists of user defined additional no data values for each band, indexed from 0.
Definition at line 610 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 604 of file qgsrasterdataprovider.h.