GDAL
Public Member Functions | Protected Member Functions | Protected Attributes
GDALMajorObject Class Reference

Object with metadata. More...

#include <gdal_priv.h>

Inheritance diagram for GDALMajorObject:
GDALDataset GDALDriver GDALDriverManager GDALRasterBand OGRLayer GDALPamDataset GDALProxyDataset OGRDataSource VRTDataset OGRSFDriver VRTDriver GDALAllValidMaskBand GDALNoDataMaskBand GDALNoDataValuesMaskBand GDALPamRasterBand GDALProxyRasterBand GDALRescaledAlphaBand VRTRasterBand OGRAbstractProxiedLayer OGRGenSQLResultsLayer OGRLayerDecorator OGRUnionLayer

List of all members.

Public Member Functions

int GetMOFlags ()
void SetMOFlags (int nFlagsIn)
virtual const char * GetDescription () const
 Fetch object description.
virtual void SetDescription (const char *)
 Set object description.
virtual char ** GetMetadataDomainList ()
 Fetch list of metadata domains.
virtual char ** GetMetadata (const char *pszDomain="")
 Fetch metadata.
virtual CPLErr SetMetadata (char **papszMetadata, const char *pszDomain="")
 Set metadata.
virtual const char * GetMetadataItem (const char *pszName, const char *pszDomain="")
 Fetch single metadata item.
virtual CPLErr SetMetadataItem (const char *pszName, const char *pszValue, const char *pszDomain="")
 Set single metadata item.

Protected Member Functions

char ** BuildMetadataDomainList (char **papszList, int bCheckNonEmpty,...) CPL_NULL_TERMINATED
 Helper function for custom implementations of GetMetadataDomainList()

Protected Attributes

int nFlags
CPLString sDescription
GDALMultiDomainMetadata oMDMD

Detailed Description

Object with metadata.


Member Function Documentation

char ** GDALMajorObject::BuildMetadataDomainList ( char **  papszList,
int  bCheckNonEmpty,
  ... 
) [protected]

Helper function for custom implementations of GetMetadataDomainList()

Parameters:
papszListinitial list of domains. May be NULL. Will become invalid after function call (use return value)
bCheckNonEmptyif TRUE, each candidate domain will be tested to be non empty
...NULL terminated variadic list of candidate domains.
Returns:
NULL or a string list. Must be freed with CSLDestroy()
Since:
GDAL 1.11
const char * GDALMajorObject::GetDescription ( ) const [virtual]

Fetch object description.

The semantics of the returned description are specific to the derived type. For GDALDatasets it is the dataset name. For GDALRasterBands it is actually a description (if supported) or "".

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

Returns:
non-null pointer to internal description string.
char ** GDALMajorObject::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:
pszDomainthe domain of interest. Use "" or NULL for the default domain.
Returns:
NULL or a string list.

Reimplemented in VRTDriver, VRTSourcedRasterBand, GDALProxyPoolRasterBand, GDALProxyPoolDataset, GDALPamDataset, GDALProxyRasterBand, OGRMutexedLayer, OGRMutexedDataSource, OGRLayerDecorator, and GDALProxyDataset.

Fetch list of metadata domains.

The returned string list is the list of (non-empty) metadata domains.

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

Returns:
NULL or a string list. Must be freed with CSLDestroy()
Since:
GDAL 1.11

Reimplemented in VRTDriver, VRTSourcedRasterBand, GDALProxyRasterBand, and GDALProxyDataset.

const char * GDALMajorObject::GetMetadataItem ( const char *  pszName,
const char *  pszDomain = "" 
) [virtual]

Fetch single metadata item.

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

Parameters:
pszNamethe key for the metadata item to fetch.
pszDomainthe 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 in VRTSourcedRasterBand, GDALProxyPoolRasterBand, GDALProxyPoolDataset, GDALPamDataset, GDALProxyRasterBand, OGRMutexedLayer, OGRMutexedDataSource, OGRLayerDecorator, and GDALProxyDataset.

void GDALMajorObject::SetDescription ( const char *  pszNewDesc) [virtual]

Set object description.

The semantics of the description are specific to the derived type. For GDALDatasets it is the dataset name. For GDALRasterBands it is actually a description (if supported) or "".

Normally application code should not set the "description" for GDALDatasets. It is handled internally.

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

Reimplemented in VRTRasterBand, and GDALPamRasterBand.

CPLErr GDALMajorObject::SetMetadata ( char **  papszMetadataIn,
const char *  pszDomain = "" 
) [virtual]

Set metadata.

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

Parameters:
papszMetadataInthe metadata in name=value string list format to apply.
pszDomainthe domain of interest. Use "" or NULL for the default domain.
Returns:
CE_None on success, CE_Failure on failure and CE_Warning if the metadata has been accepted, but is likely not maintained persistently by the underlying object between sessions.

Reimplemented in VRTDriver, VRTSourcedRasterBand, VRTRasterBand, GDALPamRasterBand, VRTDataset, GDALPamDataset, GDALProxyRasterBand, OGRMutexedLayer, OGRMutexedDataSource, OGRLayerDecorator, and GDALProxyDataset.

CPLErr GDALMajorObject::SetMetadataItem ( const char *  pszName,
const char *  pszValue,
const char *  pszDomain = "" 
) [virtual]

Set single metadata item.

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

Parameters:
pszNamethe key for the metadata item to fetch.
pszValuethe value to assign to the key.
pszDomainthe domain to set within, use NULL for the default domain.
Returns:
CE_None on success, or an error code on failure.

Reimplemented in GDALDriver, VRTSourcedRasterBand, VRTRasterBand, GDALPamRasterBand, VRTWarpedDataset, VRTDataset, GDALPamDataset, GDALProxyRasterBand, OGRMutexedLayer, OGRMutexedDataSource, OGRLayerDecorator, and GDALProxyDataset.


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

Generated for GDAL by doxygen 1.7.6.1.