Public Member Functions | Protected Member Functions | Friends

GDALProxyPoolRasterBand Class Reference

Inheritance diagram for GDALProxyPoolRasterBand:
GDALProxyRasterBand GDALRasterBand GDALMajorObject GDALProxyPoolMaskBand GDALProxyPoolOverviewRasterBand

List of all members.

Public Member Functions

 GDALProxyPoolRasterBand (GDALProxyPoolDataset *poDS, int nBand, GDALDataType eDataType, int nBlockXSize, int nBlockYSize)
 GDALProxyPoolRasterBand (GDALProxyPoolDataset *poDS, GDALRasterBand *poUnderlyingRasterBand)
void AddSrcMaskBandDescription (GDALDataType eDataType, int nBlockXSize, int nBlockYSize)
virtual char ** GetMetadata (const char *pszDomain)
 Fetch metadata.
virtual const char * GetMetadataItem (const char *pszName, const char *pszDomain)
 Fetch single metadata item.
virtual char ** GetCategoryNames ()
 Fetch the list of category names for this raster.
virtual const char * GetUnitType ()
 Return raster unit type.
virtual GDALColorTableGetColorTable ()
 Fetch the color table associated with band.
virtual GDALRasterBandGetOverview (int)
 Fetch overview raster band object.
virtual GDALRasterBandGetRasterSampleOverview (int nDesiredSamples)
 Fetch best sampling overview.
virtual GDALRasterBandGetMaskBand ()
 Return the mask band associated with the band.

Protected Member Functions

virtual GDALRasterBandRefUnderlyingRasterBand ()
virtual void UnrefUnderlyingRasterBand (GDALRasterBand *poUnderlyingRasterBand)

Friends

class GDALProxyPoolOverviewRasterBand
class GDALProxyPoolMaskBand

Member Function Documentation

char ** GDALProxyPoolRasterBand::GetCategoryNames (  )  [virtual]

Fetch the list of category names for this raster.

The return list is a "StringList" in the sense of the CPL functions. That is a NULL terminated array of strings. Raster values without associated names will have an empty string in the returned list. The first entry in the list is for raster values of zero, and so on.

The returned stringlist should not be altered or freed by the application. It may change on the next GDAL call, so please copy it if it is needed for any period of time.

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

Returns:
list of names, or NULL if none.

Reimplemented from GDALProxyRasterBand.

GDALColorTable * GDALProxyPoolRasterBand::GetColorTable (  )  [virtual]

Fetch the color table associated with band.

If there is no associated color table, the return result is NULL. The returned color table remains owned by the GDALRasterBand, and can't be depended on for long, nor should it ever be modified by the caller.

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

Returns:
internal color table, or NULL.

Reimplemented from GDALProxyRasterBand.

GDALRasterBand * GDALProxyPoolRasterBand::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 GDALProxyRasterBand.

char ** GDALProxyPoolRasterBand::GetMetadata ( const char *  pszDomain  )  [virtual]

Fetch metadata.

The returned string list is owned by the object, and may change at any time. It is formated as a "Name=value" list with the last pointer value being NULL. Use the the CPL StringList functions such as CSLFetchNameValue() to manipulate it.

Note that relatively few formats return any metadata at this time.

This method does the same thing as the C function GDALGetMetadata().

Parameters:
pszDomain the domain of interest. Use "" or NULL for the default domain.
Returns:
NULL or a string list.

Reimplemented from GDALProxyRasterBand.

const char * GDALProxyPoolRasterBand::GetMetadataItem ( const char *  pszName,
const char *  pszDomain 
) [virtual]

Fetch single metadata item.

The C function GDALGetMetadataItem() does the same thing as this method.

Parameters:
pszName the key for the metadata item to fetch.
pszDomain the domain to fetch for, use NULL for the default domain.
Returns:
NULL on failure to find the key, or a pointer to an internal copy of the value string on success.

Reimplemented from GDALProxyRasterBand.

GDALRasterBand * GDALProxyPoolRasterBand::GetOverview ( int  i  )  [virtual]

Fetch overview raster band object.

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

Parameters:
i overview index between 0 and GetOverviewCount()-1.
Returns:
overview GDALRasterBand.

Reimplemented from GDALProxyRasterBand.

GDALRasterBand * GDALProxyPoolRasterBand::GetRasterSampleOverview ( int  nDesiredSamples  )  [virtual]

Fetch best sampling overview.

Returns the most reduced overview of the given band that still satisfies the desired number of samples. This function can be used with zero as the number of desired samples to fetch the most reduced overview. The same band as was passed in will be returned if it has not overviews, or if none of the overviews have enough samples.

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

Parameters:
nDesiredSamples the returned band will have at least this many pixels.
Returns:
optimal overview or the band itself.

Reimplemented from GDALProxyRasterBand.

const char * GDALProxyPoolRasterBand::GetUnitType (  )  [virtual]

Return raster unit type.

Return a name for the units of this raster's values. For instance, it might be "m" for an elevation model in meters, or "ft" for feet. If no units are available, a value of "" will be returned. The returned string should not be modified, nor freed by the calling application.

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

Returns:
unit name string.

Reimplemented from GDALProxyRasterBand.


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

Generated for GDAL by doxygen 1.7.1.