GDAL

- Main Page
- Related Pages
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | List of all members
GDALAllValidMaskBand Class Reference
Inheritance diagram for GDALAllValidMaskBand:

## Public Member Functions
| GDALAllValidMaskBand (GDALRasterBand *)
virtual GDALRasterBand * | GetMaskBand ()
| Return the mask band associated with the band. More...
virtual int | GetMaskFlags ()
| Return the status flags of the mask band associated with the band. More...
Public Member Functions inherited from GDALRasterBand
| GDALRasterBand ()
| GDALRasterBand (int bForceCachedIO)
virtual | ~GDALRasterBand ()
int | GetXSize ()
| Fetch XSize of raster. More...
int | GetYSize ()
| Fetch YSize of raster. More...
int | GetBand ()
| Fetch the band number. More...
GDALDataset * | GetDataset ()
| Fetch the owning dataset handle. More...
GDALDataType | GetRasterDataType (void)
| Fetch the pixel data type for this band. More...
void | GetBlockSize (int *, int *)
| Fetch the "natural" block size of this band. More...
GDALAccess | GetAccess ()
| Find out if we have update permission for this band. More...
CPLErr | RasterIO (GDALRWFlag, int, int, int, int, void *, int, int, GDALDataType, GSpacing, GSpacing, GDALRasterIOExtraArg *psExtraArg) CPL_WARN_UNUSED_RESULT
| Read/write a region of image data for this band. More...
CPLErr | ReadBlock (int, int, void *) CPL_WARN_UNUSED_RESULT
| Read a block of image data efficiently. More...
CPLErr | WriteBlock (int, int, void *) CPL_WARN_UNUSED_RESULT
| Write a block of image data efficiently. More...
GDALRasterBlock * | GetLockedBlockRef (int nXBlockOff, int nYBlockOff, int bJustInitialize=FALSE) CPL_WARN_UNUSED_RESULT
| Fetch a pointer to an internally cached raster block. More...
CPLErr | FlushBlock (int, int, int bWriteDirtyBlock=TRUE)
unsigned char * | GetIndexColorTranslationTo (GDALRasterBand *poReferenceBand, unsigned char *pTranslationTable=NULL, int *pApproximateMatching=NULL)
| Compute translation table for color tables. More...
virtual CPLErr | FlushCache ()
| Flush raster data cache. More...
virtual char ** | GetCategoryNames ()
| Fetch the list of category names for this raster. More...
virtual double | GetNoDataValue (int *pbSuccess=NULL)
| Fetch the no data value for this band. More...
virtual double | GetMinimum (int *pbSuccess=NULL)
| Fetch the minimum value for this band. More...
virtual double | GetMaximum (int *pbSuccess=NULL)
| Fetch the maximum value for this band. More...
virtual double | GetOffset (int *pbSuccess=NULL)
| Fetch the raster value offset. More...
virtual double | GetScale (int *pbSuccess=NULL)
| Fetch the raster value scale. More...
virtual const char * | GetUnitType ()
| Return raster unit type. More...
virtual GDALColorInterp | GetColorInterpretation ()
| How should this band be interpreted as color? More...
virtual GDALColorTable * | GetColorTable ()
| Fetch the color table associated with band. More...
virtual CPLErr | Fill (double dfRealValue, double dfImaginaryValue=0)
| Fill this band with a constant value. More...
virtual CPLErr | SetCategoryNames (char **)
| Set the category names for this band. More...
virtual CPLErr | SetNoDataValue (double)
| Set the no data value for this band. More...
virtual CPLErr | DeleteNoDataValue ()
| Remove the no data value for this band. More...
virtual CPLErr | SetColorTable (GDALColorTable *)
| Set the raster color table. More...
virtual CPLErr | SetColorInterpretation (GDALColorInterp)
| Set color interpretation of a band. More...
virtual CPLErr | SetOffset (double)
| Set scaling offset. More...
virtual CPLErr | SetScale (double)
| Set scaling ratio. More...
virtual CPLErr | SetUnitType (const char *)
| Set unit type. More...
virtual CPLErr | GetStatistics (int bApproxOK, int bForce, double *pdfMin, double *pdfMax, double *pdfMean, double *padfStdDev)
| Fetch image statistics. More...
virtual CPLErr | ComputeStatistics (int bApproxOK, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GDALProgressFunc, void *pProgressData)
| Compute image statistics. More...
virtual CPLErr | SetStatistics (double dfMin, double dfMax, double dfMean, double dfStdDev)
| Set statistics on band. More...
virtual CPLErr | ComputeRasterMinMax (int, double *)
| Compute the min/max values for a band. More...
virtual int | HasArbitraryOverviews ()
| Check for arbitrary overviews. More...
virtual int | GetOverviewCount ()
| Return the number of overview layers available. More...
virtual GDALRasterBand * | GetOverview (int)
| Fetch overview raster band object. More...
virtual GDALRasterBand * | GetRasterSampleOverview (GUIntBig)
| Fetch best sampling overview. More...
virtual CPLErr | BuildOverviews (const char *, int, int *, GDALProgressFunc, void *)
| Build raster overview(s) More...
virtual CPLErr | AdviseRead (int nXOff, int nYOff, int nXSize, int nYSize, int nBufXSize, int nBufYSize, GDALDataType eDT, char **papszOptions)
| Advise driver of upcoming read requests. More...
virtual CPLErr | GetHistogram (double dfMin, double dfMax, int nBuckets, GUIntBig *panHistogram, int bIncludeOutOfRange, int bApproxOK, GDALProgressFunc, void *pProgressData)
| Compute raster histogram. More...
virtual CPLErr | GetDefaultHistogram (double *pdfMin, double *pdfMax, int *pnBuckets, GUIntBig **ppanHistogram, int bForce, GDALProgressFunc, void *pProgressData)
| Fetch default raster histogram. More...
virtual CPLErr | SetDefaultHistogram (double dfMin, double dfMax, int nBuckets, GUIntBig *panHistogram)
| Set default histogram. More...
virtual GDALRasterAttributeTable * | GetDefaultRAT ()
| Fetch default Raster Attribute Table. More...
virtual CPLErr | SetDefaultRAT (const GDALRasterAttributeTable *)
| Set default Raster Attribute Table. More...
virtual CPLErr | CreateMaskBand (int nFlagsIn)
| Adds a mask band to the current band. More...
virtual CPLVirtualMem * | GetVirtualMemAuto (GDALRWFlag eRWFlag, int *pnPixelSpace, GIntBig *pnLineSpace, char **papszOptions) CPL_WARN_UNUSED_RESULT
| Create a CPLVirtualMem object from a GDAL raster band object. More...
void | ReportError (CPLErr eErrClass, CPLErrorNum err_no, const char *fmt,...) CPL_PRINT_FUNC_FORMAT(4
| Emits an error related to a raster band. More...
Public Member Functions inherited from GDALMajorObject
int | GetMOFlags ()
void | SetMOFlags (int nFlagsIn)
virtual const char * | GetDescription () const
| Fetch object description. More...
virtual void | SetDescription (const char *)
| Set object description. More...
virtual char ** | GetMetadataDomainList ()
| Fetch list of metadata domains. More...
virtual char ** | GetMetadata (const char *pszDomain="")
| Fetch metadata. More...
virtual CPLErr | SetMetadata (char **papszMetadata, const char *pszDomain="")
| Set metadata. More...
virtual const char * | GetMetadataItem (const char *pszName, const char *pszDomain="")
| Fetch single metadata item. More...
virtual CPLErr | SetMetadataItem (const char *pszName, const char *pszValue, const char *pszDomain="")
| Set single metadata item. More...

## Protected Member Functions
virtual CPLErr | IReadBlock (int, int, void *)
Protected Member Functions inherited from GDALRasterBand
void | InvalidateMaskBand ()
CPLErr | RasterIOResampled (GDALRWFlag, int, int, int, int, void *, int, int, GDALDataType, GSpacing, GSpacing, GDALRasterIOExtraArg *psExtraArg) CPL_WARN_UNUSED_RESULT
int | EnterReadWrite (GDALRWFlag eRWFlag)
void | LeaveReadWrite ()
virtual CPLErr | IWriteBlock (int, int, void *)
virtual CPLErr | IRasterIO (GDALRWFlag, int, int, int, int, void *, int, int, GDALDataType, GSpacing, GSpacing, GDALRasterIOExtraArg *psExtraArg) CPL_WARN_UNUSED_RESULT
CPLErr | OverviewRasterIO (GDALRWFlag, int, int, int, int, void *, int, int, GDALDataType, GSpacing, GSpacing, GDALRasterIOExtraArg *psExtraArg) CPL_WARN_UNUSED_RESULT
CPLErr | TryOverviewRasterIO (GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize, int nYSize, void *pData, int nBufXSize, int nBufYSize, GDALDataType eBufType, GSpacing nPixelSpace, GSpacing nLineSpace, GDALRasterIOExtraArg *psExtraArg, int *pbTried)
int | InitBlockInfo ()
CPLErr | AdoptBlock (GDALRasterBlock *)
GDALRasterBlock * | TryGetLockedBlockRef (int nXBlockOff, int nYBlockYOff)
| Try fetching block ref. More...
void | AddBlockToFreeList (GDALRasterBlock *)
Protected Member Functions inherited from GDALMajorObject
char ** | BuildMetadataDomainList (char **papszList, int bCheckNonEmpty,...) CPL_NULL_TERMINATED
| Helper function for custom implementations of GetMetadataDomainList() More...

## Additional Inherited Members
Protected Attributes inherited from GDALRasterBand
GDALDataset * | poDS
int | nBand
int | nRasterXSize
int | nRasterYSize
GDALDataType | eDataType
GDALAccess | eAccess
int | nBlockXSize
int | nBlockYSize
int | nBlocksPerRow
int | nBlocksPerColumn
int | nBlockReads
int | bForceCachedIO
GDALRasterBand * | poMask
bool | bOwnMask
int | nMaskFlags
Protected Attributes inherited from GDALMajorObject
int | nFlags
CPLString | sDescription
GDALMultiDomainMetadata | oMDMD

## Member Function Documentation

GDALRasterBand * GDALAllValidMaskBand::GetMaskBand | ( |  | ) |
| virtual

Return the mask band associated with the band.

The GDALRasterBand class includes a default implementation of GetMaskBand() that returns one of four default implementations :

- If a corresponding .msk file exists it will be used for the mask band.
- If the dataset has a NODATA_VALUES metadata item, an instance of the new GDALNoDataValuesMaskBand class will be returned. GetMaskFlags() will return GMF_NODATA | GMF_PER_DATASET.
  Since
    GDAL 1.6.0
- If the band has a nodata value set, an instance of the new GDALNodataMaskRasterBand class will be returned. GetMaskFlags() will return GMF_NODATA.
- If there is no nodata value, but the dataset has an alpha band that seems to apply to this band (specific rules yet to be determined) and that is of type GDT_Byte then that alpha band will be returned, and the flags GMF_PER_DATASET and GMF_ALPHA will be returned in the flags.
- If neither of the above apply, an instance of the new GDALAllValidRasterBand class will be returned that has 255 values for all pixels. The null flags will return GMF_ALL_VALID.

Note that the GetMaskBand() should always return a GDALRasterBand mask, even if it is only an all 255 mask with the flags indicating GMF_ALL_VALID.

This method is the same as the C function GDALGetMaskBand().

Returns
  a valid mask band.

Since
  GDAL 1.5.0

See also
  http://trac.osgeo.org/gdal/wiki/rfc15_nodatabitmask

Reimplemented from GDALRasterBand.

int GDALAllValidMaskBand::GetMaskFlags | ( |  | ) |
| virtual

Return the status flags of the mask band associated with the band.

The GetMaskFlags() method returns an bitwise OR-ed set of status flags with the following available definitions that may be extended in the future:

- GMF_ALL_VALID(0x01): There are no invalid pixels, all mask values will be 255. When used this will normally be the only flag set.
- GMF_PER_DATASET(0x02): The mask band is shared between all bands on the dataset.
- GMF_ALPHA(0x04): The mask band is actually an alpha band and may have values other than 0 and 255.
- GMF_NODATA(0x08): Indicates the mask is actually being generated from nodata values. (mutually exclusive of GMF_ALPHA)

The GDALRasterBand class includes a default implementation of GetMaskBand() that returns one of four default implementations :

- If a corresponding .msk file exists it will be used for the mask band.
- If the dataset has a NODATA_VALUES metadata item, an instance of the new GDALNoDataValuesMaskBand class will be returned. GetMaskFlags() will return GMF_NODATA | GMF_PER_DATASET.
  Since
    GDAL 1.6.0
- If the band has a nodata value set, an instance of the new GDALNodataMaskRasterBand class will be returned. GetMaskFlags() will return GMF_NODATA.
- If there is no nodata value, but the dataset has an alpha band that seems to apply to this band (specific rules yet to be determined) and that is of type GDT_Byte then that alpha band will be returned, and the flags GMF_PER_DATASET and GMF_ALPHA will be returned in the flags.
- If neither of the above apply, an instance of the new GDALAllValidRasterBand class will be returned that has 255 values for all pixels. The null flags will return GMF_ALL_VALID.

This method is the same as the C function GDALGetMaskFlags().

Since
  GDAL 1.5.0

Returns
  a valid mask band.

See also
  http://trac.osgeo.org/gdal/wiki/rfc15_nodatabitmask

Reimplemented from GDALRasterBand.

The documentation for this class was generated from the following files:

- gdal_priv.h
- gdalallvalidmaskband.cpp

Generated for GDAL by 1.8.8.