21#ifndef QGSRASTERLAYER_H 
   22#define QGSRASTERLAYER_H 
  117        : loadDefaultStyle( loadDefaultStyle )
 
  118        , transformContext( transformContext )
 
  122      bool loadDefaultStyle = 
true;
 
  143      bool skipCrsValidation = 
false;
 
  160                             const QString &baseName = QString(),
 
  161                             const QString &providerType = 
"gdal",
 
  167    SIP_PYOBJECT __repr__();
 
  169    QString 
str = QStringLiteral( 
"<QgsRasterLayer: '%1' (%2)>" ).arg( sipCpp->name(), sipCpp->dataProvider() ? sipCpp->dataProvider()->name() : QStringLiteral( 
"Invalid" ) );
 
  170    sipRes = PyUnicode_FromString( 
str.toUtf8().constData() );
 
  209    static bool isValidRasterFileName( 
const QString &fileNameQString, QString &retError );
 
  212    static bool isValidRasterFileName( 
const QString &fileNameQString );
 
  215    static QDateTime lastModified( 
const QString   &name );
 
  221    Q_DECL_DEPRECATED 
void setDataProvider( 
const QString &provider ) 
SIP_DEPRECATED;
 
  230    void setDataProvider( 
const QString &provider, 
const QgsDataProvider::ProviderOptions &options, QgsDataProvider::ReadFlags flags = QgsDataProvider::ReadFlags() );
 
  312    int bandCount() 
const;
 
  317    QString bandName( 
int bandNoInt ) 
const;
 
  333    void reload() override;
 
  337    void draw( QPainter *theQPainter,
 
  348    bool isSpatial()
 const override { 
return true; }
 
  351    Qgis::MapLayerProperties 
properties() 
const override;
 
  357    QPixmap paletteAsPixmap( 
int bandNumber = 1 );
 
  370    double rasterUnitsPerPixelX() 
const;
 
  379    double rasterUnitsPerPixelY() 
const;
 
  396                                 bool generateLookupTableFlag = true );
 
  415    virtual QString subsetString() const;
 
  425    virtual 
bool setSubsetString( const QString &subset );
 
  431    bool defaultContrastEnhancementSettings(
 
  436    void setDefaultContrastEnhancement();
 
  438    QStringList subLayers() const override;
 
  444    QImage previewAsImage( QSize size, const QColor &bgColor = Qt::white,
 
  445                           QImage::Format format = QImage::Format_ARGB32_Premultiplied );
 
  447    void setLayerOrder( const QStringList &layers ) override;
 
  448    void setSubLayerVisibility( const QString &name, 
bool vis ) override;
 
  449    QDateTime timestamp() const override;
 
  461    bool writeSld( QDomNode &node, QDomDocument &doc, QString &errorMessage, const QVariantMap &props = QVariantMap() ) const;
 
  471    bool ignoreExtents() const;
 
  477    void showStatusMessage( const QString &message );
 
  492    void subsetStringChanged();
 
  499    bool writeSymbology( QDomNode &, QDomDocument &doc, QString &errorMessage,
 
  501    bool writeStyle( QDomNode &node, QDomDocument &doc, QString &errorMessage,
 
  503    bool writeXml( QDomNode &layer_node, QDomDocument &doc, const 
QgsReadWriteContext &context ) const override;
 
  504    QString encodedSource( const QString &source, const 
QgsReadWriteContext &context ) const override;
 
  505    QString decodedSource( const QString &source, const QString &provider,  const 
QgsReadWriteContext &context ) const override;
 
  512    void closeDataProvider();
 
  518    void setRendererForDrawingStyle( 
QgsRaster::DrawingStyle drawingStyle );
 
  524                                 bool generateLookupTableFlag,
 
  530    void computeMinMax( 
int band,
 
  535                        double &min, 
double &max );
 
  548    void setDataSourcePrivate( const QString &dataSource, const QString &baseName, const QString &provider, const 
QgsDataProvider::ProviderOptions &options, 
QgsDataProvider::ReadFlags flags ) override;
 
  551    const QString QSTRING_NOT_SET;
 
  552    const QString TRSTRING_NOT_SET;
 
  563    QDateTime mLastModified;
 
  572    QgsRectangle mLastRectangleUsedByRefreshContrastEnhancementIfNeeded;
 
  574    QDomDocument mOriginalStyleDocument;
 
  575    QDomElement mOriginalStyleElement;
 
RasterResamplingStage
Stage at which raster resampling occurs.
 
Abstract base class for objects which generate elevation profiles.
 
Interface for classes which can generate elevation profiles.
 
Brightness/contrast and gamma correction filter pipe for rasters.
 
Manipulates raster or point cloud pixel values so that they enhanceContrast or clip into a specified ...
 
ContrastEnhancementAlgorithm
This enumerator describes the types of contrast enhancement algorithms that can be used.
 
Contains information about the context in which a coordinate transform is executed.
 
Abstract base class for spatial data provider implementations.
 
Color and saturation filter pipe for rasters.
 
Base class for storage of map layer elevation properties.
 
Base class for utility classes that encapsulate information necessary for rendering of map layers.
 
Base class for storage of map layer temporal properties.
 
Base class for all map layer types.
 
QString providerType() const
Returns the provider type (provider key) for this layer.
 
virtual void setOpacity(double opacity)
Sets the opacity for the layer, where opacity is a value between 0 (totally transparent) and 1....
 
virtual Qgis::MapLayerProperties properties() const
Returns the map layer properties of this layer.
 
virtual QString htmlMetadata() const
Obtain a formatted HTML string containing assorted metadata for this layer.
 
virtual QgsMapLayer * clone() const =0
Returns a new instance equivalent to this one except for the id which is still unique.
 
virtual Q_INVOKABLE QgsDataProvider * dataProvider()
Returns the layer's data provider, it may be nullptr.
 
Perform transforms between map coordinates and device coordinates.
 
Encapsulates properties and constraints relating to fetching elevation profiles from different source...
 
Base class for raster data providers.
 
Raster layer specific subclass of QgsMapLayerElevationProperties.
 
Implementation of map layer temporal properties for raster layers.
 
Represents a raster layer.
 
LayerType
This enumerator describes the type of raster layer.
 
ColorShadingAlgorithm
This enumerator describes the types of shading that can be used.
 
static const QgsContrastEnhancement::ContrastEnhancementAlgorithm MULTIPLE_BAND_SINGLE_BYTE_ENHANCEMENT_ALGORITHM
Default enhancement algorithm for multiple band raster of type Byte.
 
QgsRasterPipe * pipe()
Returns the raster pipe.
 
static const QgsRasterMinMaxOrigin::Limits SINGLE_BAND_MIN_MAX_LIMITS
Default enhancement limits for single band raster.
 
static const QgsRasterMinMaxOrigin::Limits MULTIPLE_BAND_MULTI_BYTE_MIN_MAX_LIMITS
Default enhancement limits for multiple band raster of type different from Byte.
 
LayerType rasterType()
Returns the raster layer type (which is a read only property).
 
static const double SAMPLE_SIZE
Default sample size (number of pixels) for estimated statistics/histogram calculation.
 
static const QgsRasterMinMaxOrigin::Limits MULTIPLE_BAND_SINGLE_BYTE_MIN_MAX_LIMITS
Default enhancement limits for multiple band raster of type Byte.
 
static const QgsContrastEnhancement::ContrastEnhancementAlgorithm MULTIPLE_BAND_MULTI_BYTE_ENHANCEMENT_ALGORITHM
Default enhancement algorithm for multiple band raster of type different from Byte.
 
static const QgsContrastEnhancement::ContrastEnhancementAlgorithm SINGLE_BAND_ENHANCEMENT_ALGORITHM
Default enhancement algorithm for single band raster.
 
This class describes the origin of min/max values.
 
Limits
This enumerator describes the limits used to compute min/max values.
 
Contains a pipeline of raster interfaces for sequential raster processing.
 
Raster renderer pipe that applies colors to a raster.
 
Resample filter pipe for rasters.
 
The class is used as a container of context for various read/write operations on other objects.
 
A rectangle specified with double values.
 
Contains information about the context of a rendering operation.
 
An interface for classes which can visit style entity (e.g.
 
std::unique_ptr< GEOSGeometry, GeosDeleter > unique_ptr
Scoped GEOS pointer.
 
As part of the API refactoring and improvements which landed in the Processing API was substantially reworked from the x version This was done in order to allow much of the underlying Processing framework to be ported into allowing algorithms to be written in pure substantial changes are required in order to port existing x Processing algorithms for QGIS x The most significant changes are outlined not GeoAlgorithm For algorithms which operate on features one by consider subclassing the QgsProcessingFeatureBasedAlgorithm class This class allows much of the boilerplate code for looping over features from a vector layer to be bypassed and instead requires implementation of a processFeature method Ensure that your algorithm(or algorithm 's parent class) implements the new pure virtual createInstance(self) call
 
QList< QPair< QString, QColor > > QgsLegendColorList
 
Setting options for creating vector data providers.
 
Setting options for loading raster layers.
 
LayerOptions(bool loadDefaultStyle=true, const QgsCoordinateTransformContext &transformContext=QgsCoordinateTransformContext())
Constructor for LayerOptions.
 
This class provides details of the viewable area that a raster will be rendered into.