QGIS API Documentation  2.0.1-Dufour
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 <QString>
22 
26 class CORE_EXPORT QgsRaster
27 {
28  public:
29  // This is modified copy of GDALColorInterp
31  {
32  UndefinedColorInterpretation = 0, GrayIndex = 1, PaletteIndex = 2, // indexed color table RedBand = 3, GreenBand = 4, BlueBand = 5, AlphaBand = 6, HueBand = 7, SaturationBand = 8, LightnessBand = 9, CyanBand = 10, MagentaBand = 11, YellowBand = 12, BlackBand = 13, YCbCr_YBand = 14, YCbCr_CbBand = 15, YCbCr_CrBand = 16, ContinuousPalette = 17
50  };
51 
53  {
54  IdentifyFormatUndefined = 0,
55  IdentifyFormatValue = 1, // numerical pixel value
56  IdentifyFormatText = 1 << 1, // WMS text
57  IdentifyFormatHtml = 1 << 2, // WMS HTML
58  IdentifyFormatFeature = 1 << 3 // WMS GML -> feature
59  };
60 
61  // Progress types
63  {
64  ProgressHistogram = 0,
65  ProgressPyramids = 1,
66  ProgressStatistics = 2
67  };
68 
70  {
71  PyramidsFlagNo = 0,
72  PyramidsFlagYes = 1,
73  PyramidsCopyExisting = 2
74  };
75 
77  {
78  PyramidsGTiff = 0,
79  PyramidsInternal = 1,
80  PyramidsErdas = 2
81  };
82 
85  {
89  ContrastEnhancementCumulativeCut
90  };
91 
94  {
96  SingleBandGray, // a single band image drawn as a range of gray colors
97  SingleBandPseudoColor, // a single band image drawn using a pseudocolor algorithm
98  PalettedColor, // a "Palette" image drawn using color table
99  PalettedSingleBandGray, // a "Palette" layer drawn in gray scale
100  PalettedSingleBandPseudoColor, // a "Palette" layerdrawn using a pseudocolor algorithm
101  PalettedMultiBandColor, // currently not supported
102  MultiBandSingleBandGray, // a layer containing 2 or more bands, but a single band drawn as a range of gray colors
103  MultiBandSingleBandPseudoColor, // a layer containing 2 or more bands, but a single band drawn using a pseudocolor algorithm
104  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.
105  SingleBandColorDataStyle // ARGB values rendered directly
106  };
107 
108  static QString contrastEnhancementLimitsAsString( QgsRaster::ContrastEnhancementLimits theLimits );
109  static ContrastEnhancementLimits contrastEnhancementLimitsFromString( QString theLimits );
110 
111 };
112 
113 #endif
114 
115