/usr/include/qgis/qgsraster.h is in libqgis-dev 2.18.17+dfsg-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 | /***************************************************************************
qgsraster.h - Raster namespace
--------------------------------------
Date : Apr 2013
Copyright : (C) 2013 by Radim Blazek
email : radim dot blazek at gmail dot com
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef QGSRASTER_H
#define QGSRASTER_H
#include <QString>
#include "qgis.h"
/** \ingroup core
* Raster namespace.
*/
class CORE_EXPORT QgsRaster
{
public:
// This is modified copy of GDALColorInterp
enum ColorInterpretation
{
UndefinedColorInterpretation = 0,
/** Greyscale */ GrayIndex = 1,
/** Paletted (see associated color table) */ PaletteIndex = 2, // indexed color table
/** Red band of RGBA image */ RedBand = 3,
/** Green band of RGBA image */ GreenBand = 4,
/** Blue band of RGBA image */ BlueBand = 5,
/** Alpha (0=transparent, 255=opaque) */ AlphaBand = 6,
/** Hue band of HLS image */ HueBand = 7,
/** Saturation band of HLS image */ SaturationBand = 8,
/** Lightness band of HLS image */ LightnessBand = 9,
/** Cyan band of CMYK image */ CyanBand = 10,
/** Magenta band of CMYK image */ MagentaBand = 11,
/** Yellow band of CMYK image */ YellowBand = 12,
/** Black band of CMLY image */ BlackBand = 13,
/** Y Luminance */ YCbCr_YBand = 14,
/** Cb Chroma */ YCbCr_CbBand = 15,
/** Cr Chroma */ YCbCr_CrBand = 16,
/** Continuous palette, QGIS addition, GRASS */ ContinuousPalette = 17
};
enum IdentifyFormat
{
IdentifyFormatUndefined = 0,
IdentifyFormatValue = 1, // numerical pixel value
IdentifyFormatText = 1 << 1, // WMS text
IdentifyFormatHtml = 1 << 2, // WMS HTML
IdentifyFormatFeature = 1 << 3, // WMS GML/JSON -> feature
};
// Progress types
enum RasterProgressType
{
ProgressHistogram = 0,
ProgressPyramids = 1,
ProgressStatistics = 2
};
enum RasterBuildPyramids
{
PyramidsFlagNo = 0,
PyramidsFlagYes = 1,
PyramidsCopyExisting = 2
};
enum RasterPyramidsFormat
{
PyramidsGTiff = 0,
PyramidsInternal = 1,
PyramidsErdas = 2
};
/** \brief Contrast enhancement limits */
enum ContrastEnhancementLimits
{
ContrastEnhancementNone,
ContrastEnhancementMinMax,
ContrastEnhancementStdDev,
ContrastEnhancementCumulativeCut
};
/** \brief This enumerator describes the different kinds of drawing we can do */
enum DrawingStyle
{
UndefinedDrawingStyle,
SingleBandGray, // a single band image drawn as a range of gray colors
SingleBandPseudoColor, // a single band image drawn using a pseudocolor algorithm
PalettedColor, // a "Palette" image drawn using color table
PalettedSingleBandGray, // a "Palette" layer drawn in gray scale
PalettedSingleBandPseudoColor, // a "Palette" layerdrawn using a pseudocolor algorithm
PalettedMultiBandColor, // currently not supported
MultiBandSingleBandGray, // a layer containing 2 or more bands, but a single band drawn as a range of gray colors
MultiBandSingleBandPseudoColor, // a layer containing 2 or more bands, but a single band drawn using a pseudocolor algorithm
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.
SingleBandColorDataStyle // ARGB values rendered directly
};
static QString contrastEnhancementLimitsAsString( QgsRaster::ContrastEnhancementLimits theLimits );
static ContrastEnhancementLimits contrastEnhancementLimitsFromString( const QString& theLimits );
/** Check if the specified value is representable in the given data type.
* Supported are numerical types Byte, UInt16, Int16, UInt32, Int32, Float32, Float64.
* @param value
* @param dataType
* @note added in version 2.16
* @note not available in Python bindings */
static bool isRepresentableValue( double value, QGis::DataType dataType );
/** Get value representable by given data type.
* Supported are numerical types Byte, UInt16, Int16, UInt32, Int32, Float32, Float64.
* This is done through C casting, so you have to be sure that the provided value is
* representable in the output data type. This can be checked with isRepresentableValue().
* @param value
* @param dataType
* @note added in version 2.1 */
static double representableValue( double value, QGis::DataType dataType );
};
#endif
|