QGIS API Documentation  2.99.0-Master (314842d)
qgsraster.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsraster.h - Raster namespace
3  --------------------------------------
4  Date : Apr 2013
5  Copyright : (C) 2013 by Radim Blazek
6  email : radim dot blazek at gmail dot com
7  ***************************************************************************/
8 
9 /***************************************************************************
10  * *
11  * This program is free software; you can redistribute it and/or modify *
12  * it under the terms of the GNU General Public License as published by *
13  * the Free Software Foundation; either version 2 of the License, or *
14  * (at your option) any later version. *
15  * *
16  ***************************************************************************/
17 
18 #ifndef QGSRASTER_H
19 #define QGSRASTER_H
20 
21 #include "qgis_core.h"
22 #include <QString>
23 
24 #include "qgis.h"
25 
29 class CORE_EXPORT QgsRaster
30 {
31  public:
32  // This is modified copy of GDALColorInterp
34  {
35  UndefinedColorInterpretation = 0,
36  GrayIndex = 1,
38  PaletteIndex = 2, // indexed color table
40  RedBand = 3,
42  GreenBand = 4,
44  BlueBand = 5,
46  AlphaBand = 6,
48  HueBand = 7,
50  SaturationBand = 8,
52  LightnessBand = 9,
54  CyanBand = 10,
56  MagentaBand = 11,
58  YellowBand = 12,
60  BlackBand = 13,
62  YCbCr_YBand = 14,
64  YCbCr_CbBand = 15,
66  YCbCr_CrBand = 16,
68  ContinuousPalette = 17
70  };
71 
73  {
74  IdentifyFormatUndefined = 0,
75  IdentifyFormatValue = 1, // numerical pixel value
76  IdentifyFormatText = 1 << 1, // WMS text
77  IdentifyFormatHtml = 1 << 2, // WMS HTML
78  IdentifyFormatFeature = 1 << 3, // WMS GML/JSON -> feature
79  };
80 
81  // Progress types
83  {
84  ProgressHistogram = 0,
85  ProgressPyramids = 1,
86  ProgressStatistics = 2
87  };
88 
90  {
91  PyramidsFlagNo = 0,
92  PyramidsFlagYes = 1,
93  PyramidsCopyExisting = 2
94  };
95 
97  {
98  PyramidsGTiff = 0,
99  PyramidsInternal = 1,
100  PyramidsErdas = 2
101  };
102 
105  {
107  SingleBandGray, // a single band image drawn as a range of gray colors
108  SingleBandPseudoColor, // a single band image drawn using a pseudocolor algorithm
109  PalettedColor, // a "Palette" image drawn using color table
110  PalettedSingleBandGray, // a "Palette" layer drawn in gray scale
111  PalettedSingleBandPseudoColor, // a "Palette" layerdrawn using a pseudocolor algorithm
112  PalettedMultiBandColor, // currently not supported
113  MultiBandSingleBandGray, // a layer containing 2 or more bands, but a single band drawn as a range of gray colors
114  MultiBandSingleBandPseudoColor, // a layer containing 2 or more bands, but a single band drawn using a pseudocolor algorithm
115  MultiBandColor, // a layer containing 2 or more bands, mapped to RGB color space. In the case of a multiband with only two bands, one band will be mapped to more than one color.
116  SingleBandColorDataStyle // ARGB values rendered directly
117  };
118 
125  static bool isRepresentableValue( double value, Qgis::DataType dataType );
126 
134  static double representableValue( double value, Qgis::DataType dataType );
135 };
136 
137 #endif
138 
139 
IdentifyFormat
Definition: qgsraster.h:72
DrawingStyle
This enumerator describes the different kinds of drawing we can do.
Definition: qgsraster.h:104
RasterProgressType
Definition: qgsraster.h:82
DataType
Raster data types.
Definition: qgis.h:61
ColorInterpretation
Definition: qgsraster.h:33
Raster namespace.
Definition: qgsraster.h:29
RasterBuildPyramids
Definition: qgsraster.h:89
RasterPyramidsFormat
Definition: qgsraster.h:96