QGIS API Documentation  2.14.0-Essen
qgsrastershader.h
Go to the documentation of this file.
1 /* **************************************************************************
2  qgsrastershader.h - description
3  -------------------
4 begin : Fri Dec 28 2007
5 copyright : (C) 2007 by Peter J. Ersts
6 email : [email protected]
7 
8 ****************************************************************************/
9 
10 /* **************************************************************************
11  * *
12  * This program is free software; you can redistribute it and/or modify *
13  * it under the terms of the GNU General Public License as published by *
14  * the Free Software Foundation; either version 2 of the License, or *
15  * (at your option) any later version. *
16  * *
17  ***************************************************************************/
18 
19 
20 #ifndef QGSRASTERSHADER_H
21 #define QGSRASTERSHADER_H
22 
24 
25 class QDomDocument;
26 class QDomElement;
27 
31 class CORE_EXPORT QgsRasterShader
32 {
33 
34  public:
35  QgsRasterShader( double theMinimumValue = 0.0, double theMaximumValue = 255.0 );
36  ~QgsRasterShader();
37 
38  /*
39  *
40  * Non-Static Inline methods
41  *
42  */
44  double maximumValue() { return mMaximumValue; }
45 
47  double minimumValue() { return mMinimumValue; }
48 
49  QgsRasterShaderFunction* rasterShaderFunction() { return mRasterShaderFunction; }
50  const QgsRasterShaderFunction* rasterShaderFunction() const { return mRasterShaderFunction; }
51 
52  /*
53  *
54  * Non-Static methods
55  *
56  */
58  bool shade( double, int*, int*, int*, int* );
59 
61  bool shade( double, double, double, double, int*, int*, int*, int* );
62 
65  void setRasterShaderFunction( QgsRasterShaderFunction* );
66 
68  void setMaximumValue( double );
69 
71  void setMinimumValue( double );
72 
73  void writeXML( QDomDocument& doc, QDomElement& parent ) const;
74 
75  void readXML( const QDomElement& elem );
76 
77  private:
79  double mMinimumValue;
80 
82  double mMaximumValue;
83 
85  QgsRasterShaderFunction* mRasterShaderFunction;
86 
87  QgsRasterShader( const QgsRasterShader& rh );
88  QgsRasterShader& operator=( const QgsRasterShader& rh );
89 };
90 #endif
Interface for all raster shaders.
const QgsRasterShaderFunction * rasterShaderFunction() const
QgsRasterShaderFunction * rasterShaderFunction()
The raster shade function applies a shader to a pixel at render time - typically used to render grays...
double maximumValue()
Return the maximum value for the raster shader.
double minimumValue()
Return the minimum value for the raster shader.