@@ -18,11 +18,63 @@ class QgsRasterDataProvider : QgsDataProvider
1818 //! If you add to this, please also add to capabilitiesString()
1919 enum Capability
2020 {
21- NoCapabilities = 0,
22- Identify = 1
23- // Capability2 = 1 << 1, etc
21+ NoCapabilities,
22+ Identify,
23+ ExactMinimumMaximum,
24+ ExactResolution,
25+ EstimatedMinimumMaximum,
26+ BuildPyramids,
27+ Histogram,
28+ Size,
29+ Create,
30+ Remove
2431 };
2532
33+ // This is modified copy of GDALColorInterp
34+ enum ColorInterpretation
35+ {
36+ UndefinedColorInterpretation = 0,
37+ /*! Greyscale */ GrayIndex = 1,
38+ /*! Paletted (see associated color table) */ PaletteIndex = 2, // indexed color table
39+ /*! Red band of RGBA image */ RedBand = 3,
40+ /*! Green band of RGBA image */ GreenBand = 4,
41+ /*! Blue band of RGBA image */ BlueBand = 5,
42+ /*! Alpha (0=transparent, 255=opaque) */ AlphaBand = 6,
43+ /*! Hue band of HLS image */ HueBand = 7,
44+ /*! Saturation band of HLS image */ SaturationBand = 8,
45+ /*! Lightness band of HLS image */ LightnessBand = 9,
46+ /*! Cyan band of CMYK image */ CyanBand = 10,
47+ /*! Magenta band of CMYK image */ MagentaBand = 11,
48+ /*! Yellow band of CMYK image */ YellowBand = 12,
49+ /*! Black band of CMLY image */ BlackBand = 13,
50+ /*! Y Luminance */ YCbCr_YBand = 14,
51+ /*! Cb Chroma */ YCbCr_CbBand = 15,
52+ /*! Cr Chroma */ YCbCr_CrBand = 16,
53+ /*! Continuous palette, QGIS addition, GRASS */ ContinuousPalette = 17,
54+ /*! Max current value */ ColorInterpretationMax = 17
55+ };
56+
57+ // Progress types
58+ enum RasterProgressType
59+ {
60+ ProgressHistogram = 0,
61+ ProgressPyramids = 1,
62+ ProgressStatistics = 2
63+ };
64+
65+ enum RasterBuildPyramids
66+ {
67+ PyramidsFlagNo = 0,
68+ PyramidsFlagYes = 1,
69+ CopyExisting = 2
70+ };
71+
72+ enum RasterPyramidsFormat
73+ {
74+ PyramidsGTiff = 0,
75+ PyramidsInternal = 1,
76+ PyramidsErdas = 2
77+ };
2678
2779 QgsRasterDataProvider();
2880
@@ -179,6 +231,14 @@ class QgsRasterDataProvider : QgsDataProvider
179231 @note: this method was added in version 1.2*/
180232 void setDpi( int dpi );
181233
234+ /** Get block size */
235+ int xBlockSize() const;
236+ int yBlockSize() const;
237+
238+ /** Get raster size */
239+ int xSize() const;
240+ int ySize() const;
241+
182242 /** read block of data using give extent and size */
183243 /*virtual void readBlock( int bandNo,
184244 QgsRectangle const & viewExtent,
0 commit comments