18#ifndef QGSBRIGHTNESSCONTRASTFILTER_H
19#define QGSBRIGHTNESSCONTRASTFILTER_H
79 void setContrast(
int contrast );
93 void setGamma(
double gamma );
101 double gamma()
const {
return mGamma; }
104 void writeXml( QDomDocument &doc, QDomElement &parentElem )
const override;
107 void readXml(
const QDomElement &filterElem )
override;
111 int adjustColorComponent(
int colorComponent,
int alpha,
int brightness,
double contrastFactor,
double gammaCorrection )
const;
DataType
Raster data types.
int contrast() const
Returns current contrast level.
QgsBrightnessContrastFilter(QgsRasterInterface *input=nullptr)
int brightness() const
Returns current brightness level.
double gamma() const
Returns current gamma value.
void setBrightness(int brightness)
Set brightness level.
Feedback object tailored for raster block reading.
virtual QgsRasterInterface * clone() const =0
Clone itself, create deep copy.
virtual QgsRasterBlock * block(int bandNo, const QgsRectangle &extent, int width, int height, QgsRasterBlockFeedback *feedback=nullptr)=0
Read block of data using given extent and size.
virtual Qgis::DataType dataType(int bandNo) const =0
Returns data type for the band specified by number.
QgsRasterInterface(QgsRasterInterface *input=nullptr)
virtual int bandCount() const =0
Gets number of bands.
virtual void readXml(const QDomElement &filterElem)
Sets base class members from xml. Usually called from create() methods of subclasses.
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.
virtual bool setInput(QgsRasterInterface *input)
Set input.
A rectangle specified with double values.