31 #ifndef GDAL_H_INCLUDED 32 #define GDAL_H_INCLUDED 41 #if defined(GDAL_COMPILATION) 42 #define DO_NOT_DEFINE_GDAL_RELEASE_DATE_AND_GDAL_RELEASE_NAME 44 #include "gdal_version.h" 47 #include "cpl_progress.h" 143 GRIORA_RESERVED_START = 8,
144 GRIORA_RESERVED_END = 13,
189 #define RASTERIO_EXTRA_ARG_CURRENT_VERSION 1 195 #define INIT_RASTERIO_EXTRA_ARG(s) \ 196 do { (s).nVersion = RASTERIO_EXTRA_ARG_CURRENT_VERSION; \ 197 (s).eResampleAlg = GRIORA_NearestNeighbour; \ 198 (s).pfnProgress = CPL_NULLPTR; \ 199 (s).pProgressData = CPL_NULLPTR; \ 200 (s).bFloatingPointWindowValidity = FALSE; } while(0) 204 {
GCI_Undefined=0,
GCI_GrayIndex=1,
GCI_PaletteIndex=2,
GCI_RedBand=3,
GCI_GreenBand=4,
GCI_BlueBand=5,
GCI_AlphaBand=6,
GCI_HueBand=7,
GCI_SaturationBand=8,
GCI_LightnessBand=9,
GCI_CyanBand=10,
GCI_MagentaBand=11,
GCI_YellowBand=12,
GCI_BlackBand=13,
GCI_YCbCr_YBand=14,
GCI_YCbCr_CbBand=15,
GCI_YCbCr_CrBand=16,
GCI_Max=16
243 #define GDALMD_AREA_OR_POINT "AREA_OR_POINT" 246 # define GDALMD_AOP_AREA "Area" 249 # define GDALMD_AOP_POINT "Point" 257 #define CPLE_WrongFormat CPL_STATIC_CAST(CPLErrorNum, 200) 328 #define GDAL_DMD_LONGNAME "DMD_LONGNAME" 331 #define GDAL_DMD_HELPTOPIC "DMD_HELPTOPIC" 334 #define GDAL_DMD_MIMETYPE "DMD_MIMETYPE" 337 #define GDAL_DMD_EXTENSION "DMD_EXTENSION" 343 #define GDAL_DMD_CONNECTION_PREFIX "DMD_CONNECTION_PREFIX" 348 #define GDAL_DMD_EXTENSIONS "DMD_EXTENSIONS" 351 #define GDAL_DMD_CREATIONOPTIONLIST "DMD_CREATIONOPTIONLIST" 356 #define GDAL_DMD_MULTIDIM_DATASET_CREATIONOPTIONLIST "DMD_MULTIDIM_DATASET_CREATIONOPTIONLIST" 361 #define GDAL_DMD_MULTIDIM_GROUP_CREATIONOPTIONLIST "DMD_MULTIDIM_GROUP_CREATIONOPTIONLIST" 366 #define GDAL_DMD_MULTIDIM_DIMENSION_CREATIONOPTIONLIST "DMD_MULTIDIM_DIMENSION_CREATIONOPTIONLIST" 371 #define GDAL_DMD_MULTIDIM_ARRAY_CREATIONOPTIONLIST "DMD_MULTIDIM_ARRAY_CREATIONOPTIONLIST" 376 #define GDAL_DMD_MULTIDIM_ATTRIBUTE_CREATIONOPTIONLIST "DMD_MULTIDIM_ATTRIBUTE_CREATIONOPTIONLIST" 381 #define GDAL_DMD_OPENOPTIONLIST "DMD_OPENOPTIONLIST" 384 #define GDAL_DMD_CREATIONDATATYPES "DMD_CREATIONDATATYPES" 389 #define GDAL_DMD_CREATIONFIELDDATATYPES "DMD_CREATIONFIELDDATATYPES" 394 #define GDAL_DMD_CREATIONFIELDDATASUBTYPES "DMD_CREATIONFIELDDATASUBTYPES" 404 #define GDAL_DMD_SUBDATASETS "DMD_SUBDATASETS" 407 #define GDAL_DCAP_OPEN "DCAP_OPEN" 417 #define GDAL_DCAP_CREATE "DCAP_CREATE" 423 #define GDAL_DCAP_CREATE_MULTIDIMENSIONAL "DCAP_CREATE_MULTIDIMENSIONAL" 433 #define GDAL_DCAP_CREATECOPY "DCAP_CREATECOPY" 440 #define GDAL_DCAP_CREATECOPY_MULTIDIMENSIONAL "DCAP_CREATECOPY_MULTIDIMENSIONAL" 445 #define GDAL_DCAP_MULTIDIM_RASTER "DCAP_MULTIDIM_RASTER" 448 #define GDAL_DCAP_SUBCREATECOPY "DCAP_SUBCREATECOPY" 451 #define GDAL_DCAP_VIRTUALIO "DCAP_VIRTUALIO" 456 #define GDAL_DCAP_RASTER "DCAP_RASTER" 461 #define GDAL_DCAP_VECTOR "DCAP_VECTOR" 466 #define GDAL_DCAP_GNM "DCAP_GNM" 471 #define GDAL_DCAP_NOTNULL_FIELDS "DCAP_NOTNULL_FIELDS" 476 #define GDAL_DCAP_UNIQUE_FIELDS "DCAP_UNIQUE_FIELDS" 481 #define GDAL_DCAP_DEFAULT_FIELDS "DCAP_DEFAULT_FIELDS" 486 #define GDAL_DCAP_NOTNULL_GEOMFIELDS "DCAP_NOTNULL_GEOMFIELDS" 493 #define GDAL_DCAP_NONSPATIAL "DCAP_NONSPATIAL" 498 #define GDAL_DCAP_FEATURE_STYLES "DCAP_FEATURE_STYLES" 503 #define GDAL_DCAP_COORDINATE_EPOCH "DCAP_COORDINATE_EPOCH" 513 #define GDAL_DCAP_MULTIPLE_VECTOR_LAYERS "DCAP_MULTIPLE_VECTOR_LAYERS" 518 #define GDAL_DIM_TYPE_HORIZONTAL_X "HORIZONTAL_X" 523 #define GDAL_DIM_TYPE_HORIZONTAL_Y "HORIZONTAL_Y" 528 #define GDAL_DIM_TYPE_VERTICAL "VERTICAL" 533 #define GDAL_DIM_TYPE_TEMPORAL "TEMPORAL" 538 #define GDAL_DIM_TYPE_PARAMETRIC "PARAMETRIC" 554 const char *pszFilename,
unsigned int nIdentifyFlags,
555 const char *
const *papszAllowedDrivers,
const char *
const *papszFileList);
568 #define GDAL_OF_READONLY 0x00 574 #define GDAL_OF_UPDATE 0x01 580 #define GDAL_OF_ALL 0x00 586 #define GDAL_OF_RASTER 0x02 592 #define GDAL_OF_VECTOR 0x04 598 #define GDAL_OF_GNM 0x08 604 #define GDAL_OF_MULTIDIM_RASTER 0x10 607 #define GDAL_OF_KIND_MASK 0x1E 614 #define GDAL_OF_SHARED 0x20 620 #define GDAL_OF_VERBOSE_ERROR 0x40 628 #define GDAL_OF_INTERNAL 0x80 639 #define GDAL_OF_DEFAULT_BLOCK_ACCESS 0 649 #define GDAL_OF_ARRAY_BLOCK_ACCESS 0x100 659 #define GDAL_OF_HASHSET_BLOCK_ACCESS 0x200 664 #define GDAL_OF_RESERVED_1 0x300 667 #define GDAL_OF_BLOCK_ACCESS_MASK 0x300 671 unsigned int nOpenFlags,
672 const char*
const* papszAllowedDrivers,
673 const char*
const* papszOpenOptions,
687 void CPL_DLL GDALDestroy(
void );
691 const char * pszNewName,
692 const char * pszOldName );
694 const char * pszNewName,
695 const char * pszOldName);
737 int CPL_DLL CPL_STDCALL
740 int CPL_DLL CPL_STDCALL
744 double *,
double * );
746 const double *padfGeoTransform2,
747 double *padfGeoTransformOut);
757 const char CPL_DLL * CPL_STDCALL
759 CPLErr CPL_DLL CPL_STDCALL
770 #define GDAL_DS_LAYER_CREATIONOPTIONLIST "DS_LAYER_CREATIONOPTIONLIST" 785 int nXSize,
int nYSize,
786 void *pBuf,
int nBufXSize,
int nBufYSize,
788 int nPixelSpace,
int nLineSpace,
int nBandSpace,
791 void CPL_DLL CPL_STDCALL
796 int nDSXOff,
int nDSYOff,
int nDSXSize,
int nDSYSize,
797 void * pBuffer,
int nBXSize,
int nBYSize,
GDALDataType eBDataType,
798 int nBandCount,
int *panBandCount,
803 int nDSXOff,
int nDSYOff,
int nDSXSize,
int nDSYSize,
804 void * pBuffer,
int nBXSize,
int nBYSize,
GDALDataType eBDataType,
805 int nBandCount,
int *panBandCount,
810 int nDSXOff,
int nDSYOff,
int nDSXSize,
int nDSYSize,
812 int nBandCount,
int *panBandCount,
CSLConstList papszOptions );
835 CPLErr CPL_DLL CPL_STDCALL
842 CPLErr CPL_DLL CPL_STDCALL
851 const char *
const * constpapszOptions,
857 const char *pszResampling,
858 GDALProgressFunc pfnProgress,
void *pProgressData );
873 double* pdfProgressPct,
874 GDALProgressFunc pfnProgress,
875 void* pProgressData );
890 const char* pszName);
893 char** ppszFailureReason);
906 #define SRCVAL(papoSource, eSrcType, ii) \ 907 (eSrcType == GDT_Byte ? \ 908 CPL_REINTERPRET_CAST(const GByte*,papoSource)[ii] : \ 909 (eSrcType == GDT_Float32 ? \ 910 CPL_REINTERPRET_CAST(const float*,papoSource)[ii] : \ 911 (eSrcType == GDT_Float64 ? \ 912 CPL_REINTERPRET_CAST(const double*,papoSource)[ii] : \ 913 (eSrcType == GDT_Int32 ? \ 914 CPL_REINTERPRET_CAST(const GInt32*,papoSource)[ii] : \ 915 (eSrcType == GDT_UInt16 ? \ 916 CPL_REINTERPRET_CAST(const GUInt16*,papoSource)[ii] : \ 917 (eSrcType == GDT_Int16 ? \ 918 CPL_REINTERPRET_CAST(const GInt16*,papoSource)[ii] : \ 919 (eSrcType == GDT_UInt32 ? \ 920 CPL_REINTERPRET_CAST(const GUInt32*,papoSource)[ii] : \ 921 (eSrcType == GDT_CInt16 ? \ 922 CPL_REINTERPRET_CAST(const GInt16*,papoSource)[(ii) * 2] : \ 923 (eSrcType == GDT_CInt32 ? \ 924 CPL_REINTERPRET_CAST(const GInt32*,papoSource)[(ii) * 2] : \ 925 (eSrcType == GDT_CFloat32 ? \ 926 CPL_REINTERPRET_CAST(const float*,papoSource)[(ii) * 2] : \ 927 (eSrcType == GDT_CFloat64 ? \ 928 CPL_REINTERPRET_CAST(const double*,papoSource)[(ii) * 2] : 0))))))))))) 934 int nBufXSize,
int nBufYSize,
936 int nPixelSpace,
int nLineSpace);
942 int nBufXSize,
int nBufYSize,
944 int nPixelSpace,
int nLineSpace,
948 void CPL_DLL CPL_STDCALL
951 CPLErr CPL_DLL CPL_STDCALL
953 int *pnXValid,
int *pnYValid );
956 int nDSXOff,
int nDSYOff,
int nDSXSize,
int nDSYSize,
959 CPLErr CPL_DLL CPL_STDCALL
961 int nDSXOff,
int nDSYOff,
int nDSXSize,
int nDSYSize,
962 void * pBuffer,
int nBXSize,
int nBYSize,
GDALDataType eBDataType,
964 CPLErr CPL_DLL CPL_STDCALL
966 int nDSXOff,
int nDSYOff,
int nDSXSize,
int nDSYSize,
967 void * pBuffer,
int nBXSize,
int nBYSize,
GDALDataType eBDataType,
980 CPLErr CPL_DLL CPL_STDCALL
996 double *pdfMin,
double *pdfMax,
double *pdfMean,
double *pdfStdDev );
999 double *pdfMin,
double *pdfMax,
double *pdfMean,
double *pdfStdDev,
1000 GDALProgressFunc pfnProgress,
void *pProgressData );
1003 double dfMin,
double dfMax,
double dfMean,
double dfStdDev );
1013 void CPL_DLL CPL_STDCALL
1015 double adfMinMax[2] );
1018 double dfMin,
double dfMax,
1019 int nBuckets,
int *panHistogram,
1020 int bIncludeOutOfRange,
int bApproxOK,
1021 GDALProgressFunc pfnProgress,
1022 void * pProgressData )
1024 CPL_WARN_DEPRECATED(
"Use GDALGetRasterHistogramEx() instead")
1028 double dfMin,
double dfMax,
1029 int nBuckets,
GUIntBig *panHistogram,
1030 int bIncludeOutOfRange,
int bApproxOK,
1031 GDALProgressFunc pfnProgress,
1032 void * pProgressData );
1034 double *pdfMin,
double *pdfMax,
1035 int *pnBuckets,
int **ppanHistogram,
1037 GDALProgressFunc pfnProgress,
1038 void * pProgressData )
1040 CPL_WARN_DEPRECATED(
"Use GDALGetDefaultHistogramEx() instead")
1044 double *pdfMin,
double *pdfMax,
1045 int *pnBuckets,
GUIntBig **ppanHistogram,
1047 GDALProgressFunc pfnProgress,
1048 void * pProgressData );
1050 double dfMin,
double dfMax,
1051 int nBuckets,
int *panHistogram )
1053 CPL_WARN_DEPRECATED(
"Use GDALSetDefaultHistogramEx() instead")
1057 double dfMin,
double dfMax,
1058 int nBuckets,
GUIntBig *panHistogram );
1059 int CPL_DLL CPL_STDCALL
1066 double dfRealValue,
double dfImaginaryValue );
1067 CPLErr CPL_DLL CPL_STDCALL
1069 double *pdfMean,
double *pdfStdDev,
1070 GDALProgressFunc pfnProgress,
1071 void *pProgressData );
1075 GDALProgressFunc pfnProgress,
1076 void *pProgressData );
1086 const char *pszMetadata);
1090 CPLErr CPL_DLL CPL_STDCALL
1094 #define GMF_ALL_VALID 0x01 1097 #define GMF_PER_DATASET 0x02 1100 #define GMF_ALPHA 0x04 1103 #define GMF_NODATA 0x08 1108 #define GDAL_DATA_COVERAGE_STATUS_UNIMPLEMENTED 0x01 1114 #define GDAL_DATA_COVERAGE_STATUS_DATA 0x02 1121 #define GDAL_DATA_COVERAGE_STATUS_EMPTY 0x04 1124 int nXOff,
int nYOff,
1125 int nXSize,
int nYSize,
1127 double* pdfDataPct );
1135 int* pnXBufOff,
int* pnYBufOff,
1136 int* pnXBufSize,
int* pnYBufSize );
1146 void CPL_DLL CPL_STDCALL
GDALSwapWords(
void *pData,
int nWordSize,
int nWordCount,
1148 void CPL_DLL CPL_STDCALL
GDALSwapWordsEx(
void *pData,
int nWordSize,
size_t nWordCount,
1151 void CPL_DLL CPL_STDCALL
1158 void CPL_DLL CPL_STDCALL
1167 GByte *pabyDstData,
int nDstOffset,
int nDstStep,
1168 int nBitCount,
int nStepCount );
1175 int CPL_DLL CPL_STDCALL
GDALLoadTabFile(
const char *,
double *,
char **,
1177 int CPL_DLL CPL_STDCALL
GDALReadTabFile(
const char *,
double *,
char **,
1184 const char CPL_DLL * CPL_STDCALL
GDALDecToDMS(
double,
const char *,
int );
1190 #ifndef GDAL_VERSION_INFO_DEFINED 1191 #ifndef DOXYGEN_SKIP 1192 #define GDAL_VERSION_INFO_DEFINED 1197 #ifndef GDAL_CHECK_VERSION 1199 int CPL_DLL CPL_STDCALL
GDALCheckVersion(
int nVersionMajor,
int nVersionMinor,
1200 const char* pszCallingComponentName);
1205 #define GDAL_CHECK_VERSION(pszCallingComponentName) \ 1206 GDALCheckVersion(GDAL_VERSION_MAJOR, GDAL_VERSION_MINOR, pszCallingComponentName) 1211 #ifdef GDAL_COMPILATION 1212 #define GDALExtractRPCInfoV1 GDALExtractRPCInfo 1214 #define GDALRPCInfo GDALRPCInfoV2 1215 #define GDALExtractRPCInfo GDALExtractRPCInfoV2 1225 double dfHEIGHT_OFF;
1227 double dfLINE_SCALE;
1228 double dfSAMP_SCALE;
1230 double dfLONG_SCALE;
1231 double dfHEIGHT_SCALE;
1233 double adfLINE_NUM_COEFF[20];
1234 double adfLINE_DEN_COEFF[20];
1235 double adfSAMP_NUM_COEFF[20];
1236 double adfSAMP_DEN_COEFF[20];
1261 double adfLINE_NUM_COEFF[20];
1262 double adfLINE_DEN_COEFF[20];
1263 double adfSAMP_NUM_COEFF[20];
1264 double adfSAMP_DEN_COEFF[20];
1277 int CPL_DLL CPL_STDCALL GDALExtractRPCInfoV1(
CSLConstList, GDALRPCInfoV1 * );
1325 typedef enum {
GFU_Generic = 0,
GFU_PixelCount = 1,
GFU_Name = 2,
GFU_Min = 3,
GFU_Max = 4,
GFU_MinMax = 5,
GFU_Red = 6,
GFU_Green = 7,
GFU_Blue = 8,
GFU_Alpha = 9,
GFU_RedMin = 10,
GFU_GreenMin = 11,
GFU_BlueMin = 12,
GFU_AlphaMin = 13,
GFU_RedMax = 14,
GFU_GreenMax = 15,
GFU_BlueMax = 16,
GFU_AlphaMax = 17,
GFU_MaxCount 1391 int iField,
int iStartRow,
int iLength,
double *pdfData );
1393 int iField,
int iStartRow,
int iLength,
int *pnData);
1395 int iField,
int iStartRow,
int iLength,
CSLConstList papszStrList);
1406 double *,
double * );
1419 void CPL_DLL* CPL_STDCALL
1444 int nXOff,
int nYOff,
1445 int nXSize,
int nYSize,
1446 int nBufXSize,
int nBufYSize,
1448 int nBandCount,
int* panBandMap,
1453 size_t nPageSizeHint,
1454 int bSingleThreadUsage,
1459 int nXOff,
int nYOff,
1460 int nXSize,
int nYSize,
1461 int nBufXSize,
int nBufYSize,
1466 size_t nPageSizeHint,
1467 int bSingleThreadUsage,
1489 int nXOff,
int nYOff,
1490 int nXSize,
int nYSize,
1491 int nTileXSize,
int nTileYSize,
1493 int nBandCount,
int* panBandMap,
1496 int bSingleThreadUsage,
1501 int nXOff,
int nYOff,
1502 int nXSize,
int nYSize,
1503 int nTileXSize,
int nTileYSize,
1506 int bSingleThreadUsage,
1515 int nInputSpectralBands,
1530 const char * pszName,
1538 const char* pszName,
size_t nTotalSize,
1568 const char* pszName,
1569 const char* pszStartingPoint,
1581 const char* pszSubGroupName,
1584 const char* pszName,
1585 const char* pszType,
1586 const char* pszDirection,
1590 const char* pszName,
1596 const char* pszName,
1611 const size_t* count,
1616 const void* pDstBufferAllocStart,
1617 size_t nDstBufferllocSize);
1620 const size_t* count,
1624 const void* pSrcBuffer,
1625 const void* psrcBufferAllocStart,
1626 size_t nSrcBufferllocSize);
1629 const size_t* count);
1632 const size_t* count,
1637 const char* pszName,
1644 int* pbHasNoDataValue);
1647 double dfNoDataValue);
1662 size_t nMaxChunkMemory);
1666 size_t nNewAxisCount,
1667 const int *panMapNewAxisToOldAxis);
1671 size_t iXDim,
size_t iYDim);
1674 double *pdfMin,
double *pdfMax,
1675 double *pdfMean,
double *pdfStdDev,
1677 GDALProgressFunc pfnProgress,
void *pProgressData );
1680 double *pdfMin,
double *pdfMax,
1681 double *pdfMean,
double *pdfStdDev,
1683 GDALProgressFunc,
void *pProgressData );
1685 size_t nNewDimCount,
int GDALMDArrayCache(GDALMDArrayH hArray, CSLConstList papszOptions)
Cache the content of the array into an auxiliary filename.
Definition: gdalmultidim.cpp:10011
double GDALRATGetValueAsDouble(GDALRasterAttributeTableH, int, int)
Fetch field value as a double.
Definition: gdal_rat.cpp:1652
const char * GDALAttributeReadAsString(GDALAttributeH hAttr)
Return the value of an attribute as a string.
Definition: gdalmultidim.cpp:10206
int GDALMDArraySetRawNoDataValue(GDALMDArrayH hArray, const void *)
Set the nodata value as a "raw" value.
Definition: gdalmultidim.cpp:9387
int GDALRATGetColOfUsage(GDALRasterAttributeTableH, GDALRATFieldUsage)
Fetch column index for given usage.
Definition: gdal_rat.cpp:1438
CPLErr GDALGetRasterStatistics(GDALRasterBandH, int bApproxOK, int bForce, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev)
Fetch image statistics.
Definition: gdalrasterband.cpp:3844
GDALGroupH GDALGroupOpenGroup(GDALGroupH hGroup, const char *pszSubGroupName, CSLConstList papszOptions)
Open and return a sub-group.
Definition: gdalmultidim.cpp:8649
GDALEDTComponentH GDALEDTComponentCreate(const char *pszName, size_t nOffset, GDALExtendedDataTypeH hType)
Create a new GDALEDTComponent.
Definition: gdalmultidim.cpp:8412
void GDALCopyWords(const void *pSrcData, GDALDataType eSrcType, int nSrcPixelOffset, void *pDstData, GDALDataType eDstType, int nDstPixelOffset, int nWordCount)
Copy pixel words from buffer to buffer.
Definition: rasterio.cpp:3323
CPLVirtualMem * GDALDatasetGetVirtualMem(GDALDatasetH hDS, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize, int nYSize, int nBufXSize, int nBufYSize, GDALDataType eBufType, int nBandCount, int *panBandMap, int nPixelSpace, GIntBig nLineSpace, GIntBig nBandSpace, size_t nCacheSize, size_t nPageSizeHint, int bSingleThreadUsage, CSLConstList papszOptions)
Create a CPLVirtualMem object from a GDAL dataset object.
Definition: gdalvirtualmem.cpp:959
void * OGRLayerH
Opaque type for a layer (OGRLayer)
Definition: ogr_api.h:589
int GDALMDArraySetOffset(GDALMDArrayH hArray, double dfOffset)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9463
void GDALAttributeFreeRawResult(GDALAttributeH hAttr, GByte *raw, size_t nSize)
Free the return of GDALAttributeAsRaw()
Definition: gdalmultidim.cpp:10170
const char * GDALAttributeGetName(GDALAttributeH hAttr)
Return the name of the attribute.
Definition: gdalmultidim.cpp:10041
GDALMDArrayH GDALMDArrayGetMask(GDALMDArrayH hArray, CSLConstList papszOptions)
Return an array that is a mask for the current array.
Definition: gdalmultidim.cpp:9762
CPLErr GDALSetProjection(GDALDatasetH, const char *)
Set the projection reference string for this dataset.
Definition: gdaldataset.cpp:1137
GDALColorInterp GDALGetColorInterpretationByName(const char *pszName)
Get color interpretation by symbolic name.
Definition: gdal_misc.cpp:986
GDALDataType
Definition: gdal.h:62
struct GDALDimensionHS * GDALDimensionH
Opaque type for C++ GDALDimension.
Definition: gdal.h:321
CPLErr GDALDatasetCopyWholeRaster(GDALDatasetH hSrcDS, GDALDatasetH hDstDS, CSLConstList papszOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Copy all dataset raster data.
Definition: rasterio.cpp:4652
CPLErr GDALComputeRasterStatistics(GDALRasterBandH, int bApproxOK, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GDALProgressFunc pfnProgress, void *pProgressData)
Compute image statistics.
Definition: gdalrasterband.cpp:5380
int GDALGetOverviewCount(GDALRasterBandH)
Return the number of overview layers available.
Definition: gdalrasterband.cpp:2213
char * pszInfo
Informational message or "".
Definition: gdal.h:716
GDALMDArrayH * GDALMDArrayGetCoordinateVariables(GDALMDArrayH hArray, size_t *pnCount)
Return coordinate variables.
Definition: gdalmultidim.cpp:9966
GDALDatasetH GDALCreatePansharpenedVRT(const char *pszXML, GDALRasterBandH hPanchroBand, int nInputSpectralBands, GDALRasterBandH *pahInputSpectralBands)
Create a virtual pansharpened dataset.
Definition: vrtpansharpened.cpp:93
Document node structure.
Definition: cpl_minixml.h:69
int GDALExtendedDataTypeCanConvertTo(GDALExtendedDataTypeH hSourceEDT, GDALExtendedDataTypeH hTargetEDT)
Return whether this data type can be converted to the other one.
Definition: gdalmultidim.cpp:8305
const char * GDALDimensionGetType(GDALDimensionH hDim)
Return dimension type.
Definition: gdalmultidim.cpp:10511
void GDALDatasetReleaseResultSet(GDALDatasetH, OGRLayerH)
Release results of ExecuteSQL().
Definition: gdaldataset.cpp:4377
struct GDALExtendedDataTypeHS * GDALExtendedDataTypeH
Opaque type for C++ GDALExtendedDataType.
Definition: gdal.h:311
GDALExtendedDataTypeH GDALExtendedDataTypeCreateCompound(const char *pszName, size_t nTotalSize, size_t nComponents, const GDALEDTComponentH *comps)
Return a new GDALExtendedDataType of class GEDTC_COMPOUND.
Definition: gdalmultidim.cpp:8190
CPLErr GDALRATValuesIOAsString(GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag, int iField, int iStartRow, int iLength, CSLConstList papszStrList)
Read or Write a block of strings to/from the Attribute Table.
Definition: gdal_rat.cpp:288
Definitions for CPL mini XML Parser/Serializer.
double dfGCPPixel
Pixel (x) location of GCP on raster.
Definition: gdal.h:719
double GDALPackedDMSToDec(double)
Convert a packed DMS value (DDDMMMSSS.SS) into decimal degrees.
Definition: gdal_misc.cpp:2352
CPLErr GDALDatasetAdviseRead(GDALDatasetH hDS, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, int nBXSize, int nBYSize, GDALDataType eBDataType, int nBandCount, int *panBandCount, CSLConstList papszOptions)
Advise driver of upcoming read requests.
Definition: gdaldataset.cpp:2890
GDALDataType GDALDataTypeUnion(GDALDataType, GDALDataType)
Return the smallest data type that can fully express both input data types.
Definition: gdal_misc.cpp:130
CPLVirtualMem * GDALRasterBandGetTiledVirtualMem(GDALRasterBandH hBand, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize, int nYSize, int nTileXSize, int nTileYSize, GDALDataType eBufType, size_t nCacheSize, int bSingleThreadUsage, CSLConstList papszOptions)
Create a CPLVirtualMem object from a GDAL rasterband object, with tiling organization.
Definition: gdalvirtualmem.cpp:1669
CPLErr GDALCreateDatasetMaskBand(GDALDatasetH hDS, int nFlags)
Adds a mask band to the dataset.
Definition: gdaldataset.cpp:3183
Compound data type.
Definition: gdal.h:297
GDALMDArrayH GDALRasterBandAsMDArray(GDALRasterBandH)
Return a view of this raster band as a 2D multidimensional GDALMDArray.
Definition: gdalmultidim.cpp:10629
GDALDatasetH GDALMDArrayAsClassicDataset(GDALMDArrayH hArray, size_t iXDim, size_t iYDim)
Return a view of this array as a "classic" GDALDataset (ie 2D)
Definition: gdalmultidim.cpp:10659
const char * GDALDecToDMS(double, const char *, int)
Translate a decimal degrees value to a DMS string with hemisphere.
Definition: gdal_misc.cpp:2335
GDALDriverH GDALGetDriver(int)
Fetch driver by index.
Definition: gdaldrivermanager.cpp:403
CPLErr GDALSetRasterOffset(GDALRasterBandH hBand, double dfNewOffset)
Set scaling offset.
Definition: gdalrasterband.cpp:2504
double GDALAdjustValueToDataType(GDALDataType eDT, double dfValue, int *pbClamped, int *pbRounded)
Adjust a value to the output data type.
Definition: gdal_misc.cpp:688
CPLErr GDALBuildOverviews(GDALDatasetH, const char *, int, int *, int, int *, GDALProgressFunc, void *)
Build raster overview(s)
Definition: gdaldataset.cpp:2023
int GDALGetColorEntryAsRGB(GDALColorTableH, int, GDALColorEntry *)
Fetch a table entry in RGB format.
Definition: gdalcolortable.cpp:184
CPLErr GDALSetDefaultHistogramEx(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, GUIntBig *panHistogram)
Set default histogram.
Definition: gdalrasterband.cpp:5796
void GDALReleaseArrays(GDALMDArrayH *arrays, size_t nCount)
Free the return of GDALMDArrayGetCoordinateVariables()
Definition: gdalmultidim.cpp:9990
OGRLayerH GDALGroupOpenVectorLayer(GDALGroupH hGroup, const char *pszVectorLayerName, CSLConstList papszOptions)
Open and return a vector layer.
Definition: gdalmultidim.cpp:8698
int GDALMDArraySetScale(GDALMDArrayH hArray, double dfScale)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9425
GDALColorTableH GDALCloneColorTable(GDALColorTableH)
Make a copy of a color table.
Definition: gdalcolortable.cpp:280
struct OGRFieldDomainHS * OGRFieldDomainH
Opaque type for a field domain definition (OGRFieldDomain)
Definition: ogr_api.h:343
Core portability definitions for CPL.
GDALExtendedDataTypeH GDALExtendedDataTypeCreateStringEx(size_t nMaxStringLength, GDALExtendedDataTypeSubType eSubType)
Return a new GDALExtendedDataType of class GEDTC_STRING.
Definition: gdalmultidim.cpp:8165
const GDALColorEntry * GDALGetColorEntry(GDALColorTableH, int)
Fetch a color entry from table.
Definition: gdalcolortable.cpp:135
void * GDALAsyncReaderH
Opaque type used for the C bindings of the C++ GDALAsyncReader class.
Definition: gdal.h:283
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:329
const char * GDALDimensionGetName(GDALDimensionH hDim)
Return dimension name.
Definition: gdalmultidim.cpp:10483
int GDALReadTabFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for MapInfo .tab files.
Definition: gdal_misc.cpp:1764
int GDALRATGetColumnCount(GDALRasterAttributeTableH)
Fetch table column count.
Definition: gdal_rat.cpp:1276
GDALRasterAttributeTableH GDALCreateRasterAttributeTable(void)
Construct empty table.
Definition: gdal_rat.cpp:1203
GDALColorTableH GDALRATTranslateToColorTable(GDALRasterAttributeTableH, int nEntryCount)
Translate to a color table.
Definition: gdal_rat.cpp:1107
int GDALGetColorEntryCount(GDALColorTableH)
Get number of color entries in table.
Definition: gdalcolortable.cpp:317
void GDALDatasetClearStatistics(GDALDatasetH hDS)
Clear statistics
Definition: gdaldataset.cpp:8434
int GDALAttributeWriteInt(GDALAttributeH hAttr, int)
Write an attribute from a integer value.
Definition: gdalmultidim.cpp:10386
GDALDriverH GDALIdentifyDriverEx(const char *pszFilename, unsigned int nIdentifyFlags, const char *const *papszAllowedDrivers, const char *const *papszFileList)
Identify the driver that can open a raster file.
Definition: gdaldriver.cpp:2173
void GDALAllRegister(void)
Register all known configured GDAL drivers.
Definition: gdalallregister.cpp:62
GDALExtendedDataTypeSubType
Enumeration giving the subtype of a GDALExtendedDataType.
Definition: gdal.h:303
CPLErr GDALSetRasterUnitType(GDALRasterBandH hBand, const char *pszNewValue)
Set unit type.
Definition: gdalrasterband.cpp:2706
GDALAsyncStatusType GDALGetAsyncStatusTypeByName(const char *)
Get AsyncStatusType by symbolic name.
Definition: gdal_misc.cpp:793
GDALAttributeH * GDALMDArrayGetAttributes(GDALMDArrayH hArray, size_t *pnCount, CSLConstList papszOptions)
Return the list of attributes contained in this array.
Definition: gdalmultidim.cpp:9271
GDALAttributeH GDALMDArrayGetAttribute(GDALMDArrayH hArray, const char *pszName)
Return an attribute by its name.
Definition: gdalmultidim.cpp:9242
CPLErr GDALSetMetadata(GDALMajorObjectH, CSLConstList, const char *)
Set metadata.
Definition: gdalmajorobject.cpp:318
CPLErr GDALSetSpatialRef(GDALDatasetH, OGRSpatialReferenceH)
Set the spatial reference system for this dataset.
Definition: gdaldataset.cpp:1079
#define CPL_RESTRICT
restrict keyword to declare that pointers do not alias
Definition: cpl_port.h:935
const char * GDALMDArrayGetFullName(GDALMDArrayH hArray)
Return array full name.
Definition: gdalmultidim.cpp:9012
CPLErr GDALSetGCPs(GDALDatasetH, int, const GDAL_GCP *, const char *)
Assign GCPs.
Definition: gdaldataset.cpp:1900
GDALMDArrayH GDALGroupCreateMDArray(GDALGroupH hGroup, const char *pszName, size_t nDimensions, GDALDimensionH *pahDimensions, GDALExtendedDataTypeH hEDT, CSLConstList papszOptions)
Create a multidimensional array within a group.
Definition: gdalmultidim.cpp:8921
GDALDatasetH GDALCreateCopy(GDALDriverH, const char *, GDALDatasetH, int, CSLConstList, GDALProgressFunc, void *)
Create a copy of a dataset.
Definition: gdaldriver.cpp:1093
CPLErr GDALSetDefaultHistogram(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, int *panHistogram)
Set default histogram.
Definition: gdalrasterband.cpp:5752
CPLErr GDALDatasetRasterIOEx(GDALDatasetH hDS, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType, int nBandCount, int *panBandCount, GSpacing nPixelSpace, GSpacing nLineSpace, GSpacing nBandSpace, GDALRasterIOExtraArg *psExtraArg)
Read/write a region of image data from multiple bands.
Definition: gdaldataset.cpp:2683
GDALRATFieldType
Field type of raster attribute table.
Definition: gdal.h:1318
size_t GDALExtendedDataTypeGetMaxStringLength(GDALExtendedDataTypeH hEDT)
Return the maximum length of a string in bytes.
Definition: gdalmultidim.cpp:8287
const char * GDALGetDriverHelpTopic(GDALDriverH)
Return the URL to the help that describes the driver.
Definition: gdaldriver.cpp:1637
void GDALDeregisterDriver(GDALDriverH)
Deregister the passed driver.
Definition: gdaldrivermanager.cpp:580
const char * GDALGetProjectionRef(GDALDatasetH)
Fetch the projection definition string for this dataset.
Definition: gdaldataset.cpp:990
CPLErr GDALAddDerivedBandPixelFunc(const char *pszName, GDALDerivedPixelFunc pfnPixelFunc)
This adds a pixel function to the global list of available pixel functions for derived bands...
Definition: vrtderivedrasterband.cpp:239
void GDALDatasetSetStyleTable(GDALDatasetH, OGRStyleTableH)
Set dataset style table.
Definition: gdaldataset.cpp:4935
GDALColorTableH GDALCreateColorTable(GDALPaletteInterp)
Construct a new color table.
Definition: gdalcolortable.cpp:69
CPLErr GDALSetRasterScale(GDALRasterBandH hBand, double dfNewOffset)
Set scaling ratio.
Definition: gdalrasterband.cpp:2611
OGRLayerH GDALDatasetGetLayerByName(GDALDatasetH, const char *)
Fetch a layer by name.
Definition: gdaldataset.cpp:4475
double GDALMDArrayGetScaleEx(GDALMDArrayH hArray, int *pbHasValue, GDALDataType *peStorageType)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9524
GDALExtendedDataTypeH GDALEDTComponentGetType(GDALEDTComponentH hComp)
Return the data type of the component.
Definition: gdalmultidim.cpp:8471
int GDALCheckVersion(int nVersionMajor, int nVersionMinor, const char *pszCallingComponentName)
Return TRUE if GDAL library version at runtime matches nVersionMajor.nVersionMinor.
Definition: gdal_misc.cpp:2311
int GDALRATGetValueAsInt(GDALRasterAttributeTableH, int, int)
Fetch field value as a integer.
Definition: gdal_rat.cpp:1593
int GDALHasArbitraryOverviews(GDALRasterBandH)
Check for arbitrary overviews.
Definition: gdalrasterband.cpp:2173
GDALRasterAttributeTableH GDALGetDefaultRAT(GDALRasterBandH hBand)
Fetch default Raster Attribute Table.
Definition: gdalrasterband.cpp:5840
void GDALComputeRasterMinMax(GDALRasterBandH hBand, int bApproxOK, double adfMinMax[2])
Compute the min/max values for a band.
Definition: gdalrasterband.cpp:5704
GUInt64 * GDALAttributeGetDimensionsSize(GDALAttributeH hAttr, size_t *pnCount)
Return the dimension sizes of the attribute.
Definition: gdalmultidim.cpp:10104
CPLErr GDALSetRasterColorInterpretation(GDALRasterBandH, GDALColorInterp)
Set color interpretation of a band.
Definition: gdalrasterband.cpp:2034
GDALDriverH GDALGetDriverByName(const char *)
Fetch a driver based on the short name.
Definition: gdaldrivermanager.cpp:624
OGRSpatialReferenceH GDALMDArrayGetSpatialRef(GDALMDArrayH hArray)
Return the spatial reference system object associated with the array.
Definition: gdalmultidim.cpp:9885
struct GDALGroupHS * GDALGroupH
Opaque type for C++ GDALGroup.
Definition: gdal.h:315
int GDALGetDataTypeSize(GDALDataType)
Get data type size in bits.
Definition: gdal_misc.cpp:375
int GDALAttributeWriteStringArray(GDALAttributeH hAttr, CSLConstList)
Write an attribute from an array of strings.
Definition: gdalmultidim.cpp:10430
GDALRIOResampleAlg
RasterIO() resampling method.
Definition: gdal.h:130
void * GDALRATSerializeJSON(GDALRasterAttributeTableH)
Serialize Raster Attribute Table in Json format.
Definition: gdal_rat.cpp:2231
CPLErr GDALDatasetRasterIO(GDALDatasetH hDS, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType, int nBandCount, int *panBandCount, int nPixelSpace, int nLineSpace, int nBandSpace)
Read/write a region of image data from multiple bands.
Definition: gdaldataset.cpp:2654
int GDALDataTypeIsConversionLossy(GDALDataType eTypeFrom, GDALDataType eTypeTo)
Is conversion from eTypeFrom to eTypeTo potentially lossy.
Definition: gdal_misc.cpp:505
double dfLINE_SCALE
Definition: gdal.h:1255
const char * GDALGetDriverCreationOptionList(GDALDriverH)
Return the list of creation options of the driver.
Definition: gdaldriver.cpp:1662
double dfMIN_LONG
Definition: gdal.h:1266
GDALDatasetH GDALCreateMultiDimensional(GDALDriverH hDriver, const char *pszName, CSLConstList papszRootGroupOptions, CSLConstList papszOptions)
Create a new multidimensional dataset with this driver.
Definition: gdaldriver.cpp:368
GDALRWFlag
Definition: gdal.h:121
int GDALDimensionSetIndexingVariable(GDALDimensionH hDim, GDALMDArrayH hArray)
Set the variable that is used to index the dimension.
Definition: gdalmultidim.cpp:10580
int GDALGeneralCmdLineProcessor(int nArgc, char ***ppapszArgv, int nOptions)
General utility option processing.
Definition: gdal_misc.cpp:2865
void * GDALDatasetH
Opaque type used for the C bindings of the C++ GDALDataset class.
Definition: gdal.h:268
CPLErr GDALGetActualBlockSize(GDALRasterBandH, int nXBlockOff, int nYBlockOff, int *pnXValid, int *pnYValid)
Retrieve the actual block size for a given block offset.
Definition: gdalrasterband.cpp:803
void GDALExtendedDataTypeFreeComponents(GDALEDTComponentH *components, size_t nCount)
Free the return of GDALExtendedDataTypeGetComponents().
Definition: gdalmultidim.cpp:8393
unsigned char GByte
Unsigned byte type.
Definition: cpl_port.h:215
CPLErr GDALAddBand(GDALDatasetH hDS, GDALDataType eType, CSLConstList papszOptions)
Add a band to a dataset.
Definition: gdaldataset.cpp:607
Color tuple.
Definition: gdal.h:1286
OGRErr GDALDatasetStartTransaction(GDALDatasetH hDS, int bForce)
For datasources which support transactions, StartTransaction creates a transaction.
Definition: gdaldataset.cpp:7466
void GDALDestroyDriverManager(void)
Destroy the driver manager.
Definition: gdaldrivermanager.cpp:903
struct GDALEDTComponentHS * GDALEDTComponentH
Opaque type for C++ GDALEDTComponent.
Definition: gdal.h:313
const char * GDALRATGetValueAsString(GDALRasterAttributeTableH, int, int)
Fetch field value as a string.
Definition: gdal_rat.cpp:1534
void GDALRATSetValueAsString(GDALRasterAttributeTableH, int, int, const char *)
Set field value from string.
Definition: gdal_rat.cpp:1758
int GDALDataTypeIsComplex(GDALDataType)
Is data type complex?
Definition: gdal_misc.cpp:393
void GDALReleaseAttributes(GDALAttributeH *attributes, size_t nCount)
Free the return of GDALGroupGetAttributes() or GDALMDArrayGetAttributes()
Definition: gdalmultidim.cpp:8850
size_t GDALEDTComponentGetOffset(GDALEDTComponentH hComp)
Return the offset (in bytes) of the component in the compound data type.
Definition: gdalmultidim.cpp:8457
const char * GDALGetDriverLongName(GDALDriverH)
Return the long name of a driver.
Definition: gdaldriver.cpp:1606
GDALDataType GDALExtendedDataTypeGetNumericDataType(GDALExtendedDataTypeH hEDT)
Return numeric data type (only valid when GetClass() == GEDTC_NUMERIC)
Definition: gdalmultidim.cpp:8257
void * GDALRasterBandH
Opaque type used for the C bindings of the C++ GDALRasterBand class.
Definition: gdal.h:271
char ** GDALGetRasterCategoryNames(GDALRasterBandH)
Fetch the list of category names for this raster.
Definition: gdalrasterband.cpp:1541
const char * GDALGetPaletteInterpretationName(GDALPaletteInterp)
Get name of palette interpretation.
Definition: gdal_misc.cpp:867
GDALGroupH GDALGroupCreateGroup(GDALGroupH hGroup, const char *pszSubGroupName, CSLConstList papszOptions)
Create a sub-group within a group.
Definition: gdalmultidim.cpp:8869
OGRLayerH GDALDatasetCreateLayer(GDALDatasetH, const char *, OGRSpatialReferenceH, OGRwkbGeometryType, CSLConstList)
This function attempts to create a new layer on the dataset with the indicated name, coordinate system, geometry type.
Definition: gdaldataset.cpp:4700
const void * GDALMDArrayGetRawNoDataValue(GDALMDArrayH hArray)
Return the nodata value as a "raw" value.
Definition: gdalmultidim.cpp:9336
const char * GDALMDArrayGetName(GDALMDArrayH hArray)
Return array name.
Definition: gdalmultidim.cpp:8998
const char * GDALGroupGetFullName(GDALGroupH hGroup)
Return the full name of the group.
Definition: gdalmultidim.cpp:8518
char ** GDALGroupGetGroupNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of sub-groups contained in this group.
Definition: gdalmultidim.cpp:8627
CPLErr GDALRATInitializeFromColorTable(GDALRasterAttributeTableH, GDALColorTableH)
Initialize from color table.
Definition: gdal_rat.cpp:999
int GDALDatasetIsLayerPrivate(GDALDatasetH, int)
Returns true if the layer at the specified index is deemed a private or system table, or an internal detail only.
Definition: gdaldataset.cpp:4509
void GDALFlushCache(GDALDatasetH hDS)
Flush all write cached data to disk.
Definition: gdaldataset.cpp:477
GDALRATTableType
RAT table type (thematic or athematic)
Definition: gdal.h:1350
void * GDALGetInternalHandle(GDALDatasetH, const char *)
Fetch a format specific internally meaningful handle.
Definition: gdaldataset.cpp:1294
int GDALGetRasterCount(GDALDatasetH)
Fetch the number of raster bands on this dataset.
Definition: gdaldataset.cpp:833
GDALMDArrayH GDALMDArrayGetView(GDALMDArrayH hArray, const char *pszViewExpr)
Return a view of the array using slicing or field access.
Definition: gdalmultidim.cpp:9687
const char * GDALGetDescription(GDALMajorObjectH)
Fetch object description.
Definition: gdalmajorobject.cpp:95
Virtual memory management.
GDALRasterBandH GDALGetMaskBand(GDALRasterBandH hBand)
Return the mask band associated with the band.
Definition: gdalrasterband.cpp:6154
GDALGroupH GDALDatasetGetRootGroup(GDALDatasetH hDS)
Return the root GDALGroup of this dataset.
Definition: gdalmultidim.cpp:10600
CPLErr GDALReadBlock(GDALRasterBandH, int, int, void *)
Read a block of image data efficiently.
Definition: gdalrasterband.cpp:572
int GDALRATChangesAreWrittenToFile(GDALRasterAttributeTableH hRAT)
Determine whether changes made to this RAT are reflected directly in the dataset. ...
Definition: gdal_rat.cpp:1929
GDALRATFieldUsage GDALRATGetUsageOfCol(GDALRasterAttributeTableH, int)
Fetch column usage value.
Definition: gdal_rat.cpp:1357
double dfLINE_OFF
Definition: gdal.h:1249
CPLErr(* GDALDerivedPixelFunc)(void **papoSources, int nSources, void *pData, int nBufXSize, int nBufYSize, GDALDataType eSrcType, GDALDataType eBufType, int nPixelSpace, int nLineSpace)
Type of functions to pass to GDALAddDerivedBandPixelFunc.
Definition: gdal.h:933
int GDALGCPsToGeoTransform(int nGCPCount, const GDAL_GCP *pasGCPs, double *padfGeoTransform, int bApproxOK)
Generate Geotransform from GCPs.
Definition: gdal_misc.cpp:2410
short c1
Definition: gdal.h:1289
GIntBig GDALGetCacheMax64(void)
Get maximum cache memory.
Definition: gdalrasterblock.cpp:239
GDALDatasetH GDALCreate(GDALDriverH hDriver, const char *, int, int, int, GDALDataType, CSLConstList)
Create a new dataset with this driver.
Definition: gdaldriver.cpp:275
void GDALSetCacheMax(int nBytes)
Set maximum cache memory.
Definition: gdalrasterblock.cpp:120
short c3
Definition: gdal.h:1295
int GDALMDArrayAdviseReadEx(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count, CSLConstList papszOptions)
Advise driver of upcoming read requests.
Definition: gdalmultidim.cpp:9222
struct CPLVirtualMem CPLVirtualMem
Opaque type that represents a virtual memory mapping.
Definition: cpl_virtualmem.h:62
double dfMIN_LAT
Definition: gdal.h:1267
void GDALApplyGeoTransform(double *, double, double, double *, double *)
Apply GeoTransform to x/y coordinate.
Definition: gdaltransformer.cpp:4004
void GDALReleaseDimensions(GDALDimensionH *dims, size_t nCount)
Free the return of GDALGroupGetDimensions() or GDALMDArrayGetDimensions()
Definition: gdalmultidim.cpp:9087
int GDALRegisterDriver(GDALDriverH)
Register a driver for use.
Definition: gdaldrivermanager.cpp:522
int GDALMDArraySetOffsetEx(GDALMDArrayH hArray, double dfOffset, GDALDataType eStorageType)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9482
int GDALAttributeReadAsInt(GDALAttributeH hAttr)
Return the value of an attribute as a integer.
Definition: gdalmultidim.cpp:10226
CPLErr GDALSetMetadataItem(GDALMajorObjectH, const char *, const char *, const char *)
Set single metadata item.
Definition: gdalmajorobject.cpp:415
GDALExtendedDataTypeH GDALExtendedDataTypeCreateString(size_t nMaxStringLength)
Return a new GDALExtendedDataType of class GEDTC_STRING.
Definition: gdalmultidim.cpp:8145
GUInt64 GDALAttributeGetTotalElementsCount(GDALAttributeH hAttr)
Return the total number of values in the attribute.
Definition: gdalmultidim.cpp:10071
void GDALGetOpenDatasets(GDALDatasetH **hDS, int *pnCount)
Fetch all open GDAL dataset handles.
Definition: gdaldataset.cpp:2749
GDALColorInterp GDALGetRasterColorInterpretation(GDALRasterBandH)
How should this band be interpreted as color?
Definition: gdalrasterband.cpp:1985
bool GDALDatasetAddFieldDomain(GDALDatasetH hDS, OGRFieldDomainH hFieldDomain, char **ppszFailureReason)
Add a field domain to the dataset.
Definition: gdaldataset.cpp:8532
const char * GDALGetAsyncStatusTypeName(GDALAsyncStatusType)
Get name of AsyncStatus data type.
Definition: gdal_misc.cpp:828
const char * GDALVersionInfo(const char *)
Get runtime version information.
Definition: gdal_misc.cpp:2189
int GDALDataTypeIsFloating(GDALDataType)
Is data type floating? (might be complex)
Definition: gdal_misc.cpp:421
double dfGCPY
Y position of GCP in georeferenced space.
Definition: gdal.h:727
GDALAttributeH GDALGroupCreateAttribute(GDALGroupH hGroup, const char *pszName, size_t nDimensions, const GUInt64 *panDimensions, GDALExtendedDataTypeH hEDT, CSLConstList papszOptions)
Create a attribute within a group.
Definition: gdalmultidim.cpp:8954
CSLConstList GDALGroupGetStructuralInfo(GDALGroupH hGroup)
Return structural information on the group.
Definition: gdalmultidim.cpp:8835
int GDALRATGetLinearBinning(GDALRasterAttributeTableH, double *, double *)
Get linear binning information.
Definition: gdal_rat.cpp:549
void GDALCreateColorRamp(GDALColorTableH hTable, int nStartIndex, const GDALColorEntry *psStartColor, int nEndIndex, const GDALColorEntry *psEndColor)
Create color ramp.
Definition: gdalcolortable.cpp:447
void GDALInitGCPs(int, GDAL_GCP *)
Initialize an array of GCPs.
Definition: gdal_misc.cpp:1194
GDALRasterBandH GDALGetRasterBand(GDALDatasetH, int)
Fetch a band object for a dataset.
Definition: gdaldataset.cpp:800
const GDAL_GCP * GDALGetGCPs(GDALDatasetH)
Fetch GCPs.
Definition: gdaldataset.cpp:1741
CPLErr GDALMDArrayGetStatistics(GDALMDArrayH hArray, GDALDatasetH, int bApproxOK, int bForce, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GUInt64 *pnValidCount, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch statistics.
Definition: gdalmultidim.cpp:9904
int GDALDatasetGetLayerCount(GDALDatasetH)
Get the number of layers in this dataset.
Definition: gdaldataset.cpp:4406
GDALDataType GDALGetNonComplexDataType(GDALDataType)
Return the base data type for the specified input.
Definition: gdal_misc.cpp:763
void GDALSwapWordsEx(void *pData, int nWordSize, size_t nWordCount, int nWordSkip)
Byte swap words in-place.
Definition: rasterio.cpp:2151
GDALDriverH GDALIdentifyDriver(const char *pszFilename, CSLConstList papszFileList)
Identify the driver that can open a raster file.
Definition: gdaldriver.cpp:2124
short c2
Definition: gdal.h:1292
OGRStyleTableH GDALDatasetGetStyleTable(GDALDatasetH)
Returns dataset style table.
Definition: gdaldataset.cpp:4877
int GDALMDArraySetSpatialRef(GDALMDArrayH, OGRSpatialReferenceH)
Assign a spatial reference system object to the the array.
Definition: gdalmultidim.cpp:9868
void GDALCopyWords64(const void *pSrcData, GDALDataType eSrcType, int nSrcPixelOffset, void *pDstData, GDALDataType eDstType, int nDstPixelOffset, GPtrDiff_t nWordCount)
Copy pixel words from buffer to buffer.
Definition: rasterio.cpp:3383
GDALAccess GDALGetRasterAccess(GDALRasterBandH)
Find out if we have update permission for this band.
Definition: gdalrasterband.cpp:1495
GIntBig GSpacing
Type to express pixel, line or band spacing.
Definition: gdal.h:286
CPLErr GDALGetRasterHistogramEx(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, GUIntBig *panHistogram, int bIncludeOutOfRange, int bApproxOK, GDALProgressFunc pfnProgress, void *pProgressData)
Compute raster histogram.
Definition: gdalrasterband.cpp:3428
char ** GDALGetMetadataDomainList(GDALMajorObjectH hObject)
Fetch list of metadata domains.
Definition: gdalmajorobject.cpp:219
int GDALGetAccess(GDALDatasetH hDS)
Return access flag.
Definition: gdaldataset.cpp:2783
const char * GDALGetDataTypeName(GDALDataType)
Get name of data type.
Definition: gdal_misc.cpp:568
int GDALExtendedDataTypeEquals(GDALExtendedDataTypeH hFirstEDT, GDALExtendedDataTypeH hSecondEDT)
Return whether this data type is equal to another one.
Definition: gdalmultidim.cpp:8325
int GDALGetDriverCount(void)
Fetch the number of registered drivers.
Definition: gdaldrivermanager.cpp:365
GUIntBig GUInt64
Unsigned 64 bit integer type.
Definition: cpl_port.h:265
GDALAttributeH * GDALGroupGetAttributes(GDALGroupH hGroup, size_t *pnCount, CSLConstList papszOptions)
Return the list of attributes contained in this group.
Definition: gdalmultidim.cpp:8806
CPLErr GDALCreateMaskBand(GDALRasterBandH hBand, int nFlags)
Adds a mask band to the current band.
Definition: gdalrasterband.cpp:6333
int GDALMDArraySetScaleEx(GDALMDArrayH hArray, double dfScale, GDALDataType eStorageType)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9444
GIntBig GPtrDiff_t
Integer type large enough to hold the difference between 2 addresses.
Definition: cpl_port.h:282
int GDALRATGetRowCount(GDALRasterAttributeTableH)
Fetch row count.
Definition: gdal_rat.cpp:1467
size_t GDALAttributeGetDimensionCount(GDALAttributeH hAttr)
Return the number of dimensions.
Definition: gdalmultidim.cpp:10085
CPLErr GDALOverviewMagnitudeCorrection(GDALRasterBandH hBaseBand, int nOverviewCount, GDALRasterBandH *pahOverviews, GDALProgressFunc pfnProgress, void *pProgressData)
Undocumented.
Definition: overview.cpp:5537
GDALDataType GDALDataTypeUnionWithValue(GDALDataType eDT, double dValue, int bComplex)
Union a data type with the one found for a value.
Definition: gdal_misc.cpp:175
double dfHEIGHT_SCALE
Definition: gdal.h:1259
OGRwkbGeometryType
List of well known binary geometry types.
Definition: ogr_core.h:345
int GDALRATGetRowOfValue(GDALRasterAttributeTableH, double)
Get row for pixel value.
Definition: gdal_rat.cpp:378
CPLErr GDALRegenerateOverviews(GDALRasterBandH hSrcBand, int nOverviewCount, GDALRasterBandH *pahOverviewBands, const char *pszResampling, GDALProgressFunc pfnProgress, void *pProgressData)
Generate downsampled overviews.
Definition: overview.cpp:4076
CPLErr GDALSetRasterCategoryNames(GDALRasterBandH, CSLConstList)
Set the category names for this band.
Definition: gdalrasterband.cpp:1593
double GDALMDArrayGetOffset(GDALMDArrayH hArray, int *pbHasValue)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9547
GDALMDArrayH GDALGroupResolveMDArray(GDALGroupH hGroup, const char *pszName, const char *pszStartingPoint, CSLConstList papszOptions)
Locate an array in a group and its subgroups by name.
Definition: gdalmultidim.cpp:8601
int GDALReleaseDataset(GDALDatasetH)
Drop a reference to this object, and destroy if no longer referenced.
Definition: gdaldataset.cpp:1439
CPLErr GDALAddDerivedBandPixelFuncWithArgs(const char *pszName, GDALDerivedPixelFuncWithArgs pfnPixelFunc, const char *pszMetadata)
This adds a pixel function to the global list of available pixel functions for derived bands...
Definition: vrtderivedrasterband.cpp:279
CPLErr GDALFlushRasterCache(GDALRasterBandH hBand)
Flush raster data cache.
Definition: gdalrasterband.cpp:1054
GDALAsyncStatusType
status of the asynchronous stream
Definition: gdal.h:102
double GDALGetRasterNoDataValue(GDALRasterBandH, int *)
Fetch the no data value for this band.
Definition: gdalrasterband.cpp:1645
void GDALRATSetRowCount(GDALRasterAttributeTableH, int)
Set row count.
Definition: gdal_rat.cpp:332
void GDALSetCacheMax64(GIntBig nBytes)
Set maximum cache memory.
Definition: gdalrasterblock.cpp:146
void GDALDestroyRasterAttributeTable(GDALRasterAttributeTableH)
Destroys a RAT.
Definition: gdal_rat.cpp:1228
GDALRATTableType GDALRATGetTableType(GDALRasterAttributeTableH hRAT)
Get Rat Table Type.
Definition: gdal_rat.cpp:571
GDALDimensionH * GDALMDArrayGetDimensions(GDALMDArrayH hArray, size_t *pnCount)
Return the dimensions of the array.
Definition: gdalmultidim.cpp:9063
int GDALAttributeWriteRaw(GDALAttributeH hAttr, const void *, size_t)
Write an attribute from raw values expressed in GetDataType()
Definition: gdalmultidim.cpp:10344
double GDALMDArrayGetOffsetEx(GDALMDArrayH hArray, int *pbHasValue, GDALDataType *peStorageType)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9570
CPLErr GDALCopyDatasetFiles(GDALDriverH, const char *pszNewName, const char *pszOldName)
Copy the files of a dataset.
Definition: gdaldriver.cpp:1547
CPLErr GDALRATCreateColumn(GDALRasterAttributeTableH, const char *, GDALRATFieldType, GDALRATFieldUsage)
Create new column.
Definition: gdal_rat.cpp:456
OGRLayerH GDALDatasetCopyLayer(GDALDatasetH, OGRLayerH, const char *, CSLConstList)
Duplicate an existing layer.
Definition: gdaldataset.cpp:4755
const char * GDALGroupGetName(GDALGroupH hGroup)
Return the name of the group.
Definition: gdalmultidim.cpp:8502
int GDALLoadWorldFile(const char *, double *)
Read ESRI world file.
Definition: gdal_misc.cpp:1867
void * GDALRasterAttributeTableH
Opaque type used for the C bindings of the C++ GDALRasterAttributeTable class.
Definition: gdal.h:280
void GDALSetColorEntry(GDALColorTableH, int, const GDALColorEntry *)
Set entry in color table.
Definition: gdalcolortable.cpp:245
int GDALGetRasterYSize(GDALDatasetH)
Fetch raster height in pixels.
Definition: gdaldataset.cpp:746
CPLErr GDALRATSetTableType(GDALRasterAttributeTableH hRAT, const GDALRATTableType eInTableType)
Set RAT Table Type.
Definition: gdal_rat.cpp:591
GDALMDArrayH GDALMDArrayGetResampled(GDALMDArrayH hArray, size_t nNewDimCount, const GDALDimensionH *pahNewDims, GDALRIOResampleAlg resampleAlg, OGRSpatialReferenceH hTargetSRS, CSLConstList papszOptions)
Return an array that is a resampled / reprojected view of the current array.
Definition: gdalmultidim.cpp:9785
OGRSpatialReferenceH GDALGetSpatialRef(GDALDatasetH)
Fetch the spatial reference for this dataset.
Definition: gdaldataset.cpp:945
GDALDataType GDALGetDataTypeByName(const char *)
Get data type by symbolic name.
Definition: gdal_misc.cpp:629
CPL error handling services.
void * OGRSpatialReferenceH
Opaque type for a spatial reference system.
Definition: ogr_api.h:80
GDALMDArrayH GDALMDArrayGetUnscaled(GDALMDArrayH hArray)
Return an array that is the unscaled version of the current one.
Definition: gdalmultidim.cpp:9740
GDALAsyncStatusType GDALARGetNextUpdatedRegion(GDALAsyncReaderH hARIO, double dfTimeout, int *pnXBufOff, int *pnYBufOff, int *pnXBufSize, int *pnYBufSize)
Get async IO update.
Definition: gdaldefaultasync.cpp:174
CPLErr GDALRasterBandCopyWholeRaster(GDALRasterBandH hSrcBand, GDALRasterBandH hDstBand, const char *const *constpapszOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Copy a whole raster band.
Definition: rasterio.cpp:4979
GDALExtendedDataTypeH GDALAttributeGetDataType(GDALAttributeH hAttr)
Return the data type.
Definition: gdalmultidim.cpp:10127
OGRErr GDALDatasetDeleteLayer(GDALDatasetH, int)
Delete the indicated layer from the datasource.
Definition: gdaldataset.cpp:4540
char ** CSLConstList
Type of a constant null-terminated list of nul terminated strings.
Definition: cpl_port.h:1169
GDALExtendedDataTypeH GDALMDArrayGetDataType(GDALMDArrayH hArray)
Return the data type.
Definition: gdalmultidim.cpp:9104
double dfSAMP_SCALE
Definition: gdal.h:1256
GDALExtendedDataTypeClass
Enumeration giving the class of a GDALExtendedDataType.
Definition: gdal.h:291
int GDALDataTypeIsSigned(GDALDataType)
Is data type signed?
Definition: gdal_misc.cpp:478
OGRFeatureH GDALDatasetGetNextFeature(GDALDatasetH hDS, OGRLayerH *phBelongingLayer, double *pdfProgressPct, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch the next available feature from this dataset.
Definition: gdaldataset.cpp:7246
char ** GDALGroupGetVectorLayerNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of layer names contained in this group.
Definition: gdalmultidim.cpp:8671
double dfLAT_OFF
Definition: gdal.h:1251
const char * GDALDimensionGetDirection(GDALDimensionH hDim)
Return dimension direction.
Definition: gdalmultidim.cpp:10525
int GDALReadOziMapFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for OZI .map.
Definition: gdal_misc.cpp:1568
int GDALLoadOziMapFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for OZI .map.
Definition: gdal_misc.cpp:1360
GDALDatasetH GDALOpenEx(const char *pszFilename, unsigned int nOpenFlags, const char *const *papszAllowedDrivers, const char *const *papszOpenOptions, const char *const *papszSiblingFiles)
Open a raster or vector file as a GDALDataset.
Definition: gdaldataset.cpp:3338
void GDALComposeGeoTransforms(const double *padfGeoTransform1, const double *padfGeoTransform2, double *padfGeoTransformOut)
Compose two geotransforms.
Definition: gdal_misc.cpp:2711
JSon.
Definition: gdal.h:307
GDALEDTComponentH * GDALExtendedDataTypeGetComponents(GDALExtendedDataTypeH hEDT, size_t *pnCount)
Return the components of the data type (only valid when GetClass() == GEDTC_COMPOUND) ...
Definition: gdalmultidim.cpp:8368
CPLErr GDALDeleteRasterNoDataValue(GDALRasterBandH)
Remove the no data value for this band.
Definition: gdalrasterband.cpp:1761
int * GDALAttributeReadAsIntArray(GDALAttributeH hAttr, size_t *pnCount)
Return the value of an attribute as an array of integers.
Definition: gdalmultidim.cpp:10280
CPLXMLNode * GDALGetJPEG2000Structure(const char *pszFilename, CSLConstList papszOptions)
Dump the structure of a JPEG2000 file as a XML tree.
Definition: gdaljp2structure.cpp:1996
CPLErr GDALSetRasterNoDataValue(GDALRasterBandH, double)
Set the no data value for this band.
Definition: gdalrasterband.cpp:1713
GDALPaletteInterp
Definition: gdal.h:229
void GDALDeinitGCPs(int, GDAL_GCP *)
De-initialize an array of GCPs (initialized with GDALInitGCPs())
Definition: gdal_misc.cpp:1220
int GDALInvGeoTransform(double *padfGeoTransformIn, double *padfInvGeoTransformOut)
Invert Geotransform.
Definition: gdaltransformer.cpp:4030
GDALAsyncReaderH GDALBeginAsyncReader(GDALDatasetH hDS, int nXOff, int nYOff, int nXSize, int nYSize, void *pBuf, int nBufXSize, int nBufYSize, GDALDataType eBufType, int nBandCount, int *panBandMap, int nPixelSpace, int nLineSpace, int nBandSpace, CSLConstList papszOptions)
Sets up an asynchronous data request.
Definition: gdaldataset.cpp:4055
GDALDimensionH * GDALGroupGetDimensions(GDALGroupH hGroup, size_t *pnCount, CSLConstList papszOptions)
Return the list of dimensions contained in this group and used by its arrays.
Definition: gdalmultidim.cpp:8751
int GDALMDArrayRead(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count, const GInt64 *arrayStep, const GPtrDiff_t *bufferStride, GDALExtendedDataTypeH bufferDatatype, void *pDstBuffer, const void *pDstBufferAllocStart, size_t nDstBufferllocSize)
Read part or totality of a multidimensional array.
Definition: gdalmultidim.cpp:9121
double GDALGetRasterMinimum(GDALRasterBandH, int *pbSuccess)
Fetch the minimum value for this band.
Definition: gdalrasterband.cpp:1943
OGRFieldDomainH GDALDatasetGetFieldDomain(GDALDatasetH hDS, const char *pszName)
Get a field domain from its name.
Definition: gdaldataset.cpp:8470
int GDALMDArraySetNoDataValueAsDouble(GDALMDArrayH hArray, double dfNoDataValue)
Set the nodata value as a double.
Definition: gdalmultidim.cpp:9406
const char * GDALRATGetNameOfCol(GDALRasterAttributeTableH, int)
Fetch name of indicated column.
Definition: gdal_rat.cpp:1314
const char * GDALAttributeGetFullName(GDALAttributeH hAttr)
Return the full name of the attribute.
Definition: gdalmultidim.cpp:10057
GDALRasterAttributeTableH GDALRATClone(const GDALRasterAttributeTableH)
Copy Raster Attribute Table.
Definition: gdal_rat.cpp:2212
int GDALGetGCPCount(GDALDatasetH)
Get number of GCPs.
Definition: gdaldataset.cpp:1561
int GDALAttributeWriteDoubleArray(GDALAttributeH hAttr, const double *, size_t)
Write an attribute from an array of double.
Definition: gdalmultidim.cpp:10454
double dfLONG_OFF
Definition: gdal.h:1252
int GDALMDArraySetUnit(GDALMDArrayH hArray, const char *)
Set the variable unit.
Definition: gdalmultidim.cpp:9827
CPLErr GDALDeleteDataset(GDALDriverH, const char *)
Delete named dataset.
Definition: gdaldriver.cpp:1295
const char * GDALGetDriverShortName(GDALDriverH)
Return the short name of a driver.
Definition: gdaldriver.cpp:1584
GDALExtendedDataTypeH GDALExtendedDataTypeCreate(GDALDataType eType)
Return a new GDALExtendedDataType of class GEDTC_NUMERIC.
Definition: gdalmultidim.cpp:8126
double GDALMDArrayGetScale(GDALMDArrayH hArray, int *pbHasValue)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9501
unsigned long long GUIntBig
Large unsigned integer type (generally 64-bit unsigned integer type).
Definition: cpl_port.h:247
struct GDALAttributeHS * GDALAttributeH
Opaque type for C++ GDALAttribute.
Definition: gdal.h:319
const char * GDALGetGCPProjection(GDALDatasetH)
Get output projection for GCPs.
Definition: gdaldataset.cpp:1708
int GDALGetMaskFlags(GDALRasterBandH hBand)
Return the status flags of the mask band associated with the band.
Definition: gdalrasterband.cpp:6244
GDALExtendedDataTypeSubType GDALExtendedDataTypeGetSubType(GDALExtendedDataTypeH hEDT)
Return the subtype of a type.
Definition: gdalmultidim.cpp:8345
double GDALAttributeReadAsDouble(GDALAttributeH hAttr)
Return the value of an attribute as a double.
Definition: gdalmultidim.cpp:10246
int GDALValidateCreationOptions(GDALDriverH, CSLConstList papszCreationOptions)
Validate the list of creation options that are handled by a driver.
Definition: gdaldriver.cpp:1703
CPLErr GDALWriteBlock(GDALRasterBandH, int, int, void *)
Write a block of image data efficiently.
Definition: gdalrasterband.cpp:728
char ** GDALGroupGetMDArrayNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of multidimensional array names contained in this group.
Definition: gdalmultidim.cpp:8534
GDALColorTableH GDALGetRasterColorTable(GDALRasterBandH)
Fetch the color table associated with band.
Definition: gdalrasterband.cpp:2076
GDALMDArrayH GDALMDArrayTranspose(GDALMDArrayH hArray, size_t nNewAxisCount, const int *panMapNewAxisToOldAxis)
Return a view of the array whose axis have been reordered.
Definition: gdalmultidim.cpp:9707
void GDALEDTComponentRelease(GDALEDTComponentH hComp)
Release the GDAL in-memory object associated with a GDALEDTComponentH.
Definition: gdalmultidim.cpp:8428
const char * GDALGetRasterUnitType(GDALRasterBandH)
Return raster unit type.
Definition: gdalrasterband.cpp:2653
CPLErr GDALGetGeoTransform(GDALDatasetH, double *)
Fetch the affine transformation coefficients.
Definition: gdaldataset.cpp:1203
int GDALMDArrayWrite(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count, const GInt64 *arrayStep, const GPtrDiff_t *bufferStride, GDALExtendedDataTypeH bufferDatatype, const void *pSrcBuffer, const void *psrcBufferAllocStart, size_t nSrcBufferllocSize)
Write part or totality of a multidimensional array.
Definition: gdalmultidim.cpp:9161
GDALMDArrayH GDALGroupOpenMDArrayFromFullname(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a multidimensional array from its fully qualified name.
Definition: gdalmultidim.cpp:8579
CPLErr GDALSetRasterColorTable(GDALRasterBandH, GDALColorTableH)
Set the raster color table.
Definition: gdalrasterband.cpp:2129
void * GDALDriverH
Opaque type used for the C bindings of the C++ GDALDriver class.
Definition: gdal.h:274
GDAL_GCP * GDALDuplicateGCPs(int, const GDAL_GCP *)
Duplicate an array of GCPs.
Definition: gdal_misc.cpp:1247
int GDALGetRasterXSize(GDALDatasetH)
Fetch raster width in pixels.
Definition: gdaldataset.cpp:712
const char * GDALGetColorInterpretationName(GDALColorInterp)
Get name of color interpretation.
Definition: gdal_misc.cpp:907
int GDALARLockBuffer(GDALAsyncReaderH hARIO, double dfTimeout)
Lock image buffer.
Definition: gdaldefaultasync.cpp:233
int GDALGetCacheMax(void)
Get maximum cache memory.
Definition: gdalrasterblock.cpp:200
void GDALClose(GDALDatasetH)
Close GDAL dataset.
Definition: gdaldataset.cpp:3757
int GDALReferenceDataset(GDALDatasetH)
Add one to dataset reference count.
Definition: gdaldataset.cpp:1362
int GDALDatasetTestCapability(GDALDatasetH, const char *)
Test if capability is available.
Definition: gdaldataset.cpp:7348
GDALDriverH GDALCreateDriver(void)
Create a GDALDriver.
Definition: gdaldriver.cpp:94
void * GDALMajorObjectH
Opaque type used for the C bindings of the C++ GDALMajorObject class.
Definition: gdal.h:265
void * OGRGeometryH
Opaque type for a geometry.
Definition: ogr_api.h:65
const char * GDALMDArrayGetUnit(GDALMDArrayH hArray)
Return the array unit.
Definition: gdalmultidim.cpp:9852
GDALDriverH GDALGetDatasetDriver(GDALDatasetH)
Fetch the driver to which this dataset relates.
Definition: gdaldataset.cpp:1327
void GDALRATSetValueAsDouble(GDALRasterAttributeTableH, int, int, double)
Set field value from double.
Definition: gdal_rat.cpp:1896
GDALGroupH GDALGroupOpenGroupFromFullname(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a sub-group from its fully qualified name.
Definition: gdalmultidim.cpp:8720
int GDALAttributeWriteString(GDALAttributeH hAttr, const char *)
Write an attribute from a string value.
Definition: gdalmultidim.cpp:10365
OGRLayerH GDALDatasetGetLayer(GDALDatasetH, int)
Fetch a layer by index.
Definition: gdaldataset.cpp:4439
void * OGRFeatureH
Opaque type for a feature (OGRFeature)
Definition: ogr_api.h:335
void GDALMDArrayRelease(GDALMDArrayH hMDArray)
Release the GDAL in-memory object associated with a GDALMDArray.
Definition: gdalmultidim.cpp:8985
GDALDataType GDALGetRasterDataType(GDALRasterBandH)
Fetch the pixel data type for this band.
Definition: gdalrasterband.cpp:844
GDALAttributeH GDALMDArrayCreateAttribute(GDALMDArrayH hArray, const char *pszName, size_t nDimensions, const GUInt64 *panDimensions, GDALExtendedDataTypeH hEDT, CSLConstList papszOptions)
Create a attribute within an array.
Definition: gdalmultidim.cpp:9297
CPLVirtualMem * GDALGetVirtualMemAuto(GDALRasterBandH hBand, GDALRWFlag eRWFlag, int *pnPixelSpace, GIntBig *pnLineSpace, CSLConstList papszOptions)
Create a CPLVirtualMem object from a GDAL raster band object.
Definition: gdalrasterband.cpp:6706
CSLConstList GDALMDArrayGetStructuralInfo(GDALMDArrayH hArray)
Return structural information on the array.
Definition: gdalmultidim.cpp:9671
int GDALGetRandomRasterSample(GDALRasterBandH, int, float *)
Undocumented.
Definition: gdal_misc.cpp:1015
void GDALExtendedDataTypeRelease(GDALExtendedDataTypeH hEDT)
Release the GDAL in-memory object associated with a GDALExtendedDataTypeH.
Definition: gdalmultidim.cpp:8216
void GDALGroupRelease(GDALGroupH hGroup)
Release the GDAL in-memory object associated with a GDALGroupH.
Definition: gdalmultidim.cpp:8487
int GDALWriteWorldFile(const char *, const char *, double *)
Write ESRI world file.
Definition: gdal_misc.cpp:2119
char * pszId
Unique identifier, often numeric.
Definition: gdal.h:713
const char * GDALEDTComponentGetName(GDALEDTComponentH hComp)
Return the name.
Definition: gdalmultidim.cpp:8443
void GDALSwapWords(void *pData, int nWordSize, int nWordCount, int nWordSkip)
Byte swap words in-place.
Definition: rasterio.cpp:2060
char ** GDALAttributeReadAsStringArray(GDALAttributeH hAttr)
Return the value of an attribute as an array of strings.
Definition: gdalmultidim.cpp:10262
None.
Definition: gdal.h:305
CPLErr GDALGetRasterHistogram(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, int *panHistogram, int bIncludeOutOfRange, int bApproxOK, GDALProgressFunc pfnProgress, void *pProgressData)
Compute raster histogram.
Definition: gdalrasterband.cpp:3362
CPLErr GDALFillRaster(GDALRasterBandH hBand, double dfRealValue, double dfImaginaryValue)
Fill this band with a constant value.
Definition: gdalrasterband.cpp:1458
void GDALSetDescription(GDALMajorObjectH, const char *)
Set object description.
Definition: gdalmajorobject.cpp:136
RMS: Root Mean Square / Quadratic Mean.
Definition: gdal.h:149
int GDALGetDataCoverageStatus(GDALRasterBandH hBand, int nXOff, int nYOff, int nXSize, int nYSize, int nMaskFlagStop, double *pdfDataPct)
Get the coverage status of a sub-window of the raster.
Definition: gdalrasterband.cpp:6804
size_t * GDALMDArrayGetProcessingChunkSize(GDALMDArrayH hArray, size_t *pnCount, size_t nMaxChunkMemory)
Return an optimal chunk size for read/write operations, given the natural block size and memory const...
Definition: gdalmultidim.cpp:9642
void GDALDatasetResetReading(GDALDatasetH)
Reset feature reading to start on the first feature.
Definition: gdaldataset.cpp:7019
GByte * GDALAttributeReadAsRaw(GDALAttributeH hAttr, size_t *pnSize)
Return the raw value of an attribute.
Definition: gdalmultidim.cpp:10149
CPLErr GDALRATSetLinearBinning(GDALRasterAttributeTableH, double, double)
Set linear binning information.
Definition: gdal_rat.cpp:504
const char * GDALDimensionGetFullName(GDALDimensionH hDim)
Return dimension full name.
Definition: gdalmultidim.cpp:10497
GDALTileOrganization
! Enumeration to describe the tile organization
Definition: gdal.h:1477
int GDALReadWorldFile(const char *, const char *, double *)
Read ESRI world file.
Definition: gdal_misc.cpp:1961
GDALRasterBandH GDALGetRasterSampleOverviewEx(GDALRasterBandH, GUIntBig)
Fetch best sampling overview.
Definition: gdalrasterband.cpp:2352
GDALAccess
Definition: gdal.h:115
short c4
Definition: gdal.h:1298
const char * GDALExtendedDataTypeGetName(GDALExtendedDataTypeH hEDT)
Return type name.
Definition: gdalmultidim.cpp:8229
GDALRasterBandH GDALGetOverview(GDALRasterBandH, int)
Fetch overview raster band object.
Definition: gdalrasterband.cpp:2255
C API and defines for OGRFeature, OGRGeometry, and OGRDataSource related classes. ...
GDALExtendedDataTypeClass GDALExtendedDataTypeGetClass(GDALExtendedDataTypeH hEDT)
Return type class.
Definition: gdalmultidim.cpp:8243
int GDALGetBandNumber(GDALRasterBandH)
Fetch the band number.
Definition: gdalrasterband.cpp:2822
void GDALDestroyColorTable(GDALColorTableH)
Destroys a color table.
Definition: gdalcolortable.cpp:96
double * GDALAttributeReadAsDoubleArray(GDALAttributeH hAttr, size_t *pnCount)
Return the value of an attribute as an array of doubles.
Definition: gdalmultidim.cpp:10309
double GDALGetRasterMaximum(GDALRasterBandH, int *pbSuccess)
Fetch the maximum value for this band.
Definition: gdalrasterband.cpp:1854
size_t GDALMDArrayGetDimensionCount(GDALMDArrayH hArray)
Return the number of dimensions.
Definition: gdalmultidim.cpp:9040
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:331
GDALRATFieldUsage
Field usage of raster attribute table.
Definition: gdal.h:1325
double dfERR_RAND
Definition: gdal.h:1273
long long GIntBig
Large signed integer type (generally 64-bit integer type).
Definition: cpl_port.h:244
void GDALRATSetValueAsInt(GDALRasterAttributeTableH, int, int, int)
Set field value from integer.
Definition: gdal_rat.cpp:1827
const char * GDALGetMetadataItem(GDALMajorObjectH, const char *, const char *)
Fetch single metadata item.
Definition: gdalmajorobject.cpp:361
double dfERR_BIAS
Definition: gdal.h:1272
int GDALMDArrayAdviseRead(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count)
Advise driver of upcoming read requests.
Definition: gdalmultidim.cpp:9203
CPLErr GDALRenameDataset(GDALDriverH, const char *pszNewName, const char *pszOldName)
Rename a dataset.
Definition: gdaldriver.cpp:1422
CPLVirtualMem * GDALDatasetGetTiledVirtualMem(GDALDatasetH hDS, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize, int nYSize, int nTileXSize, int nTileYSize, GDALDataType eBufType, int nBandCount, int *panBandMap, GDALTileOrganization eTileOrganization, size_t nCacheSize, int bSingleThreadUsage, CSLConstList papszOptions)
Create a CPLVirtualMem object from a GDAL dataset object, with tiling organization.
Definition: gdalvirtualmem.cpp:1554
double dfSAMP_OFF
Definition: gdal.h:1250
void * GDALColorTableH
Opaque type used for the C bindings of the C++ GDALColorTable class.
Definition: gdal.h:277
double dfGCPX
X position of GCP in georeferenced space.
Definition: gdal.h:724
GDALMDArrayH GDALDimensionGetIndexingVariable(GDALDimensionH hDim)
Return the variable that is used to index the dimension (if there is one).
Definition: gdalmultidim.cpp:10558
int GDALGetRasterBandYSize(GDALRasterBandH)
Fetch YSize of raster.
Definition: gdalrasterband.cpp:2780
GDALAttributeH GDALGroupGetAttribute(GDALGroupH hGroup, const char *pszName)
Return an attribute by its name.
Definition: gdalmultidim.cpp:8777
size_t GDALExtendedDataTypeGetSize(GDALExtendedDataTypeH hEDT)
Return data type size in bytes.
Definition: gdalmultidim.cpp:8271
CPLErr GDALRATValuesIOAsDouble(GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag, int iField, int iStartRow, int iLength, double *pdfData)
Read or Write a block of doubles to/from the Attribute Table.
Definition: gdal_rat.cpp:161
CPLErr GDALSetGCPs2(GDALDatasetH, int, const GDAL_GCP *, OGRSpatialReferenceH)
Assign GCPs.
Definition: gdaldataset.cpp:1922
CPLErr(* GDALDerivedPixelFuncWithArgs)(void **papoSources, int nSources, void *pData, int nBufXSize, int nBufYSize, GDALDataType eSrcType, GDALDataType eBufType, int nPixelSpace, int nLineSpace, CSLConstList papszFunctionArgs)
Type of functions to pass to GDALAddDerivedBandPixelFuncWithArgs.
Definition: gdal.h:941
int GDALDataTypeIsInteger(GDALDataType)
Is data type integer? (might be complex)
Definition: gdal_misc.cpp:448
void GDALARUnlockBuffer(GDALAsyncReaderH hARIO)
Unlock image buffer.
Definition: gdaldefaultasync.cpp:268
OGRErr GDALDatasetCommitTransaction(GDALDatasetH hDS)
For datasources which support transactions, CommitTransaction commits a transaction.
Definition: gdaldataset.cpp:7521
CPLErr GDALRasterAdviseRead(GDALRasterBandH hRB, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, int nBXSize, int nBYSize, GDALDataType eBDataType, CSLConstList papszOptions)
Advise driver of upcoming read requests.
Definition: gdalrasterband.cpp:3718
int GDALGetDataTypeSizeBits(GDALDataType eDataType)
Get data type size in bits.
Definition: gdal_misc.cpp:353
double GDALMDArrayGetNoDataValueAsDouble(GDALMDArrayH hArray, int *pbHasNoDataValue)
Return the nodata value as a double.
Definition: gdalmultidim.cpp:9362
CPLErr GDALRasterIO(GDALRasterBandH hRBand, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType, int nPixelSpace, int nLineSpace)
Read/write a region of image data for this band.
Definition: gdalrasterband.cpp:401
void GDALDestroyDriver(GDALDriverH)
Destroy a GDALDriver.
Definition: gdaldriver.cpp:113
int OGRErr
Type for a OGR error.
Definition: ogr_core.h:318
GDALColorInterp
Definition: gdal.h:203
Structure to store Rational Polynomial Coefficients / Rigorous Projection Model.
Definition: gdal.h:1247
int GDALGetDataTypeSizeBytes(GDALDataType)
Get data type size in bytes.
Definition: gdal_misc.cpp:308
double dfLAT_SCALE
Definition: gdal.h:1257
double GDALGetRasterScale(GDALRasterBandH, int *pbSuccess)
Fetch the raster value scale.
Definition: gdalrasterband.cpp:2560
CPLErr GDALSetGeoTransform(GDALDatasetH, double *)
Set the affine transformation coefficients.
Definition: gdaldataset.cpp:1253
double dfMAX_LAT
Definition: gdal.h:1269
Numeric value.
Definition: gdal.h:293
GDALRasterBandH GDALGetRasterSampleOverview(GDALRasterBandH, int)
Fetch best sampling overview.
Definition: gdalrasterband.cpp:2329
double dfGCPLine
Line (y) location of GCP on raster.
Definition: gdal.h:721
CPLErr GDALGetDefaultHistogramEx(GDALRasterBandH hBand, double *pdfMin, double *pdfMax, int *pnBuckets, GUIntBig **ppanHistogram, int bForce, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch default raster histogram.
Definition: gdalrasterband.cpp:3626
int GDALDumpOpenDatasets(FILE *)
List open datasets.
Definition: gdaldataset.cpp:3858
GUInt64 GDALDimensionGetSize(GDALDimensionH hDim)
Return the size, that is the number of values along the dimension.
Definition: gdalmultidim.cpp:10539
double GDALGetRasterOffset(GDALRasterBandH, int *pbSuccess)
Fetch the raster value offset.
Definition: gdalrasterband.cpp:2454
GUInt64 * GDALMDArrayGetBlockSize(GDALMDArrayH hArray, size_t *pnCount)
Return the "natural" block size of the array along all dimensions.
Definition: gdalmultidim.cpp:9606
GDALDatasetH GDALOpenShared(const char *, GDALAccess)
Open a raster file as a GDALDataset.
Definition: gdaldataset.cpp:3732
int GDALMDArrayComputeStatistics(GDALMDArrayH hArray, GDALDatasetH, int bApproxOK, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GUInt64 *pnValidCount, GDALProgressFunc, void *pProgressData)
Compute statistics.
Definition: gdalmultidim.cpp:9932
OGRLayerH GDALDatasetExecuteSQL(GDALDatasetH, const char *, OGRGeometryH, const char *)
Execute an SQL statement against the data store.
Definition: gdaldataset.cpp:4809
CPLErr GDALRasterIOEx(GDALRasterBandH hRBand, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType, GSpacing nPixelSpace, GSpacing nLineSpace, GDALRasterIOExtraArg *psExtraArg)
Read/write a region of image data for this band.
Definition: gdalrasterband.cpp:429
int GDALFlushCacheBlock(void)
Try to flush one cached raster block.
Definition: gdalrasterblock.cpp:372
void GDALCopyBits(const GByte *pabySrcData, int nSrcOffset, int nSrcStep, GByte *pabyDstData, int nDstOffset, int nDstStep, int nBitCount, int nStepCount)
Bitwise word copying.
Definition: rasterio.cpp:3612
void GDALEndAsyncReader(GDALDatasetH hDS, GDALAsyncReaderH hAsynchReaderH)
End asynchronous request.
Definition: gdaldataset.cpp:4107
void GDALGetBlockSize(GDALRasterBandH, int *pnXSize, int *pnYSize)
Fetch the "natural" block size of this band.
Definition: gdalrasterband.cpp:911
GDALDatasetH GDALOpen(const char *pszFilename, GDALAccess eAccess)
Open a raster file as a GDALDataset.
Definition: gdaldataset.cpp:3235
GDALDataType GDALFindDataTypeForValue(double dValue, int bComplex)
Finds the smallest data type able to support the provided value.
Definition: gdal_misc.cpp:284
void GDALDatasetSetStyleTableDirectly(GDALDatasetH, OGRStyleTableH)
Set dataset style table.
Definition: gdaldataset.cpp:4906
OGRErr GDALDatasetAbortSQL(GDALDatasetH)
Abort any SQL statement running in the data store.
Definition: gdaldataset.cpp:4853
void * OGRStyleTableH
Opaque type for a style table (OGRStyleTable)
Definition: ogr_api.h:337
GIntBig GInt64
Signed 64 bit integer type.
Definition: cpl_port.h:263
CPLErr GDALSetDefaultRAT(GDALRasterBandH, GDALRasterAttributeTableH)
Set default Raster Attribute Table.
Definition: gdalrasterband.cpp:5895
GDALMDArrayH GDALGroupOpenMDArray(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a multidimensional array.
Definition: gdalmultidim.cpp:8556
char ** GDALGetFileList(GDALDatasetH)
Fetch files forming dataset.
Definition: gdaldataset.cpp:3106
GDALDataType GDALFindDataType(int nBits, int bSigned, int bFloating, int bComplex)
Finds the smallest data type able to support the given requirements.
Definition: gdal_misc.cpp:236
CPLVirtualMem * GDALRasterBandGetVirtualMem(GDALRasterBandH hBand, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize, int nYSize, int nBufXSize, int nBufYSize, GDALDataType eBufType, int nPixelSpace, GIntBig nLineSpace, size_t nCacheSize, size_t nPageSizeHint, int bSingleThreadUsage, CSLConstList papszOptions)
Create a CPLVirtualMem object from a GDAL raster band object.
Definition: gdalvirtualmem.cpp:1086
CPLErr GDALRATValuesIOAsInteger(GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag, int iField, int iStartRow, int iLength, int *pnData)
Read or Write a block of ints to/from the Attribute Table.
Definition: gdal_rat.cpp:223
int GDALAttributeWriteDouble(GDALAttributeH hAttr, double)
Write an attribute from a double value.
Definition: gdalmultidim.cpp:10408
void GDALRATDumpReadable(GDALRasterAttributeTableH, FILE *)
Dump RAT in readable form.
Definition: gdal_rat.cpp:1159
GUInt64 GDALMDArrayGetTotalElementsCount(GDALMDArrayH hArray)
Return the total number of values in the array.
Definition: gdalmultidim.cpp:9026
double dfGCPZ
Elevation of GCP, or zero if not known.
Definition: gdal.h:730
OGRSpatialReferenceH GDALGetGCPSpatialRef(GDALDatasetH)
Get output spatial reference system for GCPs.
Definition: gdaldataset.cpp:1663
double GDALDecToPackedDMS(double)
Convert decimal degrees into packed DMS value (DDDMMMSSS.SS).
Definition: gdal_misc.cpp:2368
void GDALRATRemoveStatistics(GDALRasterAttributeTableH)
Remove Statistics from RAT.
Definition: gdal_rat.cpp:2252
CPLErr GDALSetRasterStatistics(GDALRasterBandH hBand, double dfMin, double dfMax, double dfMean, double dfStdDev)
Set statistics on band.
Definition: gdalrasterband.cpp:5454
double dfHEIGHT_OFF
Definition: gdal.h:1253
struct GDALMDArrayHS * GDALMDArrayH
Opaque type for C++ GDALMDArray.
Definition: gdal.h:317
Ground Control Point.
Definition: gdal.h:710
CPLErr
Error category.
Definition: cpl_error.h:52
void GDALDimensionRelease(GDALDimensionH hDim)
Release the GDAL in-memory object associated with a GDALDimension.
Definition: gdalmultidim.cpp:10470
GDALPaletteInterp GDALGetPaletteInterpretation(GDALColorTableH)
Fetch palette interpretation.
Definition: gdalcolortable.cpp:356
CPLErr GDALGetDefaultHistogram(GDALRasterBandH hBand, double *pdfMin, double *pdfMax, int *pnBuckets, int **ppanHistogram, int bForce, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch default raster histogram.
Definition: gdalrasterband.cpp:3555
GIntBig GDALGetCacheUsed64(void)
Get cache memory used.
Definition: gdalrasterblock.cpp:355
GDALDatasetH GDALGetBandDataset(GDALRasterBandH)
Fetch the owning dataset handle.
Definition: gdalrasterband.cpp:2863
GDALDimensionH GDALGroupCreateDimension(GDALGroupH hGroup, const char *pszName, const char *pszType, const char *pszDirection, GUInt64 nSize, CSLConstList papszOptions)
Create a dimension within a group.
Definition: gdalmultidim.cpp:8892
int GDALGetRasterBandXSize(GDALRasterBandH)
Fetch XSize of raster.
Definition: gdalrasterband.cpp:2743
OGRErr GDALDatasetRollbackTransaction(GDALDatasetH hDS)
For datasources which support transactions, RollbackTransaction will roll back a datasource to its s...
Definition: gdaldataset.cpp:7573
int GDALDereferenceDataset(GDALDatasetH)
Subtract one from dataset reference count.
Definition: gdaldataset.cpp:1397
GDALRATFieldType GDALRATGetTypeOfCol(GDALRasterAttributeTableH, int)
Fetch column type.
Definition: gdal_rat.cpp:1398
int GDALGetCacheUsed(void)
Get cache memory used.
Definition: gdalrasterblock.cpp:325
int GDALExtractRPCInfoV2(CSLConstList, GDALRPCInfoV2 *)
Extract RPC info from metadata, and apply to an RPCInfo structure.
Definition: gdal_misc.cpp:3445
int GDALLoadTabFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for MapInfo .tab files.
Definition: gdal_misc.cpp:1613
double dfMAX_LONG
Definition: gdal.h:1268
CPLErr GDALComputeBandStats(GDALRasterBandH hBand, int nSampleStep, double *pdfMean, double *pdfStdDev, GDALProgressFunc pfnProgress, void *pProgressData)
Undocumented.
Definition: overview.cpp:5402
void GDALAttributeRelease(GDALAttributeH hAttr)
Release the GDAL in-memory object associated with a GDALAttribute.
Definition: gdalmultidim.cpp:10026
double dfLONG_SCALE
Definition: gdal.h:1258
String value.
Definition: gdal.h:295
#define CPL_WARN_UNUSED_RESULT
Qualifier to warn when the return value of a function is not used.
Definition: cpl_port.h:894
char ** GDALGetMetadata(GDALMajorObjectH, const char *)
Fetch metadata.
Definition: gdalmajorobject.cpp:266