18#ifndef QGSMULTIBANDCOLORRENDERER_H
19#define QGSMULTIBANDCOLORRENDERER_H
58 Qgis::RasterRendererFlags
flags() const override;
166 void writeXml( QDomDocument &doc, QDomElement &parentElem )
const override;
171 Q_DECL_DEPRECATED
void toSld( QDomDocument &doc, QDomElement &element,
const QVariantMap &props = QVariantMap() ) const override
SIP_DEPRECATED;
172 bool toSld( QDomDocument &doc, QDomElement &element,
QgsSldExportContext &context ) const override;
188 bool refresh( const
QgsRectangle &extent, const QList<
double> &min, const QList<
double> &max,
bool forceRefresh = false ) override
SIP_SKIP;
200 std::unique_ptr< QgsContrastEnhancement > mRedContrastEnhancement;
201 std::unique_ptr< QgsContrastEnhancement > mGreenContrastEnhancement;
202 std::unique_ptr< QgsContrastEnhancement > mBlueContrastEnhancement;
Provides global constants and enumerations for use throughout the application.
Handles contrast enhancement and clipping.
Layer tree node points to a map layer.
Renderer for multiband images with the color components.
QgsMultiBandColorRenderer(const QgsMultiBandColorRenderer &)=delete
QgsMultiBandColorRenderer cannot be copied. Use clone() instead.
QgsMultiBandColorRenderer(QgsRasterInterface *input, int redBand, int greenBand, int blueBand, QgsContrastEnhancement *redEnhancement=nullptr, QgsContrastEnhancement *greenEnhancement=nullptr, QgsContrastEnhancement *blueEnhancement=nullptr)
Constructor for QgsMultiBandColorRenderer.
void setRedBand(int band)
Sets the band number for the red channel.
QgsRasterBlock * block(int bandNo, const QgsRectangle &extent, int width, int height, QgsRasterBlockFeedback *feedback=nullptr) override
Read block of data using given extent and size.
void setGreenBand(int band)
Sets the band number for the green channel.
Qgis::RasterRendererFlags flags() const override
Returns flags which dictate renderer behavior.
const QgsMultiBandColorRenderer & operator=(const QgsMultiBandColorRenderer &)=delete
QgsMultiBandColorRenderer cannot be copied. Use clone() instead.
int blueBand() const
Returns the band number for the blue channel.
~QgsMultiBandColorRenderer() override
void setBlueBand(int band)
Sets the band number for the blue channel.
static QgsRasterRenderer * create(const QDomElement &elem, QgsRasterInterface *input)
int redBand() const
Returns the band number for the red channel.
int greenBand() const
Returns the band number for the green channel.
Feedback object tailored for raster block reading.
QgsRasterInterface(QgsRasterInterface *input=nullptr)
virtual QgsRectangle extent() const
Gets the extent of the interface.
virtual void writeXml(QDomDocument &doc, QDomElement &parentElem) const
Write base class members to xml.
virtual QgsRasterInterface * input() const
Current input.
QgsRasterRenderer(QgsRasterInterface *input=nullptr, const QString &type=QString())
Constructor for QgsRasterRenderer.
virtual QList< int > usesBands() const
Returns a list of band numbers used by the renderer.
virtual QList< QgsLayerTreeModelLegendNode * > createLegendNodes(QgsLayerTreeLayer *nodeLayer)
Creates a set of legend nodes representing the renderer.
virtual Q_DECL_DEPRECATED void toSld(QDomDocument &doc, QDomElement &element, const QVariantMap &props=QVariantMap()) const
Used from subclasses to create SLD Rule elements following SLD v1.0 specs.
const QgsRasterRenderer & operator=(const QgsRasterRenderer &)=delete
QgsRasterRenderer cannot be copied. Use clone() instead.
QgsRasterRenderer * clone() const override=0
Clone itself, create deep copy.
A rectangle specified with double values.
Holds SLD export options and other information related to SLD export of a QGIS layer style.