GDAL

gdal.h
Go to the documentation of this file.
1 /******************************************************************************
2 * $Id$
3 *
4 * Project: GDAL Core
5 * Purpose: GDAL Core C/Public declarations.
6 * Author: Frank Warmerdam, warmerdam@pobox.com
7 *
8 ******************************************************************************
9 * Copyright (c) 1998, 2002 Frank Warmerdam
10 * Copyright (c) 2007-2014, Even Rouault <even dot rouault at spatialys.com>
11 *
12 * Permission is hereby granted, free of charge, to any person obtaining a
13 * copy of this software and associated documentation files (the "Software"),
14 * to deal in the Software without restriction, including without limitation
15 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
16 * and/or sell copies of the Software, and to permit persons to whom the
17 * Software is furnished to do so, subject to the following conditions:
18 *
19 * The above copyright notice and this permission notice shall be included
20 * in all copies or substantial portions of the Software.
21 *
22 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
23 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
28 * DEALINGS IN THE SOFTWARE.
29 ****************************************************************************/
30
31 #ifndef GDAL_H_INCLUDED
32 #define GDAL_H_INCLUDED
33
40 #ifndef DOXYGEN_SKIP
41 #if defined(GDAL_COMPILATION)
42 #define DO_NOT_DEFINE_GDAL_DATE_NAME
43 #endif
44 #include "gdal_version.h"
45 #include "cpl_port.h"
46 #include "cpl_error.h"
47 #include "cpl_progress.h"
48 #include "cpl_virtualmem.h"
49 #include "cpl_minixml.h"
50 #include "ogr_api.h"
51 #endif
52
53 #include <stdbool.h>
54 #include <stdint.h>
55
56 /* -------------------------------------------------------------------- */
57 /* Significant constants. */
58 /* -------------------------------------------------------------------- */
59
60 CPL_C_START
61
63 typedef enum
64 { GDT_Unknown = 0, GDT_Byte = 1, GDT_Int8 = 14, GDT_UInt16 = 2, GDT_Int16 = 3, GDT_UInt32 = 4, GDT_Int32 = 5, GDT_UInt64 = 12, GDT_Int64 = 13, GDT_Float32 = 6, GDT_Float64 = 7, GDT_CInt16 = 8, GDT_CInt32 = 9,
78 /* TODO?(#6879): GDT_CInt64 */ GDT_CFloat32 = 10, GDT_CFloat64 = 11,
81 GDT_TypeCount = 15 /* maximum type # + 1 */
82 } GDALDataType;
83
84 int CPL_DLL CPL_STDCALL GDALGetDataTypeSize(GDALDataType); // Deprecated.
85 int CPL_DLL CPL_STDCALL GDALGetDataTypeSizeBits(GDALDataType eDataType);
86 int CPL_DLL CPL_STDCALL GDALGetDataTypeSizeBytes(GDALDataType);
87 int CPL_DLL CPL_STDCALL GDALDataTypeIsComplex(GDALDataType);
88 int CPL_DLL CPL_STDCALL GDALDataTypeIsInteger(GDALDataType);
89 int CPL_DLL CPL_STDCALL GDALDataTypeIsFloating(GDALDataType);
90 int CPL_DLL CPL_STDCALL GDALDataTypeIsSigned(GDALDataType);
91 const char CPL_DLL *CPL_STDCALL GDALGetDataTypeName(GDALDataType);
92 GDALDataType CPL_DLL CPL_STDCALL GDALGetDataTypeByName(const char *);
93 GDALDataType CPL_DLL CPL_STDCALL GDALDataTypeUnion(GDALDataType, GDALDataType);
94 GDALDataType CPL_DLL CPL_STDCALL GDALDataTypeUnionWithValue(GDALDataType eDT,
95 double dValue,
96 int bComplex);
97 GDALDataType CPL_DLL CPL_STDCALL GDALFindDataType(int nBits, int bSigned,
98 int bFloating, int bComplex);
99 GDALDataType CPL_DLL CPL_STDCALL GDALFindDataTypeForValue(double dValue,
100 int bComplex);
101 double CPL_DLL GDALAdjustValueToDataType(GDALDataType eDT, double dfValue,
102 int *pbClamped, int *pbRounded);
103 GDALDataType CPL_DLL CPL_STDCALL GDALGetNonComplexDataType(GDALDataType);
104 int CPL_DLL CPL_STDCALL GDALDataTypeIsConversionLossy(GDALDataType eTypeFrom,
105 GDALDataType eTypeTo);
106
110 typedef enum
111 {
112 GARIO_PENDING = 0,
113 GARIO_UPDATE = 1,
114 GARIO_ERROR = 2,
115 GARIO_COMPLETE = 3,
116 GARIO_TypeCount = 4
117 } GDALAsyncStatusType;
118
119 const char CPL_DLL *CPL_STDCALL GDALGetAsyncStatusTypeName(GDALAsyncStatusType);
120 GDALAsyncStatusType CPL_DLL CPL_STDCALL
121 GDALGetAsyncStatusTypeByName(const char *);
122
124 typedef enum
125 { GA_ReadOnly = 0, GA_Update = 1
128 } GDALAccess;
129
131 typedef enum
132 { GF_Read = 0, GF_Write = 1
135 } GDALRWFlag;
136
137 /* NOTE: values are selected to be consistent with GDALResampleAlg of
138 * alg/gdalwarper.h */
142 typedef enum
143 { GRIORA_NearestNeighbour = 0, GRIORA_Bilinear = 1, GRIORA_Cubic = 2, GRIORA_CubicSpline = 3, GRIORA_Lanczos = 4, GRIORA_Average = 5,
152 GRIORA_Mode = 6, GRIORA_Gauss = 7,
154 /* NOTE: values 8 to 13 are reserved for max,min,med,Q1,Q3,sum */
156 GRIORA_RESERVED_START = 8,
157 GRIORA_RESERVED_END = 13,
163 GRIORA_RMS = 14,
165 GRIORA_LAST = GRIORA_RMS
167 } GDALRIOResampleAlg;
168
169 /* NOTE to developers: only add members, and if so edit INIT_RASTERIO_EXTRA_ARG
170 */
175 typedef struct
176 {
178 int nVersion;
179
181 GDALRIOResampleAlg eResampleAlg;
182
184 GDALProgressFunc pfnProgress;
186 void *pProgressData;
187
193 int bFloatingPointWindowValidity;
196 double dfXOff;
199 double dfYOff;
202 double dfXSize;
205 double dfYSize;
206 } GDALRasterIOExtraArg;
207
208 #ifndef DOXYGEN_SKIP
209 #define RASTERIO_EXTRA_ARG_CURRENT_VERSION 1
210 #endif
211
215 #define INIT_RASTERIO_EXTRA_ARG(s) \
216 do \
217 { \
218 (s).nVersion = RASTERIO_EXTRA_ARG_CURRENT_VERSION; \
219 (s).eResampleAlg = GRIORA_NearestNeighbour; \
220 (s).pfnProgress = CPL_NULLPTR; \
221 (s).pProgressData = CPL_NULLPTR; \
222 (s).bFloatingPointWindowValidity = FALSE; \
223 } while (0)
224
226 typedef enum
227 { 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
246 } GDALColorInterp;
247
248 const char CPL_DLL *GDALGetColorInterpretationName(GDALColorInterp);
249 GDALColorInterp CPL_DLL GDALGetColorInterpretationByName(const char *pszName);
250
252 typedef enum
253 { GPI_Gray = 0, GPI_RGB = 1, GPI_CMYK = 2, GPI_HLS = 3
258 } GDALPaletteInterp;
259
260 const char CPL_DLL *GDALGetPaletteInterpretationName(GDALPaletteInterp);
261
262 /* "well known" metadata items. */
263
266 #define GDALMD_AREA_OR_POINT "AREA_OR_POINT"
267
269 #define GDALMD_AOP_AREA "Area"
270
272 #define GDALMD_AOP_POINT "Point"
273
274 /* -------------------------------------------------------------------- */
275 /* GDAL Specific error codes. */
276 /* */
277 /* error codes 100 to 299 reserved for GDAL. */
278 /* -------------------------------------------------------------------- */
279 #ifndef DOXYGEN_SKIP
280 #define CPLE_WrongFormat CPL_STATIC_CAST(CPLErrorNum, 200)
281 #endif
282
283 /* -------------------------------------------------------------------- */
284 /* Define handle types related to various internal classes. */
285 /* -------------------------------------------------------------------- */
286
288 typedef void *GDALMajorObjectH;
289
291 typedef void *GDALDatasetH;
292
294 typedef void *GDALRasterBandH;
295
297 typedef void *GDALDriverH;
298
300 typedef void *GDALColorTableH;
301
304 typedef void *GDALRasterAttributeTableH;
305
307 typedef void *GDALAsyncReaderH;
308
312 typedef void *GDALRelationshipH;
313
315 typedef GIntBig GSpacing;
316
320 typedef enum
321 {
323 GEDTC_NUMERIC,
325 GEDTC_STRING,
327 GEDTC_COMPOUND
328 } GDALExtendedDataTypeClass;
329
333 typedef enum
334 {
336 GEDTST_NONE,
338 GEDTST_JSON
339 } GDALExtendedDataTypeSubType;
340
342 typedef struct GDALExtendedDataTypeHS *GDALExtendedDataTypeH;
344 typedef struct GDALEDTComponentHS *GDALEDTComponentH;
346 typedef struct GDALGroupHS *GDALGroupH;
348 typedef struct GDALMDArrayHS *GDALMDArrayH;
350 typedef struct GDALAttributeHS *GDALAttributeH;
352 typedef struct GDALDimensionHS *GDALDimensionH;
353
354 /* ==================================================================== */
355 /* Registration/driver related. */
356 /* ==================================================================== */
357
359 #define GDAL_DMD_LONGNAME "DMD_LONGNAME"
360
362 #define GDAL_DMD_HELPTOPIC "DMD_HELPTOPIC"
363
365 #define GDAL_DMD_MIMETYPE "DMD_MIMETYPE"
366
368 #define GDAL_DMD_EXTENSION "DMD_EXTENSION"
369
374 #define GDAL_DMD_CONNECTION_PREFIX "DMD_CONNECTION_PREFIX"
375
379 #define GDAL_DMD_EXTENSIONS "DMD_EXTENSIONS"
380
382 #define GDAL_DMD_CREATIONOPTIONLIST "DMD_CREATIONOPTIONLIST"
383
387 #define GDAL_DMD_MULTIDIM_DATASET_CREATIONOPTIONLIST \
388 "DMD_MULTIDIM_DATASET_CREATIONOPTIONLIST"
389
393 #define GDAL_DMD_MULTIDIM_GROUP_CREATIONOPTIONLIST \
394 "DMD_MULTIDIM_GROUP_CREATIONOPTIONLIST"
395
399 #define GDAL_DMD_MULTIDIM_DIMENSION_CREATIONOPTIONLIST \
400 "DMD_MULTIDIM_DIMENSION_CREATIONOPTIONLIST"
401
405 #define GDAL_DMD_MULTIDIM_ARRAY_CREATIONOPTIONLIST \
406 "DMD_MULTIDIM_ARRAY_CREATIONOPTIONLIST"
407
411 #define GDAL_DMD_MULTIDIM_ARRAY_OPENOPTIONLIST \
412 "DMD_MULTIDIM_ARRAY_OPENOPTIONLIST"
413
417 #define GDAL_DMD_MULTIDIM_ATTRIBUTE_CREATIONOPTIONLIST \
418 "DMD_MULTIDIM_ATTRIBUTE_CREATIONOPTIONLIST"
419
423 #define GDAL_DMD_OPENOPTIONLIST "DMD_OPENOPTIONLIST"
424
427 #define GDAL_DMD_CREATIONDATATYPES "DMD_CREATIONDATATYPES"
428
433 #define GDAL_DMD_CREATIONFIELDDATATYPES "DMD_CREATIONFIELDDATATYPES"
434
439 #define GDAL_DMD_CREATIONFIELDDATASUBTYPES "DMD_CREATIONFIELDDATASUBTYPES"
440
458 #define GDAL_DMD_CREATION_FIELD_DEFN_FLAGS "DMD_CREATION_FIELD_DEFN_FLAGS"
459
468 #define GDAL_DMD_SUBDATASETS "DMD_SUBDATASETS"
469
478 #define GDAL_DMD_NUMERIC_FIELD_WIDTH_INCLUDES_DECIMAL_SEPARATOR \
479 "DMD_NUMERIC_FIELD_WIDTH_INCLUDES_DECIMAL_SEPARATOR"
480
489 #define GDAL_DMD_NUMERIC_FIELD_WIDTH_INCLUDES_SIGN \
490 "DMD_NUMERIC_FIELD_WIDTH_INCLUDES_SIGN"
491
493 #define GDAL_DCAP_OPEN "DCAP_OPEN"
494
503 #define GDAL_DCAP_CREATE "DCAP_CREATE"
504
509 #define GDAL_DCAP_CREATE_MULTIDIMENSIONAL "DCAP_CREATE_MULTIDIMENSIONAL"
510
519 #define GDAL_DCAP_CREATECOPY "DCAP_CREATECOPY"
520
525 #define GDAL_DCAP_VECTOR_TRANSLATE_FROM "DCAP_VECTOR_TRANSLATE_FROM"
526
532 #define GDAL_DCAP_CREATECOPY_MULTIDIMENSIONAL "DCAP_CREATECOPY_MULTIDIMENSIONAL"
533
537 #define GDAL_DCAP_MULTIDIM_RASTER "DCAP_MULTIDIM_RASTER"
538
540 #define GDAL_DCAP_SUBCREATECOPY "DCAP_SUBCREATECOPY"
541
544 #define GDAL_DCAP_VIRTUALIO "DCAP_VIRTUALIO"
545
549 #define GDAL_DCAP_RASTER "DCAP_RASTER"
550
554 #define GDAL_DCAP_VECTOR "DCAP_VECTOR"
555
559 #define GDAL_DCAP_GNM "DCAP_GNM"
560
564 #define GDAL_DCAP_CREATE_LAYER "DCAP_CREATE_LAYER"
565
569 #define GDAL_DCAP_DELETE_LAYER "DCAP_DELETE_LAYER"
570
574 #define GDAL_DCAP_CREATE_FIELD "DCAP_CREATE_FIELD"
575
579 #define GDAL_DCAP_DELETE_FIELD "DCAP_DELETE_FIELD"
580
584 #define GDAL_DCAP_REORDER_FIELDS "DCAP_REORDER_FIELDS"
585
605 #define GDAL_DMD_ALTER_FIELD_DEFN_FLAGS "GDAL_DMD_ALTER_FIELD_DEFN_FLAGS"
606
612 #define GDAL_DMD_ILLEGAL_FIELD_NAMES "GDAL_DMD_ILLEGAL_FIELD_NAMES"
613
617 #define GDAL_DCAP_NOTNULL_FIELDS "DCAP_NOTNULL_FIELDS"
618
622 #define GDAL_DCAP_UNIQUE_FIELDS "DCAP_UNIQUE_FIELDS"
623
627 #define GDAL_DCAP_DEFAULT_FIELDS "DCAP_DEFAULT_FIELDS"
628
633 #define GDAL_DCAP_NOTNULL_GEOMFIELDS "DCAP_NOTNULL_GEOMFIELDS"
634
640 #define GDAL_DCAP_NONSPATIAL "DCAP_NONSPATIAL"
641
645 #define GDAL_DCAP_CURVE_GEOMETRIES "DCAP_CURVE_GEOMETRIES"
646
651 #define GDAL_DCAP_MEASURED_GEOMETRIES "DCAP_MEASURED_GEOMETRIES"
652
657 #define GDAL_DCAP_Z_GEOMETRIES "DCAP_Z_GEOMETRIES"
658
671 #define GDAL_DMD_GEOMETRY_FLAGS "GDAL_DMD_GEOMETRY_FLAGS"
672
681 #define GDAL_DCAP_FEATURE_STYLES "DCAP_FEATURE_STYLES"
682
686 #define GDAL_DCAP_FEATURE_STYLES_READ "DCAP_FEATURE_STYLES_READ"
687
691 #define GDAL_DCAP_FEATURE_STYLES_WRITE "DCAP_FEATURE_STYLES_WRITE"
692
697 #define GDAL_DCAP_COORDINATE_EPOCH "DCAP_COORDINATE_EPOCH"
698
707 #define GDAL_DCAP_MULTIPLE_VECTOR_LAYERS "DCAP_MULTIPLE_VECTOR_LAYERS"
708
713 #define GDAL_DCAP_FIELD_DOMAINS "DCAP_FIELD_DOMAINS"
714
720 #define GDAL_DCAP_RELATIONSHIPS "DCAP_RELATIONSHIPS"
721
726 #define GDAL_DCAP_CREATE_RELATIONSHIP "DCAP_CREATE_RELATIONSHIP"
727
732 #define GDAL_DCAP_DELETE_RELATIONSHIP "DCAP_DELETE_RELATIONSHIP"
733
738 #define GDAL_DCAP_UPDATE_RELATIONSHIP "DCAP_UPDATE_RELATIONSHIP"
739
745 #define GDAL_DCAP_FLUSHCACHE_CONSISTENT_STATE "DCAP_FLUSHCACHE_CONSISTENT_STATE"
746
773 #define GDAL_DMD_RELATIONSHIP_FLAGS "GDAL_DMD_RELATIONSHIP_FLAGS"
774
782 #define GDAL_DMD_RELATIONSHIP_RELATED_TABLE_TYPES \
783 "GDAL_DMD_RELATIONSHIP_RELATED_TABLE_TYPES"
784
789 #define GDAL_DCAP_RENAME_LAYERS "DCAP_RENAME_LAYERS"
790
800 #define GDAL_DMD_CREATION_FIELD_DOMAIN_TYPES "DMD_CREATION_FIELD_DOMAIN_TYPES"
801
817 #define GDAL_DMD_ALTER_GEOM_FIELD_DEFN_FLAGS "DMD_ALTER_GEOM_FIELD_DEFN_FLAGS"
818
840 #define GDAL_DMD_SUPPORTED_SQL_DIALECTS "DMD_SUPPORTED_SQL_DIALECTS"
841
846 #define GDAL_DIM_TYPE_HORIZONTAL_X "HORIZONTAL_X"
847
852 #define GDAL_DIM_TYPE_HORIZONTAL_Y "HORIZONTAL_Y"
853
857 #define GDAL_DIM_TYPE_VERTICAL "VERTICAL"
858
862 #define GDAL_DIM_TYPE_TEMPORAL "TEMPORAL"
863
867 #define GDAL_DIM_TYPE_PARAMETRIC "PARAMETRIC"
868
869 #define GDsCAddRelationship \
870 "AddRelationship"
872 #define GDsCDeleteRelationship \
873 "DeleteRelationship"
875 #define GDsCUpdateRelationship \
876 "UpdateRelationship"
879 void CPL_DLL CPL_STDCALL GDALAllRegister(void);
880 void CPL_DLL GDALRegisterPlugins(void);
881 CPLErr CPL_DLL GDALRegisterPlugin(const char *name);
882
883 GDALDatasetH CPL_DLL CPL_STDCALL
884 GDALCreate(GDALDriverH hDriver, const char *, int, int, int, GDALDataType,
885 CSLConstList) CPL_WARN_UNUSED_RESULT;
886 GDALDatasetH CPL_DLL CPL_STDCALL GDALCreateCopy(GDALDriverH, const char *,
887 GDALDatasetH, int, CSLConstList,
888 GDALProgressFunc,
889 void *) CPL_WARN_UNUSED_RESULT;
890
891 GDALDriverH CPL_DLL CPL_STDCALL GDALIdentifyDriver(const char *pszFilename,
892 CSLConstList papszFileList);
893
894 GDALDriverH CPL_DLL CPL_STDCALL GDALIdentifyDriverEx(
895 const char *pszFilename, unsigned int nIdentifyFlags,
896 const char *const *papszAllowedDrivers, const char *const *papszFileList);
897
898 GDALDatasetH CPL_DLL CPL_STDCALL
899 GDALOpen(const char *pszFilename, GDALAccess eAccess) CPL_WARN_UNUSED_RESULT;
900 GDALDatasetH CPL_DLL CPL_STDCALL GDALOpenShared(const char *, GDALAccess)
901 CPL_WARN_UNUSED_RESULT;
902
903 /* Note: we define GDAL_OF_READONLY and GDAL_OF_UPDATE to be on purpose */
904 /* equals to GA_ReadOnly and GA_Update */
905
910 #define GDAL_OF_READONLY 0x00
911
916 #define GDAL_OF_UPDATE 0x01
917
922 #define GDAL_OF_ALL 0x00
923
928 #define GDAL_OF_RASTER 0x02
929
934 #define GDAL_OF_VECTOR 0x04
935
940 #define GDAL_OF_GNM 0x08
941
946 #define GDAL_OF_MULTIDIM_RASTER 0x10
947
948 #ifndef DOXYGEN_SKIP
949 #define GDAL_OF_KIND_MASK 0x1E
950 #endif
951
956 #define GDAL_OF_SHARED 0x20
957
962 #define GDAL_OF_VERBOSE_ERROR 0x40
963
970 #define GDAL_OF_INTERNAL 0x80
971
981 #define GDAL_OF_DEFAULT_BLOCK_ACCESS 0
982
991 #define GDAL_OF_ARRAY_BLOCK_ACCESS 0x100
992
1001 #define GDAL_OF_HASHSET_BLOCK_ACCESS 0x200
1002
1003 #ifndef DOXYGEN_SKIP
1004 /* Reserved for a potential future alternative to GDAL_OF_ARRAY_BLOCK_ACCESS
1005 * and GDAL_OF_HASHSET_BLOCK_ACCESS */
1006 #define GDAL_OF_RESERVED_1 0x300
1007
1009 #define GDAL_OF_BLOCK_ACCESS_MASK 0x300
1010 #endif
1011
1012 GDALDatasetH CPL_DLL CPL_STDCALL GDALOpenEx(
1013 const char *pszFilename, unsigned int nOpenFlags,
1014 const char *const *papszAllowedDrivers, const char *const *papszOpenOptions,
1015 const char *const *papszSiblingFiles) CPL_WARN_UNUSED_RESULT;
1016
1017 int CPL_DLL CPL_STDCALL GDALDumpOpenDatasets(FILE *);
1018
1019 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDriverByName(const char *);
1020 int CPL_DLL CPL_STDCALL GDALGetDriverCount(void);
1021 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDriver(int);
1022 GDALDriverH CPL_DLL CPL_STDCALL GDALCreateDriver(void);
1023 void CPL_DLL CPL_STDCALL GDALDestroyDriver(GDALDriverH);
1024 int CPL_DLL CPL_STDCALL GDALRegisterDriver(GDALDriverH);
1025 void CPL_DLL CPL_STDCALL GDALDeregisterDriver(GDALDriverH);
1026 void CPL_DLL CPL_STDCALL GDALDestroyDriverManager(void);
1027 #ifndef DOXYGEN_SKIP
1028 void CPL_DLL GDALDestroy(void);
1029 #endif
1030 CPLErr CPL_DLL CPL_STDCALL GDALDeleteDataset(GDALDriverH, const char *);
1031 CPLErr CPL_DLL CPL_STDCALL GDALRenameDataset(GDALDriverH,
1032 const char *pszNewName,
1033 const char *pszOldName);
1034 CPLErr CPL_DLL CPL_STDCALL GDALCopyDatasetFiles(GDALDriverH,
1035 const char *pszNewName,
1036 const char *pszOldName);
1037 int CPL_DLL CPL_STDCALL
1038 GDALValidateCreationOptions(GDALDriverH, CSLConstList papszCreationOptions);
1039
1040 /* The following are deprecated */
1041 const char CPL_DLL *CPL_STDCALL GDALGetDriverShortName(GDALDriverH);
1042 const char CPL_DLL *CPL_STDCALL GDALGetDriverLongName(GDALDriverH);
1043 const char CPL_DLL *CPL_STDCALL GDALGetDriverHelpTopic(GDALDriverH);
1044 const char CPL_DLL *CPL_STDCALL GDALGetDriverCreationOptionList(GDALDriverH);
1045
1046 /* ==================================================================== */
1047 /* GDAL_GCP */
1048 /* ==================================================================== */
1049
1051 typedef struct
1052 {
1054 char *pszId;
1055
1057 char *pszInfo;
1058
1060 double dfGCPPixel;
1062 double dfGCPLine;
1063
1065 double dfGCPX;
1066
1068 double dfGCPY;
1069
1071 double dfGCPZ;
1072 } GDAL_GCP;
1073
1074 void CPL_DLL CPL_STDCALL GDALInitGCPs(int, GDAL_GCP *);
1075 void CPL_DLL CPL_STDCALL GDALDeinitGCPs(int, GDAL_GCP *);
1076 GDAL_GCP CPL_DLL *CPL_STDCALL GDALDuplicateGCPs(int, const GDAL_GCP *);
1077
1078 int CPL_DLL CPL_STDCALL GDALGCPsToGeoTransform(
1079 int nGCPCount, const GDAL_GCP *pasGCPs, double *padfGeoTransform,
1080 int bApproxOK) CPL_WARN_UNUSED_RESULT;
1081 int CPL_DLL CPL_STDCALL GDALInvGeoTransform(double *padfGeoTransformIn,
1082 double *padfInvGeoTransformOut)
1083 CPL_WARN_UNUSED_RESULT;
1084 void CPL_DLL CPL_STDCALL GDALApplyGeoTransform(double *, double, double,
1085 double *, double *);
1086 void CPL_DLL GDALComposeGeoTransforms(const double *padfGeoTransform1,
1087 const double *padfGeoTransform2,
1088 double *padfGeoTransformOut);
1089
1090 /* ==================================================================== */
1091 /* major objects (dataset, and, driver, drivermanager). */
1092 /* ==================================================================== */
1093
1094 char CPL_DLL **CPL_STDCALL GDALGetMetadataDomainList(GDALMajorObjectH hObject);
1095 char CPL_DLL **CPL_STDCALL GDALGetMetadata(GDALMajorObjectH, const char *);
1096 CPLErr CPL_DLL CPL_STDCALL GDALSetMetadata(GDALMajorObjectH, CSLConstList,
1097 const char *);
1098 const char CPL_DLL *CPL_STDCALL GDALGetMetadataItem(GDALMajorObjectH,
1099 const char *, const char *);
1100 CPLErr CPL_DLL CPL_STDCALL GDALSetMetadataItem(GDALMajorObjectH, const char *,
1101 const char *, const char *);
1102 const char CPL_DLL *CPL_STDCALL GDALGetDescription(GDALMajorObjectH);
1103 void CPL_DLL CPL_STDCALL GDALSetDescription(GDALMajorObjectH, const char *);
1104
1105 /* ==================================================================== */
1106 /* GDALDataset class ... normally this represents one file. */
1107 /* ==================================================================== */
1108
1110 #define GDAL_DS_LAYER_CREATIONOPTIONLIST "DS_LAYER_CREATIONOPTIONLIST"
1111
1112 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDatasetDriver(GDALDatasetH);
1113 char CPL_DLL **CPL_STDCALL GDALGetFileList(GDALDatasetH);
1114 CPLErr CPL_DLL CPL_STDCALL GDALClose(GDALDatasetH);
1115 int CPL_DLL CPL_STDCALL GDALGetRasterXSize(GDALDatasetH);
1116 int CPL_DLL CPL_STDCALL GDALGetRasterYSize(GDALDatasetH);
1117 int CPL_DLL CPL_STDCALL GDALGetRasterCount(GDALDatasetH);
1118 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetRasterBand(GDALDatasetH, int);
1119
1120 CPLErr CPL_DLL CPL_STDCALL GDALAddBand(GDALDatasetH hDS, GDALDataType eType,
1121 CSLConstList papszOptions);
1122
1123 GDALAsyncReaderH CPL_DLL CPL_STDCALL GDALBeginAsyncReader(
1124 GDALDatasetH hDS, int nXOff, int nYOff, int nXSize, int nYSize, void *pBuf,
1125 int nBufXSize, int nBufYSize, GDALDataType eBufType, int nBandCount,
1126 int *panBandMap, int nPixelSpace, int nLineSpace, int nBandSpace,
1127 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1128
1129 void CPL_DLL CPL_STDCALL GDALEndAsyncReader(GDALDatasetH hDS,
1130 GDALAsyncReaderH hAsynchReaderH);
1131
1132 CPLErr CPL_DLL CPL_STDCALL GDALDatasetRasterIO(
1133 GDALDatasetH hDS, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff,
1134 int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize,
1135 GDALDataType eBDataType, int nBandCount, int *panBandCount, int nPixelSpace,
1136 int nLineSpace, int nBandSpace) CPL_WARN_UNUSED_RESULT;
1137
1138 CPLErr CPL_DLL CPL_STDCALL GDALDatasetRasterIOEx(
1139 GDALDatasetH hDS, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff,
1140 int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize,
1141 GDALDataType eBDataType, int nBandCount, int *panBandCount,
1142 GSpacing nPixelSpace, GSpacing nLineSpace, GSpacing nBandSpace,
1143 GDALRasterIOExtraArg *psExtraArg) CPL_WARN_UNUSED_RESULT;
1144
1145 CPLErr CPL_DLL CPL_STDCALL GDALDatasetAdviseRead(
1146 GDALDatasetH hDS, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
1147 int nBXSize, int nBYSize, GDALDataType eBDataType, int nBandCount,
1148 int *panBandCount, CSLConstList papszOptions);
1149
1150 char CPL_DLL **
1151 GDALDatasetGetCompressionFormats(GDALDatasetH hDS, int nXOff, int nYOff,
1152 int nXSize, int nYSize, int nBandCount,
1153 const int *panBandList) CPL_WARN_UNUSED_RESULT;
1154 CPLErr CPL_DLL GDALDatasetReadCompressedData(
1155 GDALDatasetH hDS, const char *pszFormat, int nXOff, int nYOff, int nXSize,
1156 int nYSize, int nBandCount, const int *panBandList, void **ppBuffer,
1157 size_t *pnBufferSize, char **ppszDetailedFormat);
1158
1159 const char CPL_DLL *CPL_STDCALL GDALGetProjectionRef(GDALDatasetH);
1160 OGRSpatialReferenceH CPL_DLL GDALGetSpatialRef(GDALDatasetH);
1161 CPLErr CPL_DLL CPL_STDCALL GDALSetProjection(GDALDatasetH, const char *);
1162 CPLErr CPL_DLL GDALSetSpatialRef(GDALDatasetH, OGRSpatialReferenceH);
1163 CPLErr CPL_DLL CPL_STDCALL GDALGetGeoTransform(GDALDatasetH, double *);
1164 CPLErr CPL_DLL CPL_STDCALL GDALSetGeoTransform(GDALDatasetH, double *);
1165
1166 int CPL_DLL CPL_STDCALL GDALGetGCPCount(GDALDatasetH);
1167 const char CPL_DLL *CPL_STDCALL GDALGetGCPProjection(GDALDatasetH);
1168 OGRSpatialReferenceH CPL_DLL GDALGetGCPSpatialRef(GDALDatasetH);
1169 const GDAL_GCP CPL_DLL *CPL_STDCALL GDALGetGCPs(GDALDatasetH);
1170 CPLErr CPL_DLL CPL_STDCALL GDALSetGCPs(GDALDatasetH, int, const GDAL_GCP *,
1171 const char *);
1172 CPLErr CPL_DLL GDALSetGCPs2(GDALDatasetH, int, const GDAL_GCP *,
1173 OGRSpatialReferenceH);
1174
1175 void CPL_DLL *CPL_STDCALL GDALGetInternalHandle(GDALDatasetH, const char *);
1176 int CPL_DLL CPL_STDCALL GDALReferenceDataset(GDALDatasetH);
1177 int CPL_DLL CPL_STDCALL GDALDereferenceDataset(GDALDatasetH);
1178 int CPL_DLL CPL_STDCALL GDALReleaseDataset(GDALDatasetH);
1179
1180 CPLErr CPL_DLL CPL_STDCALL GDALBuildOverviews(GDALDatasetH, const char *, int,
1181 const int *, int, const int *,
1182 GDALProgressFunc,
1183 void *) CPL_WARN_UNUSED_RESULT;
1184 CPLErr CPL_DLL CPL_STDCALL GDALBuildOverviewsEx(
1185 GDALDatasetH, const char *, int, const int *, int, const int *,
1186 GDALProgressFunc, void *, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1187 void CPL_DLL CPL_STDCALL GDALGetOpenDatasets(GDALDatasetH **hDS, int *pnCount);
1188 int CPL_DLL CPL_STDCALL GDALGetAccess(GDALDatasetH hDS);
1189 CPLErr CPL_DLL CPL_STDCALL GDALFlushCache(GDALDatasetH hDS);
1190
1191 CPLErr CPL_DLL CPL_STDCALL GDALCreateDatasetMaskBand(GDALDatasetH hDS,
1192 int nFlags);
1193
1194 CPLErr CPL_DLL CPL_STDCALL GDALDatasetCopyWholeRaster(
1195 GDALDatasetH hSrcDS, GDALDatasetH hDstDS, CSLConstList papszOptions,
1196 GDALProgressFunc pfnProgress, void *pProgressData) CPL_WARN_UNUSED_RESULT;
1197
1198 CPLErr CPL_DLL CPL_STDCALL GDALRasterBandCopyWholeRaster(
1199 GDALRasterBandH hSrcBand, GDALRasterBandH hDstBand,
1200 const char *const *constpapszOptions, GDALProgressFunc pfnProgress,
1201 void *pProgressData) CPL_WARN_UNUSED_RESULT;
1202
1203 CPLErr CPL_DLL GDALRegenerateOverviews(GDALRasterBandH hSrcBand,
1204 int nOverviewCount,
1205 GDALRasterBandH *pahOverviewBands,
1206 const char *pszResampling,
1207 GDALProgressFunc pfnProgress,
1208 void *pProgressData);
1209
1210 CPLErr CPL_DLL GDALRegenerateOverviewsEx(GDALRasterBandH hSrcBand,
1211 int nOverviewCount,
1212 GDALRasterBandH *pahOverviewBands,
1213 const char *pszResampling,
1214 GDALProgressFunc pfnProgress,
1215 void *pProgressData,
1216 CSLConstList papszOptions);
1217
1218 int CPL_DLL GDALDatasetGetLayerCount(GDALDatasetH);
1219 OGRLayerH CPL_DLL GDALDatasetGetLayer(GDALDatasetH, int);
1220 OGRLayerH CPL_DLL GDALDatasetGetLayerByName(GDALDatasetH, const char *);
1221 int CPL_DLL GDALDatasetIsLayerPrivate(GDALDatasetH, int);
1222 OGRErr CPL_DLL GDALDatasetDeleteLayer(GDALDatasetH, int);
1223 OGRLayerH CPL_DLL GDALDatasetCreateLayer(GDALDatasetH, const char *,
1224 OGRSpatialReferenceH,
1225 OGRwkbGeometryType, CSLConstList);
1226 OGRLayerH CPL_DLL GDALDatasetCopyLayer(GDALDatasetH, OGRLayerH, const char *,
1227 CSLConstList);
1228 void CPL_DLL GDALDatasetResetReading(GDALDatasetH);
1229 OGRFeatureH CPL_DLL GDALDatasetGetNextFeature(GDALDatasetH hDS,
1230 OGRLayerH *phBelongingLayer,
1231 double *pdfProgressPct,
1232 GDALProgressFunc pfnProgress,
1233 void *pProgressData);
1234 int CPL_DLL GDALDatasetTestCapability(GDALDatasetH, const char *);
1235 OGRLayerH CPL_DLL GDALDatasetExecuteSQL(GDALDatasetH, const char *,
1236 OGRGeometryH, const char *);
1237 OGRErr CPL_DLL GDALDatasetAbortSQL(GDALDatasetH);
1238 void CPL_DLL GDALDatasetReleaseResultSet(GDALDatasetH, OGRLayerH);
1239 OGRStyleTableH CPL_DLL GDALDatasetGetStyleTable(GDALDatasetH);
1240 void CPL_DLL GDALDatasetSetStyleTableDirectly(GDALDatasetH, OGRStyleTableH);
1241 void CPL_DLL GDALDatasetSetStyleTable(GDALDatasetH, OGRStyleTableH);
1242 OGRErr CPL_DLL GDALDatasetStartTransaction(GDALDatasetH hDS, int bForce);
1243 OGRErr CPL_DLL GDALDatasetCommitTransaction(GDALDatasetH hDS);
1244 OGRErr CPL_DLL GDALDatasetRollbackTransaction(GDALDatasetH hDS);
1245 void CPL_DLL GDALDatasetClearStatistics(GDALDatasetH hDS);
1246
1247 char CPL_DLL **GDALDatasetGetFieldDomainNames(GDALDatasetH, CSLConstList)
1248 CPL_WARN_UNUSED_RESULT;
1249 OGRFieldDomainH CPL_DLL GDALDatasetGetFieldDomain(GDALDatasetH hDS,
1250 const char *pszName);
1251 bool CPL_DLL GDALDatasetAddFieldDomain(GDALDatasetH hDS,
1252 OGRFieldDomainH hFieldDomain,
1253 char **ppszFailureReason);
1254 bool CPL_DLL GDALDatasetDeleteFieldDomain(GDALDatasetH hDS, const char *pszName,
1255 char **ppszFailureReason);
1256 bool CPL_DLL GDALDatasetUpdateFieldDomain(GDALDatasetH hDS,
1257 OGRFieldDomainH hFieldDomain,
1258 char **ppszFailureReason);
1259
1260 char CPL_DLL **GDALDatasetGetRelationshipNames(GDALDatasetH, CSLConstList)
1261 CPL_WARN_UNUSED_RESULT;
1262 GDALRelationshipH CPL_DLL GDALDatasetGetRelationship(GDALDatasetH hDS,
1263 const char *pszName);
1264
1265 bool CPL_DLL GDALDatasetAddRelationship(GDALDatasetH hDS,
1266 GDALRelationshipH hRelationship,
1267 char **ppszFailureReason);
1268 bool CPL_DLL GDALDatasetDeleteRelationship(GDALDatasetH hDS,
1269 const char *pszName,
1270 char **ppszFailureReason);
1271 bool CPL_DLL GDALDatasetUpdateRelationship(GDALDatasetH hDS,
1272 GDALRelationshipH hRelationship,
1273 char **ppszFailureReason);
1274
1277 typedef void (*GDALQueryLoggerFunc)(const char *pszSQL, const char *pszError,
1278 int64_t lNumRecords,
1279 int64_t lExecutionTimeMilliseconds,
1280 void *pQueryLoggerArg);
1281
1298 bool CPL_DLL GDALDatasetSetQueryLoggerFunc(
1299 GDALDatasetH hDS, GDALQueryLoggerFunc pfnQueryLoggerFunc,
1300 void *poQueryLoggerArg);
1301
1302 /* ==================================================================== */
1303 /* Informational utilities about subdatasets in file names */
1304 /* ==================================================================== */
1305
1310 typedef struct GDALSubdatasetInfo *GDALSubdatasetInfoH;
1311
1323 GDALSubdatasetInfoH CPL_DLL GDALGetSubdatasetInfo(const char *pszFileName);
1324
1335 char CPL_DLL *GDALSubdatasetInfoGetPathComponent(GDALSubdatasetInfoH hInfo);
1336
1345 char CPL_DLL *
1346 GDALSubdatasetInfoGetSubdatasetComponent(GDALSubdatasetInfoH hInfo);
1347
1357 char CPL_DLL *GDALSubdatasetInfoModifyPathComponent(GDALSubdatasetInfoH hInfo,
1358 const char *pszNewPath);
1359
1365 void CPL_DLL GDALDestroySubdatasetInfo(GDALSubdatasetInfoH hInfo);
1366
1367 /* ==================================================================== */
1368 /* GDALRasterBand ... one band/channel in a dataset. */
1369 /* ==================================================================== */
1370
1371 /* Note: the only user of SRCVAL() was frmts/vrt/pixelfunctions.cpp and we no */
1372 /* longer use it. */
1373
1378 #define SRCVAL(papoSource, eSrcType, ii) \
1379 (eSrcType == GDT_Byte \
1380 ? CPL_REINTERPRET_CAST(const GByte *, papoSource)[ii] \
1381 : (eSrcType == GDT_Int8 \
1382 ? CPL_REINTERPRET_CAST(const GInt8 *, papoSource)[ii] \
1383 : (eSrcType == GDT_Float32 \
1384 ? CPL_REINTERPRET_CAST(const float *, papoSource)[ii] \
1385 : (eSrcType == GDT_Float64 \
1386 ? CPL_REINTERPRET_CAST(const double *, \
1387 papoSource)[ii] \
1388 : (eSrcType == GDT_Int32 \
1389 ? CPL_REINTERPRET_CAST(const GInt32 *, \
1390 papoSource)[ii] \
1391 : (eSrcType == GDT_UInt16 \
1392 ? CPL_REINTERPRET_CAST( \
1393 const GUInt16 *, \
1394 papoSource)[ii] \
1395 : (eSrcType == GDT_Int16 \
1396 ? CPL_REINTERPRET_CAST( \
1397 const GInt16 *, \
1398 papoSource)[ii] \
1399 : (eSrcType == GDT_UInt32 \
1400 ? CPL_REINTERPRET_CAST( \
1401 const GUInt32 \
1402 *, \
1403 papoSource) \
1404 [ii] \
1405 : (eSrcType == \
1406 GDT_CInt16 \
1407 ? CPL_REINTERPRET_CAST( \
1408 const GInt16 \
1409 *, \
1410 papoSource) \
1411 [(ii)*2] \
1412 : (eSrcType == \
1413 GDT_CInt32 \
1414 ? CPL_REINTERPRET_CAST( \
1415 const GInt32 \
1416 *, \
1417 papoSource) \
1418 [(ii)*2] \
1419 : (eSrcType == \
1420 GDT_CFloat32 \
1421 ? CPL_REINTERPRET_CAST( \
1422 const float \
1423 *, \
1424 papoSource) \
1425 [(ii)*2] \
1426 : (eSrcType == \
1427 GDT_CFloat64 \
1428 ? CPL_REINTERPRET_CAST( \
1429 const double \
1430 *, \
1431 papoSource) \
1432 [(ii)*2] \
1433 : 0))))))))))))
1434
1437 typedef CPLErr (*GDALDerivedPixelFunc)(void **papoSources, int nSources,
1438 void *pData, int nBufXSize,
1439 int nBufYSize, GDALDataType eSrcType,
1440 GDALDataType eBufType, int nPixelSpace,
1441 int nLineSpace);
1442
1445 typedef CPLErr (*GDALDerivedPixelFuncWithArgs)(
1446 void **papoSources, int nSources, void *pData, int nBufXSize, int nBufYSize,
1447 GDALDataType eSrcType, GDALDataType eBufType, int nPixelSpace,
1448 int nLineSpace, CSLConstList papszFunctionArgs);
1449
1450 GDALDataType CPL_DLL CPL_STDCALL GDALGetRasterDataType(GDALRasterBandH);
1451 void CPL_DLL CPL_STDCALL GDALGetBlockSize(GDALRasterBandH, int *pnXSize,
1452 int *pnYSize);
1453
1454 CPLErr CPL_DLL CPL_STDCALL GDALGetActualBlockSize(GDALRasterBandH,
1455 int nXBlockOff,
1456 int nYBlockOff, int *pnXValid,
1457 int *pnYValid);
1458
1459 CPLErr CPL_DLL CPL_STDCALL GDALRasterAdviseRead(GDALRasterBandH hRB,
1460 int nDSXOff, int nDSYOff,
1461 int nDSXSize, int nDSYSize,
1462 int nBXSize, int nBYSize,
1463 GDALDataType eBDataType,
1464 CSLConstList papszOptions);
1465
1466 CPLErr CPL_DLL CPL_STDCALL GDALRasterIO(GDALRasterBandH hRBand,
1467 GDALRWFlag eRWFlag, int nDSXOff,
1468 int nDSYOff, int nDSXSize, int nDSYSize,
1469 void *pBuffer, int nBXSize, int nBYSize,
1470 GDALDataType eBDataType,
1471 int nPixelSpace,
1472 int nLineSpace) CPL_WARN_UNUSED_RESULT;
1473 CPLErr CPL_DLL CPL_STDCALL GDALRasterIOEx(
1474 GDALRasterBandH hRBand, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff,
1475 int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize,
1476 GDALDataType eBDataType, GSpacing nPixelSpace, GSpacing nLineSpace,
1477 GDALRasterIOExtraArg *psExtraArg) CPL_WARN_UNUSED_RESULT;
1478 CPLErr CPL_DLL CPL_STDCALL GDALReadBlock(GDALRasterBandH, int, int,
1479 void *) CPL_WARN_UNUSED_RESULT;
1480 CPLErr CPL_DLL CPL_STDCALL GDALWriteBlock(GDALRasterBandH, int, int,
1481 void *) CPL_WARN_UNUSED_RESULT;
1482 int CPL_DLL CPL_STDCALL GDALGetRasterBandXSize(GDALRasterBandH);
1483 int CPL_DLL CPL_STDCALL GDALGetRasterBandYSize(GDALRasterBandH);
1484 GDALAccess CPL_DLL CPL_STDCALL GDALGetRasterAccess(GDALRasterBandH);
1485 int CPL_DLL CPL_STDCALL GDALGetBandNumber(GDALRasterBandH);
1486 GDALDatasetH CPL_DLL CPL_STDCALL GDALGetBandDataset(GDALRasterBandH);
1487
1488 GDALColorInterp
1489 CPL_DLL CPL_STDCALL GDALGetRasterColorInterpretation(GDALRasterBandH);
1490 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterColorInterpretation(GDALRasterBandH,
1491 GDALColorInterp);
1492 GDALColorTableH CPL_DLL CPL_STDCALL GDALGetRasterColorTable(GDALRasterBandH);
1493 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterColorTable(GDALRasterBandH,
1494 GDALColorTableH);
1495 int CPL_DLL CPL_STDCALL GDALHasArbitraryOverviews(GDALRasterBandH);
1496 int CPL_DLL CPL_STDCALL GDALGetOverviewCount(GDALRasterBandH);
1497 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetOverview(GDALRasterBandH, int);
1498 double CPL_DLL CPL_STDCALL GDALGetRasterNoDataValue(GDALRasterBandH, int *);
1499 int64_t CPL_DLL CPL_STDCALL GDALGetRasterNoDataValueAsInt64(GDALRasterBandH,
1500 int *);
1501 uint64_t CPL_DLL CPL_STDCALL GDALGetRasterNoDataValueAsUInt64(GDALRasterBandH,
1502 int *);
1503 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterNoDataValue(GDALRasterBandH, double);
1504 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterNoDataValueAsInt64(GDALRasterBandH,
1505 int64_t);
1506 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterNoDataValueAsUInt64(GDALRasterBandH,
1507 uint64_t);
1508 CPLErr CPL_DLL CPL_STDCALL GDALDeleteRasterNoDataValue(GDALRasterBandH);
1509 char CPL_DLL **CPL_STDCALL GDALGetRasterCategoryNames(GDALRasterBandH);
1510 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterCategoryNames(GDALRasterBandH,
1511 CSLConstList);
1512 double CPL_DLL CPL_STDCALL GDALGetRasterMinimum(GDALRasterBandH,
1513 int *pbSuccess);
1514 double CPL_DLL CPL_STDCALL GDALGetRasterMaximum(GDALRasterBandH,
1515 int *pbSuccess);
1516 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterStatistics(
1517 GDALRasterBandH, int bApproxOK, int bForce, double *pdfMin, double *pdfMax,
1518 double *pdfMean, double *pdfStdDev);
1519 CPLErr CPL_DLL CPL_STDCALL
1520 GDALComputeRasterStatistics(GDALRasterBandH, int bApproxOK, double *pdfMin,
1521 double *pdfMax, double *pdfMean, double *pdfStdDev,
1522 GDALProgressFunc pfnProgress, void *pProgressData);
1523 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterStatistics(GDALRasterBandH hBand,
1524 double dfMin, double dfMax,
1525 double dfMean,
1526 double dfStdDev);
1527
1528 GDALMDArrayH
1529 CPL_DLL GDALRasterBandAsMDArray(GDALRasterBandH) CPL_WARN_UNUSED_RESULT;
1530
1531 const char CPL_DLL *CPL_STDCALL GDALGetRasterUnitType(GDALRasterBandH);
1532 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterUnitType(GDALRasterBandH hBand,
1533 const char *pszNewValue);
1534 double CPL_DLL CPL_STDCALL GDALGetRasterOffset(GDALRasterBandH, int *pbSuccess);
1535 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterOffset(GDALRasterBandH hBand,
1536 double dfNewOffset);
1537 double CPL_DLL CPL_STDCALL GDALGetRasterScale(GDALRasterBandH, int *pbSuccess);
1538 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterScale(GDALRasterBandH hBand,
1539 double dfNewOffset);
1540 CPLErr CPL_DLL CPL_STDCALL GDALComputeRasterMinMax(GDALRasterBandH hBand,
1541 int bApproxOK,
1542 double adfMinMax[2]);
1543 CPLErr CPL_DLL CPL_STDCALL GDALFlushRasterCache(GDALRasterBandH hBand);
1544 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterHistogram(
1545 GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets,
1546 int *panHistogram, int bIncludeOutOfRange, int bApproxOK,
1547 GDALProgressFunc pfnProgress, void *pProgressData)
1549 CPL_WARN_DEPRECATED("Use GDALGetRasterHistogramEx() instead")
1551 ;
1552 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterHistogramEx(
1553 GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets,
1554 GUIntBig *panHistogram, int bIncludeOutOfRange, int bApproxOK,
1555 GDALProgressFunc pfnProgress, void *pProgressData);
1556 CPLErr CPL_DLL CPL_STDCALL
1557 GDALGetDefaultHistogram(GDALRasterBandH hBand, double *pdfMin, double *pdfMax,
1558 int *pnBuckets, int **ppanHistogram, int bForce,
1559 GDALProgressFunc pfnProgress, void *pProgressData)
1561 CPL_WARN_DEPRECATED("Use GDALGetDefaultHistogramEx() instead")
1563 ;
1564 CPLErr CPL_DLL CPL_STDCALL
1565 GDALGetDefaultHistogramEx(GDALRasterBandH hBand, double *pdfMin, double *pdfMax,
1566 int *pnBuckets, GUIntBig **ppanHistogram, int bForce,
1567 GDALProgressFunc pfnProgress, void *pProgressData);
1568 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultHistogram(GDALRasterBandH hBand,
1569 double dfMin, double dfMax,
1570 int nBuckets,
1571 int *panHistogram)
1573 CPL_WARN_DEPRECATED("Use GDALSetDefaultHistogramEx() instead")
1575 ;
1576 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultHistogramEx(GDALRasterBandH hBand,
1577 double dfMin, double dfMax,
1578 int nBuckets,
1579 GUIntBig *panHistogram);
1580 int CPL_DLL CPL_STDCALL GDALGetRandomRasterSample(GDALRasterBandH, int,
1581 float *);
1582 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetRasterSampleOverview(GDALRasterBandH,
1583 int);
1584 GDALRasterBandH CPL_DLL CPL_STDCALL
1585 GDALGetRasterSampleOverviewEx(GDALRasterBandH, GUIntBig);
1586 CPLErr CPL_DLL CPL_STDCALL GDALFillRaster(GDALRasterBandH hBand,
1587 double dfRealValue,
1588 double dfImaginaryValue);
1589 CPLErr CPL_DLL CPL_STDCALL GDALComputeBandStats(
1590 GDALRasterBandH hBand, int nSampleStep, double *pdfMean, double *pdfStdDev,
1591 GDALProgressFunc pfnProgress, void *pProgressData);
1592 CPLErr CPL_DLL GDALOverviewMagnitudeCorrection(GDALRasterBandH hBaseBand,
1593 int nOverviewCount,
1594 GDALRasterBandH *pahOverviews,
1595 GDALProgressFunc pfnProgress,
1596 void *pProgressData);
1597
1598 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL
1599 GDALGetDefaultRAT(GDALRasterBandH hBand);
1600 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultRAT(GDALRasterBandH,
1601 GDALRasterAttributeTableH);
1602 CPLErr CPL_DLL CPL_STDCALL GDALAddDerivedBandPixelFunc(
1603 const char *pszName, GDALDerivedPixelFunc pfnPixelFunc);
1604 CPLErr CPL_DLL CPL_STDCALL GDALAddDerivedBandPixelFuncWithArgs(
1605 const char *pszName, GDALDerivedPixelFuncWithArgs pfnPixelFunc,
1606 const char *pszMetadata);
1607
1608 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetMaskBand(GDALRasterBandH hBand);
1609 int CPL_DLL CPL_STDCALL GDALGetMaskFlags(GDALRasterBandH hBand);
1610 CPLErr CPL_DLL CPL_STDCALL GDALCreateMaskBand(GDALRasterBandH hBand,
1611 int nFlags);
1612 bool CPL_DLL GDALIsMaskBand(GDALRasterBandH hBand);
1613
1615 #define GMF_ALL_VALID 0x01
1616
1618 #define GMF_PER_DATASET 0x02
1619
1621 #define GMF_ALPHA 0x04
1622
1624 #define GMF_NODATA 0x08
1625
1629 #define GDAL_DATA_COVERAGE_STATUS_UNIMPLEMENTED 0x01
1630
1635 #define GDAL_DATA_COVERAGE_STATUS_DATA 0x02
1636
1642 #define GDAL_DATA_COVERAGE_STATUS_EMPTY 0x04
1643
1644 int CPL_DLL CPL_STDCALL GDALGetDataCoverageStatus(GDALRasterBandH hBand,
1645 int nXOff, int nYOff,
1646 int nXSize, int nYSize,
1647 int nMaskFlagStop,
1648 double *pdfDataPct);
1649
1650 /* ==================================================================== */
1651 /* GDALAsyncReader */
1652 /* ==================================================================== */
1653
1654 GDALAsyncStatusType CPL_DLL CPL_STDCALL GDALARGetNextUpdatedRegion(
1655 GDALAsyncReaderH hARIO, double dfTimeout, int *pnXBufOff, int *pnYBufOff,
1656 int *pnXBufSize, int *pnYBufSize);
1657 int CPL_DLL CPL_STDCALL GDALARLockBuffer(GDALAsyncReaderH hARIO,
1658 double dfTimeout);
1659 void CPL_DLL CPL_STDCALL GDALARUnlockBuffer(GDALAsyncReaderH hARIO);
1660
1661 /* -------------------------------------------------------------------- */
1662 /* Helper functions. */
1663 /* -------------------------------------------------------------------- */
1664 int CPL_DLL CPL_STDCALL GDALGeneralCmdLineProcessor(int nArgc,
1665 char ***ppapszArgv,
1666 int nOptions);
1667 void CPL_DLL CPL_STDCALL GDALSwapWords(void *pData, int nWordSize,
1668 int nWordCount, int nWordSkip);
1669 void CPL_DLL CPL_STDCALL GDALSwapWordsEx(void *pData, int nWordSize,
1670 size_t nWordCount, int nWordSkip);
1671
1672 void CPL_DLL CPL_STDCALL GDALCopyWords(const void *CPL_RESTRICT pSrcData,
1673 GDALDataType eSrcType,
1674 int nSrcPixelOffset,
1675 void *CPL_RESTRICT pDstData,
1676 GDALDataType eDstType,
1677 int nDstPixelOffset, int nWordCount);
1678
1679 void CPL_DLL CPL_STDCALL GDALCopyWords64(
1680 const void *CPL_RESTRICT pSrcData, GDALDataType eSrcType,
1681 int nSrcPixelOffset, void *CPL_RESTRICT pDstData, GDALDataType eDstType,
1682 int nDstPixelOffset, GPtrDiff_t nWordCount);
1683
1684 void CPL_DLL GDALCopyBits(const GByte *pabySrcData, int nSrcOffset,
1685 int nSrcStep, GByte *pabyDstData, int nDstOffset,
1686 int nDstStep, int nBitCount, int nStepCount);
1687
1688 void CPL_DLL GDALDeinterleave(const void *pSourceBuffer, GDALDataType eSourceDT,
1689 int nComponents, void **ppDestBuffer,
1690 GDALDataType eDestDT, size_t nIters);
1691
1692 int CPL_DLL CPL_STDCALL GDALLoadWorldFile(const char *, double *);
1693 int CPL_DLL CPL_STDCALL GDALReadWorldFile(const char *, const char *, double *);
1694 int CPL_DLL CPL_STDCALL GDALWriteWorldFile(const char *, const char *,
1695 double *);
1696 int CPL_DLL CPL_STDCALL GDALLoadTabFile(const char *, double *, char **, int *,
1697 GDAL_GCP **);
1698 int CPL_DLL CPL_STDCALL GDALReadTabFile(const char *, double *, char **, int *,
1699 GDAL_GCP **);
1700 int CPL_DLL CPL_STDCALL GDALLoadOziMapFile(const char *, double *, char **,
1701 int *, GDAL_GCP **);
1702 int CPL_DLL CPL_STDCALL GDALReadOziMapFile(const char *, double *, char **,
1703 int *, GDAL_GCP **);
1704
1705 const char CPL_DLL *CPL_STDCALL GDALDecToDMS(double, const char *, int);
1706 double CPL_DLL CPL_STDCALL GDALPackedDMSToDec(double);
1707 double CPL_DLL CPL_STDCALL GDALDecToPackedDMS(double);
1708
1709 /* Note to developers : please keep this section in sync with ogr_core.h */
1710
1711 #ifndef GDAL_VERSION_INFO_DEFINED
1712 #ifndef DOXYGEN_SKIP
1713 #define GDAL_VERSION_INFO_DEFINED
1714 #endif
1715 const char CPL_DLL *CPL_STDCALL GDALVersionInfo(const char *);
1716 #endif
1717
1718 #ifndef GDAL_CHECK_VERSION
1719
1720 int CPL_DLL CPL_STDCALL GDALCheckVersion(int nVersionMajor, int nVersionMinor,
1721 const char *pszCallingComponentName);
1722
1726 #define GDAL_CHECK_VERSION(pszCallingComponentName) \
1727 GDALCheckVersion(GDAL_VERSION_MAJOR, GDAL_VERSION_MINOR, \
1728 pszCallingComponentName)
1729
1730 #endif
1731
1733 #ifdef GDAL_COMPILATION
1734 #define GDALExtractRPCInfoV1 GDALExtractRPCInfo
1735 #else
1736 #define GDALRPCInfo GDALRPCInfoV2
1737 #define GDALExtractRPCInfo GDALExtractRPCInfoV2
1738 #endif
1739
1740 /* Deprecated: use GDALRPCInfoV2 */
1741 typedef struct
1742 {
1743 double dfLINE_OFF;
1744 double dfSAMP_OFF;
1745 double dfLAT_OFF;
1746 double dfLONG_OFF;
1747 double dfHEIGHT_OFF;
1749 double dfLINE_SCALE;
1750 double dfSAMP_SCALE;
1751 double dfLAT_SCALE;
1752 double dfLONG_SCALE;
1753 double dfHEIGHT_SCALE;
1755 double adfLINE_NUM_COEFF[20];
1756 double adfLINE_DEN_COEFF[20];
1757 double adfSAMP_NUM_COEFF[20];
1758 double adfSAMP_DEN_COEFF[20];
1760 double dfMIN_LONG;
1761 double dfMIN_LAT;
1762 double dfMAX_LONG;
1763 double dfMAX_LAT;
1764 } GDALRPCInfoV1;
1769 typedef struct
1770 {
1771 double dfLINE_OFF;
1772 double dfSAMP_OFF;
1773 double dfLAT_OFF;
1774 double dfLONG_OFF;
1775 double dfHEIGHT_OFF;
1777 double dfLINE_SCALE;
1778 double dfSAMP_SCALE;
1779 double dfLAT_SCALE;
1780 double dfLONG_SCALE;
1781 double dfHEIGHT_SCALE;
1783 double adfLINE_NUM_COEFF[20];
1784 double adfLINE_DEN_COEFF[20];
1785 double adfSAMP_NUM_COEFF[20];
1786 double adfSAMP_DEN_COEFF[20];
1788 double dfMIN_LONG;
1789 double dfMIN_LAT;
1790 double dfMAX_LONG;
1791 double dfMAX_LAT;
1793 /* Those fields should be at the end. And all above fields should be the
1794 * same as in GDALRPCInfoV1 */
1795 double dfERR_BIAS;
1796 double dfERR_RAND;
1797 } GDALRPCInfoV2;
1798
1800 int CPL_DLL CPL_STDCALL GDALExtractRPCInfoV1(CSLConstList, GDALRPCInfoV1 *);
1802 int CPL_DLL CPL_STDCALL GDALExtractRPCInfoV2(CSLConstList, GDALRPCInfoV2 *);
1803
1804 /* ==================================================================== */
1805 /* Color tables. */
1806 /* ==================================================================== */
1807
1809 typedef struct
1810 {
1812 short c1;
1813
1815 short c2;
1816
1818 short c3;
1819
1821 short c4;
1822 } GDALColorEntry;
1823
1824 GDALColorTableH CPL_DLL CPL_STDCALL GDALCreateColorTable(GDALPaletteInterp)
1825 CPL_WARN_UNUSED_RESULT;
1826 void CPL_DLL CPL_STDCALL GDALDestroyColorTable(GDALColorTableH);
1827 GDALColorTableH CPL_DLL CPL_STDCALL GDALCloneColorTable(GDALColorTableH);
1828 GDALPaletteInterp
1829 CPL_DLL CPL_STDCALL GDALGetPaletteInterpretation(GDALColorTableH);
1830 int CPL_DLL CPL_STDCALL GDALGetColorEntryCount(GDALColorTableH);
1831 const GDALColorEntry CPL_DLL *CPL_STDCALL GDALGetColorEntry(GDALColorTableH,
1832 int);
1833 int CPL_DLL CPL_STDCALL GDALGetColorEntryAsRGB(GDALColorTableH, int,
1834 GDALColorEntry *);
1835 void CPL_DLL CPL_STDCALL GDALSetColorEntry(GDALColorTableH, int,
1836 const GDALColorEntry *);
1837 void CPL_DLL CPL_STDCALL GDALCreateColorRamp(GDALColorTableH hTable,
1838 int nStartIndex,
1839 const GDALColorEntry *psStartColor,
1840 int nEndIndex,
1841 const GDALColorEntry *psEndColor);
1842
1843 /* ==================================================================== */
1844 /* Raster Attribute Table */
1845 /* ==================================================================== */
1846
1848 typedef enum
1849 { GFT_Integer, GFT_Real, GFT_String
1853 } GDALRATFieldType;
1854
1856 typedef enum
1857 { 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
1877 } GDALRATFieldUsage;
1878
1882 typedef enum
1883 { GRTT_THEMATIC, GRTT_ATHEMATIC
1886 } GDALRATTableType;
1887
1888 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL
1889 GDALCreateRasterAttributeTable(void) CPL_WARN_UNUSED_RESULT;
1890
1891 void CPL_DLL CPL_STDCALL
1892 GDALDestroyRasterAttributeTable(GDALRasterAttributeTableH);
1893
1894 int CPL_DLL CPL_STDCALL GDALRATGetColumnCount(GDALRasterAttributeTableH);
1895
1896 const char CPL_DLL *CPL_STDCALL GDALRATGetNameOfCol(GDALRasterAttributeTableH,
1897 int);
1898 GDALRATFieldUsage CPL_DLL CPL_STDCALL
1899 GDALRATGetUsageOfCol(GDALRasterAttributeTableH, int);
1900 GDALRATFieldType CPL_DLL CPL_STDCALL
1901 GDALRATGetTypeOfCol(GDALRasterAttributeTableH, int);
1902
1903 int CPL_DLL CPL_STDCALL GDALRATGetColOfUsage(GDALRasterAttributeTableH,
1904 GDALRATFieldUsage);
1905 int CPL_DLL CPL_STDCALL GDALRATGetRowCount(GDALRasterAttributeTableH);
1906
1907 const char CPL_DLL *CPL_STDCALL
1908 GDALRATGetValueAsString(GDALRasterAttributeTableH, int, int);
1909 int CPL_DLL CPL_STDCALL GDALRATGetValueAsInt(GDALRasterAttributeTableH, int,
1910 int);
1911 double CPL_DLL CPL_STDCALL GDALRATGetValueAsDouble(GDALRasterAttributeTableH,
1912 int, int);
1913
1914 void CPL_DLL CPL_STDCALL GDALRATSetValueAsString(GDALRasterAttributeTableH, int,
1915 int, const char *);
1916 void CPL_DLL CPL_STDCALL GDALRATSetValueAsInt(GDALRasterAttributeTableH, int,
1917 int, int);
1918 void CPL_DLL CPL_STDCALL GDALRATSetValueAsDouble(GDALRasterAttributeTableH, int,
1919 int, double);
1920
1921 int CPL_DLL CPL_STDCALL
1922 GDALRATChangesAreWrittenToFile(GDALRasterAttributeTableH hRAT);
1923
1924 CPLErr CPL_DLL CPL_STDCALL GDALRATValuesIOAsDouble(
1925 GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag, int iField,
1926 int iStartRow, int iLength, double *pdfData);
1927 CPLErr CPL_DLL CPL_STDCALL
1928 GDALRATValuesIOAsInteger(GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag,
1929 int iField, int iStartRow, int iLength, int *pnData);
1930 CPLErr CPL_DLL CPL_STDCALL GDALRATValuesIOAsString(
1931 GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag, int iField,
1932 int iStartRow, int iLength, CSLConstList papszStrList);
1933
1934 void CPL_DLL CPL_STDCALL GDALRATSetRowCount(GDALRasterAttributeTableH, int);
1935 CPLErr CPL_DLL CPL_STDCALL GDALRATCreateColumn(GDALRasterAttributeTableH,
1936 const char *, GDALRATFieldType,
1937 GDALRATFieldUsage);
1938 CPLErr CPL_DLL CPL_STDCALL GDALRATSetLinearBinning(GDALRasterAttributeTableH,
1939 double, double);
1940 int CPL_DLL CPL_STDCALL GDALRATGetLinearBinning(GDALRasterAttributeTableH,
1941 double *, double *);
1942 CPLErr CPL_DLL CPL_STDCALL GDALRATSetTableType(
1943 GDALRasterAttributeTableH hRAT, const GDALRATTableType eInTableType);
1944 GDALRATTableType CPL_DLL CPL_STDCALL
1945 GDALRATGetTableType(GDALRasterAttributeTableH hRAT);
1946 CPLErr CPL_DLL CPL_STDCALL
1947 GDALRATInitializeFromColorTable(GDALRasterAttributeTableH, GDALColorTableH);
1948 GDALColorTableH CPL_DLL CPL_STDCALL
1949 GDALRATTranslateToColorTable(GDALRasterAttributeTableH, int nEntryCount);
1950 void CPL_DLL CPL_STDCALL GDALRATDumpReadable(GDALRasterAttributeTableH, FILE *);
1951 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL
1952 GDALRATClone(const GDALRasterAttributeTableH);
1953
1954 void CPL_DLL *CPL_STDCALL GDALRATSerializeJSON(GDALRasterAttributeTableH)
1955 CPL_WARN_UNUSED_RESULT;
1956
1957 int CPL_DLL CPL_STDCALL GDALRATGetRowOfValue(GDALRasterAttributeTableH, double);
1958 void CPL_DLL CPL_STDCALL GDALRATRemoveStatistics(GDALRasterAttributeTableH);
1959
1960 /* -------------------------------------------------------------------- */
1961 /* Relationships */
1962 /* -------------------------------------------------------------------- */
1963
1968 typedef enum
1969 {
1971 GRC_ONE_TO_ONE,
1973 GRC_ONE_TO_MANY,
1975 GRC_MANY_TO_ONE,
1977 GRC_MANY_TO_MANY,
1978 } GDALRelationshipCardinality;
1979
1984 typedef enum
1985 {
1987 GRT_COMPOSITE,
1989 GRT_ASSOCIATION,
1991 GRT_AGGREGATION,
1992 } GDALRelationshipType;
1993
1994 GDALRelationshipH CPL_DLL GDALRelationshipCreate(const char *, const char *,
1995 const char *,
1996 GDALRelationshipCardinality);
1997 void CPL_DLL CPL_STDCALL GDALDestroyRelationship(GDALRelationshipH);
1998 const char CPL_DLL *GDALRelationshipGetName(GDALRelationshipH);
1999 GDALRelationshipCardinality
2000 CPL_DLL GDALRelationshipGetCardinality(GDALRelationshipH);
2001 const char CPL_DLL *GDALRelationshipGetLeftTableName(GDALRelationshipH);
2002 const char CPL_DLL *GDALRelationshipGetRightTableName(GDALRelationshipH);
2003 const char CPL_DLL *GDALRelationshipGetMappingTableName(GDALRelationshipH);
2004 void CPL_DLL GDALRelationshipSetMappingTableName(GDALRelationshipH,
2005 const char *);
2006 char CPL_DLL **GDALRelationshipGetLeftTableFields(GDALRelationshipH);
2007 char CPL_DLL **GDALRelationshipGetRightTableFields(GDALRelationshipH);
2008 void CPL_DLL GDALRelationshipSetLeftTableFields(GDALRelationshipH,
2009 CSLConstList);
2010 void CPL_DLL GDALRelationshipSetRightTableFields(GDALRelationshipH,
2011 CSLConstList);
2012 char CPL_DLL **GDALRelationshipGetLeftMappingTableFields(GDALRelationshipH);
2013 char CPL_DLL **GDALRelationshipGetRightMappingTableFields(GDALRelationshipH);
2014 void CPL_DLL GDALRelationshipSetLeftMappingTableFields(GDALRelationshipH,
2015 CSLConstList);
2016 void CPL_DLL GDALRelationshipSetRightMappingTableFields(GDALRelationshipH,
2017 CSLConstList);
2018 GDALRelationshipType CPL_DLL GDALRelationshipGetType(GDALRelationshipH);
2019 void CPL_DLL GDALRelationshipSetType(GDALRelationshipH, GDALRelationshipType);
2020 const char CPL_DLL *GDALRelationshipGetForwardPathLabel(GDALRelationshipH);
2021 void CPL_DLL GDALRelationshipSetForwardPathLabel(GDALRelationshipH,
2022 const char *);
2023 const char CPL_DLL *GDALRelationshipGetBackwardPathLabel(GDALRelationshipH);
2024 void CPL_DLL GDALRelationshipSetBackwardPathLabel(GDALRelationshipH,
2025 const char *);
2026 const char CPL_DLL *GDALRelationshipGetRelatedTableType(GDALRelationshipH);
2027 void CPL_DLL GDALRelationshipSetRelatedTableType(GDALRelationshipH,
2028 const char *);
2029
2030 /* ==================================================================== */
2031 /* GDAL Cache Management */
2032 /* ==================================================================== */
2033
2034 void CPL_DLL CPL_STDCALL GDALSetCacheMax(int nBytes);
2035 int CPL_DLL CPL_STDCALL GDALGetCacheMax(void);
2036 int CPL_DLL CPL_STDCALL GDALGetCacheUsed(void);
2037 void CPL_DLL CPL_STDCALL GDALSetCacheMax64(GIntBig nBytes);
2038 GIntBig CPL_DLL CPL_STDCALL GDALGetCacheMax64(void);
2039 GIntBig CPL_DLL CPL_STDCALL GDALGetCacheUsed64(void);
2040
2041 int CPL_DLL CPL_STDCALL GDALFlushCacheBlock(void);
2042
2043 /* ==================================================================== */
2044 /* GDAL virtual memory */
2045 /* ==================================================================== */
2046
2047 CPLVirtualMem CPL_DLL *GDALDatasetGetVirtualMem(
2048 GDALDatasetH hDS, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize,
2049 int nYSize, int nBufXSize, int nBufYSize, GDALDataType eBufType,
2050 int nBandCount, int *panBandMap, int nPixelSpace, GIntBig nLineSpace,
2051 GIntBig nBandSpace, size_t nCacheSize, size_t nPageSizeHint,
2052 int bSingleThreadUsage, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2053
2054 CPLVirtualMem CPL_DLL *GDALRasterBandGetVirtualMem(
2055 GDALRasterBandH hBand, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize,
2056 int nYSize, int nBufXSize, int nBufYSize, GDALDataType eBufType,
2057 int nPixelSpace, GIntBig nLineSpace, size_t nCacheSize,
2058 size_t nPageSizeHint, int bSingleThreadUsage,
2059 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2060
2061 CPLVirtualMem CPL_DLL *
2062 GDALGetVirtualMemAuto(GDALRasterBandH hBand, GDALRWFlag eRWFlag,
2063 int *pnPixelSpace, GIntBig *pnLineSpace,
2064 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2065
2067 typedef enum
2068 {
2071 GTO_TIP,
2075 GTO_BIT,
2078 GTO_BSQ
2079 } GDALTileOrganization;
2080
2081 CPLVirtualMem CPL_DLL *GDALDatasetGetTiledVirtualMem(
2082 GDALDatasetH hDS, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize,
2083 int nYSize, int nTileXSize, int nTileYSize, GDALDataType eBufType,
2084 int nBandCount, int *panBandMap, GDALTileOrganization eTileOrganization,
2085 size_t nCacheSize, int bSingleThreadUsage,
2086 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2087
2088 CPLVirtualMem CPL_DLL *GDALRasterBandGetTiledVirtualMem(
2089 GDALRasterBandH hBand, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize,
2090 int nYSize, int nTileXSize, int nTileYSize, GDALDataType eBufType,
2091 size_t nCacheSize, int bSingleThreadUsage,
2092 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2093
2094 /* ==================================================================== */
2095 /* VRTPansharpenedDataset class. */
2096 /* ==================================================================== */
2097
2098 GDALDatasetH CPL_DLL GDALCreatePansharpenedVRT(
2099 const char *pszXML, GDALRasterBandH hPanchroBand, int nInputSpectralBands,
2100 GDALRasterBandH *pahInputSpectralBands) CPL_WARN_UNUSED_RESULT;
2101
2102 /* =================================================================== */
2103 /* Misc API */
2104 /* ==================================================================== */
2105
2106 CPLXMLNode CPL_DLL *
2107 GDALGetJPEG2000Structure(const char *pszFilename,
2108 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2109
2110 /* ==================================================================== */
2111 /* Multidimensional API_api */
2112 /* ==================================================================== */
2113
2114 GDALDatasetH CPL_DLL
2115 GDALCreateMultiDimensional(GDALDriverH hDriver, const char *pszName,
2116 CSLConstList papszRootGroupOptions,
2117 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2118
2119 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreate(GDALDataType eType)
2120 CPL_WARN_UNUSED_RESULT;
2121 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreateString(
2122 size_t nMaxStringLength) CPL_WARN_UNUSED_RESULT;
2123 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreateStringEx(
2124 size_t nMaxStringLength,
2125 GDALExtendedDataTypeSubType eSubType) CPL_WARN_UNUSED_RESULT;
2126 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreateCompound(
2127 const char *pszName, size_t nTotalSize, size_t nComponents,
2128 const GDALEDTComponentH *comps) CPL_WARN_UNUSED_RESULT;
2129 void CPL_DLL GDALExtendedDataTypeRelease(GDALExtendedDataTypeH hEDT);
2130 const char CPL_DLL *GDALExtendedDataTypeGetName(GDALExtendedDataTypeH hEDT);
2131 GDALExtendedDataTypeClass CPL_DLL
2132 GDALExtendedDataTypeGetClass(GDALExtendedDataTypeH hEDT);
2133 GDALDataType CPL_DLL
2134 GDALExtendedDataTypeGetNumericDataType(GDALExtendedDataTypeH hEDT);
2135 size_t CPL_DLL GDALExtendedDataTypeGetSize(GDALExtendedDataTypeH hEDT);
2136 size_t CPL_DLL
2137 GDALExtendedDataTypeGetMaxStringLength(GDALExtendedDataTypeH hEDT);
2138 GDALEDTComponentH CPL_DLL *
2139 GDALExtendedDataTypeGetComponents(GDALExtendedDataTypeH hEDT,
2140 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2141 void CPL_DLL GDALExtendedDataTypeFreeComponents(GDALEDTComponentH *components,
2142 size_t nCount);
2143 int CPL_DLL GDALExtendedDataTypeCanConvertTo(GDALExtendedDataTypeH hSourceEDT,
2144 GDALExtendedDataTypeH hTargetEDT);
2145 int CPL_DLL GDALExtendedDataTypeEquals(GDALExtendedDataTypeH hFirstEDT,
2146 GDALExtendedDataTypeH hSecondEDT);
2147 GDALExtendedDataTypeSubType CPL_DLL
2148 GDALExtendedDataTypeGetSubType(GDALExtendedDataTypeH hEDT);
2149
2150 GDALEDTComponentH CPL_DLL
2151 GDALEDTComponentCreate(const char *pszName, size_t nOffset,
2152 GDALExtendedDataTypeH hType) CPL_WARN_UNUSED_RESULT;
2153 void CPL_DLL GDALEDTComponentRelease(GDALEDTComponentH hComp);
2154 const char CPL_DLL *GDALEDTComponentGetName(GDALEDTComponentH hComp);
2155 size_t CPL_DLL GDALEDTComponentGetOffset(GDALEDTComponentH hComp);
2156 GDALExtendedDataTypeH CPL_DLL GDALEDTComponentGetType(GDALEDTComponentH hComp)
2157 CPL_WARN_UNUSED_RESULT;
2158
2159 GDALGroupH CPL_DLL GDALDatasetGetRootGroup(GDALDatasetH hDS)
2160 CPL_WARN_UNUSED_RESULT;
2161 void CPL_DLL GDALGroupRelease(GDALGroupH hGroup);
2162 const char CPL_DLL *GDALGroupGetName(GDALGroupH hGroup);
2163 const char CPL_DLL *GDALGroupGetFullName(GDALGroupH hGroup);
2164 char CPL_DLL **
2165 GDALGroupGetMDArrayNames(GDALGroupH hGroup,
2166 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2167 GDALMDArrayH CPL_DLL
2168 GDALGroupOpenMDArray(GDALGroupH hGroup, const char *pszMDArrayName,
2169 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2170 GDALMDArrayH CPL_DLL GDALGroupOpenMDArrayFromFullname(
2171 GDALGroupH hGroup, const char *pszMDArrayName,
2172 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2173 GDALMDArrayH CPL_DLL GDALGroupResolveMDArray(
2174 GDALGroupH hGroup, const char *pszName, const char *pszStartingPoint,
2175 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2176 char CPL_DLL **
2177 GDALGroupGetGroupNames(GDALGroupH hGroup,
2178 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2179 GDALGroupH CPL_DLL
2180 GDALGroupOpenGroup(GDALGroupH hGroup, const char *pszSubGroupName,
2181 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2182 GDALGroupH CPL_DLL GDALGroupOpenGroupFromFullname(
2183 GDALGroupH hGroup, const char *pszMDArrayName,
2184 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2185 char CPL_DLL **
2186 GDALGroupGetVectorLayerNames(GDALGroupH hGroup,
2187 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2188 OGRLayerH CPL_DLL
2189 GDALGroupOpenVectorLayer(GDALGroupH hGroup, const char *pszVectorLayerName,
2190 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2191 GDALDimensionH CPL_DLL *
2192 GDALGroupGetDimensions(GDALGroupH hGroup, size_t *pnCount,
2193 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2194 GDALAttributeH CPL_DLL GDALGroupGetAttribute(
2195 GDALGroupH hGroup, const char *pszName) CPL_WARN_UNUSED_RESULT;
2196 GDALAttributeH CPL_DLL *
2197 GDALGroupGetAttributes(GDALGroupH hGroup, size_t *pnCount,
2198 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2199 CSLConstList CPL_DLL GDALGroupGetStructuralInfo(GDALGroupH hGroup);
2200 GDALGroupH CPL_DLL
2201 GDALGroupCreateGroup(GDALGroupH hGroup, const char *pszSubGroupName,
2202 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2203 bool CPL_DLL GDALGroupDeleteGroup(GDALGroupH hGroup, const char *pszName,
2204 CSLConstList papszOptions);
2205 GDALDimensionH CPL_DLL GDALGroupCreateDimension(
2206 GDALGroupH hGroup, const char *pszName, const char *pszType,
2207 const char *pszDirection, GUInt64 nSize,
2208 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2209 GDALMDArrayH CPL_DLL GDALGroupCreateMDArray(
2210 GDALGroupH hGroup, const char *pszName, size_t nDimensions,
2211 GDALDimensionH *pahDimensions, GDALExtendedDataTypeH hEDT,
2212 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2213 bool CPL_DLL GDALGroupDeleteMDArray(GDALGroupH hGroup, const char *pszName,
2214 CSLConstList papszOptions);
2215 GDALAttributeH CPL_DLL GDALGroupCreateAttribute(
2216 GDALGroupH hGroup, const char *pszName, size_t nDimensions,
2217 const GUInt64 *panDimensions, GDALExtendedDataTypeH hEDT,
2218 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2219 bool CPL_DLL GDALGroupDeleteAttribute(GDALGroupH hGroup, const char *pszName,
2220 CSLConstList papszOptions);
2221 bool CPL_DLL GDALGroupRename(GDALGroupH hGroup, const char *pszNewName);
2222 GDALGroupH CPL_DLL GDALGroupSubsetDimensionFromSelection(
2223 GDALGroupH hGroup, const char *pszSelection, CSLConstList papszOptions);
2224
2225 void CPL_DLL GDALMDArrayRelease(GDALMDArrayH hMDArray);
2226 const char CPL_DLL *GDALMDArrayGetName(GDALMDArrayH hArray);
2227 const char CPL_DLL *GDALMDArrayGetFullName(GDALMDArrayH hArray);
2228 GUInt64 CPL_DLL GDALMDArrayGetTotalElementsCount(GDALMDArrayH hArray);
2229 size_t CPL_DLL GDALMDArrayGetDimensionCount(GDALMDArrayH hArray);
2230 GDALDimensionH CPL_DLL *
2231 GDALMDArrayGetDimensions(GDALMDArrayH hArray,
2232 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2233 GDALExtendedDataTypeH CPL_DLL GDALMDArrayGetDataType(GDALMDArrayH hArray)
2234 CPL_WARN_UNUSED_RESULT;
2235 int CPL_DLL GDALMDArrayRead(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx,
2236 const size_t *count, const GInt64 *arrayStep,
2237 const GPtrDiff_t *bufferStride,
2238 GDALExtendedDataTypeH bufferDatatype,
2239 void *pDstBuffer, const void *pDstBufferAllocStart,
2240 size_t nDstBufferllocSize);
2241 int CPL_DLL GDALMDArrayWrite(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx,
2242 const size_t *count, const GInt64 *arrayStep,
2243 const GPtrDiff_t *bufferStride,
2244 GDALExtendedDataTypeH bufferDatatype,
2245 const void *pSrcBuffer,
2246 const void *psrcBufferAllocStart,
2247 size_t nSrcBufferllocSize);
2248 int CPL_DLL GDALMDArrayAdviseRead(GDALMDArrayH hArray,
2249 const GUInt64 *arrayStartIdx,
2250 const size_t *count);
2251 int CPL_DLL GDALMDArrayAdviseReadEx(GDALMDArrayH hArray,
2252 const GUInt64 *arrayStartIdx,
2253 const size_t *count,
2254 CSLConstList papszOptions);
2255 GDALAttributeH CPL_DLL GDALMDArrayGetAttribute(
2256 GDALMDArrayH hArray, const char *pszName) CPL_WARN_UNUSED_RESULT;
2257 GDALAttributeH CPL_DLL *
2258 GDALMDArrayGetAttributes(GDALMDArrayH hArray, size_t *pnCount,
2259 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2260 GDALAttributeH CPL_DLL GDALMDArrayCreateAttribute(
2261 GDALMDArrayH hArray, const char *pszName, size_t nDimensions,
2262 const GUInt64 *panDimensions, GDALExtendedDataTypeH hEDT,
2263 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2264 bool CPL_DLL GDALMDArrayDeleteAttribute(GDALMDArrayH hArray,
2265 const char *pszName,
2266 CSLConstList papszOptions);
2267 bool CPL_DLL GDALMDArrayResize(GDALMDArrayH hArray,
2268 const GUInt64 *panNewDimSizes,
2269 CSLConstList papszOptions);
2270 const void CPL_DLL *GDALMDArrayGetRawNoDataValue(GDALMDArrayH hArray);
2271 double CPL_DLL GDALMDArrayGetNoDataValueAsDouble(GDALMDArrayH hArray,
2272 int *pbHasNoDataValue);
2273 int64_t CPL_DLL GDALMDArrayGetNoDataValueAsInt64(GDALMDArrayH hArray,
2274 int *pbHasNoDataValue);
2275 uint64_t CPL_DLL GDALMDArrayGetNoDataValueAsUInt64(GDALMDArrayH hArray,
2276 int *pbHasNoDataValue);
2277 int CPL_DLL GDALMDArraySetRawNoDataValue(GDALMDArrayH hArray, const void *);
2278 int CPL_DLL GDALMDArraySetNoDataValueAsDouble(GDALMDArrayH hArray,
2279 double dfNoDataValue);
2280 int CPL_DLL GDALMDArraySetNoDataValueAsInt64(GDALMDArrayH hArray,
2281 int64_t nNoDataValue);
2282 int CPL_DLL GDALMDArraySetNoDataValueAsUInt64(GDALMDArrayH hArray,
2283 uint64_t nNoDataValue);
2284 int CPL_DLL GDALMDArraySetScale(GDALMDArrayH hArray, double dfScale);
2285 int CPL_DLL GDALMDArraySetScaleEx(GDALMDArrayH hArray, double dfScale,
2286 GDALDataType eStorageType);
2287 double CPL_DLL GDALMDArrayGetScale(GDALMDArrayH hArray, int *pbHasValue);
2288 double CPL_DLL GDALMDArrayGetScaleEx(GDALMDArrayH hArray, int *pbHasValue,
2289 GDALDataType *peStorageType);
2290 int CPL_DLL GDALMDArraySetOffset(GDALMDArrayH hArray, double dfOffset);
2291 int CPL_DLL GDALMDArraySetOffsetEx(GDALMDArrayH hArray, double dfOffset,
2292 GDALDataType eStorageType);
2293 double CPL_DLL GDALMDArrayGetOffset(GDALMDArrayH hArray, int *pbHasValue);
2294 double CPL_DLL GDALMDArrayGetOffsetEx(GDALMDArrayH hArray, int *pbHasValue,
2295 GDALDataType *peStorageType);
2296 GUInt64 CPL_DLL *GDALMDArrayGetBlockSize(GDALMDArrayH hArray, size_t *pnCount);
2297 int CPL_DLL GDALMDArraySetUnit(GDALMDArrayH hArray, const char *);
2298 const char CPL_DLL *GDALMDArrayGetUnit(GDALMDArrayH hArray);
2299 int CPL_DLL GDALMDArraySetSpatialRef(GDALMDArrayH, OGRSpatialReferenceH);
2300 OGRSpatialReferenceH CPL_DLL GDALMDArrayGetSpatialRef(GDALMDArrayH hArray);
2301 size_t CPL_DLL *GDALMDArrayGetProcessingChunkSize(GDALMDArrayH hArray,
2302 size_t *pnCount,
2303 size_t nMaxChunkMemory);
2304 CSLConstList CPL_DLL GDALMDArrayGetStructuralInfo(GDALMDArrayH hArray);
2305 GDALMDArrayH CPL_DLL GDALMDArrayGetView(GDALMDArrayH hArray,
2306 const char *pszViewExpr);
2307 GDALMDArrayH CPL_DLL GDALMDArrayTranspose(GDALMDArrayH hArray,
2308 size_t nNewAxisCount,
2309 const int *panMapNewAxisToOldAxis);
2310 GDALMDArrayH CPL_DLL GDALMDArrayGetUnscaled(GDALMDArrayH hArray);
2311 GDALMDArrayH CPL_DLL GDALMDArrayGetMask(GDALMDArrayH hArray,
2312 CSLConstList papszOptions);
2313 GDALDatasetH CPL_DLL GDALMDArrayAsClassicDataset(GDALMDArrayH hArray,
2314 size_t iXDim, size_t iYDim);
2315 GDALDatasetH CPL_DLL GDALMDArrayAsClassicDatasetEx(GDALMDArrayH hArray,
2316 size_t iXDim, size_t iYDim,
2317 GDALGroupH hRootGroup,
2318 CSLConstList papszOptions);
2319 CPLErr CPL_DLL GDALMDArrayGetStatistics(
2320 GDALMDArrayH hArray, GDALDatasetH, int bApproxOK, int bForce,
2321 double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev,
2322 GUInt64 *pnValidCount, GDALProgressFunc pfnProgress, void *pProgressData);
2323 int CPL_DLL GDALMDArrayComputeStatistics(GDALMDArrayH hArray, GDALDatasetH,
2324 int bApproxOK, double *pdfMin,
2325 double *pdfMax, double *pdfMean,
2326 double *pdfStdDev,
2327 GUInt64 *pnValidCount,
2328 GDALProgressFunc, void *pProgressData);
2329 int CPL_DLL GDALMDArrayComputeStatisticsEx(
2330 GDALMDArrayH hArray, GDALDatasetH, int bApproxOK, double *pdfMin,
2331 double *pdfMax, double *pdfMean, double *pdfStdDev, GUInt64 *pnValidCount,
2332 GDALProgressFunc, void *pProgressData, CSLConstList papszOptions);
2333 GDALMDArrayH CPL_DLL GDALMDArrayGetResampled(GDALMDArrayH hArray,
2334 size_t nNewDimCount,
2335 const GDALDimensionH *pahNewDims,
2336 GDALRIOResampleAlg resampleAlg,
2337 OGRSpatialReferenceH hTargetSRS,
2338 CSLConstList papszOptions);
2339 GDALMDArrayH CPL_DLL GDALMDArrayGetGridded(
2340 GDALMDArrayH hArray, const char *pszGridOptions, GDALMDArrayH hXArray,
2341 GDALMDArrayH hYArray, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2342
2343 GDALMDArrayH CPL_DLL *
2344 GDALMDArrayGetCoordinateVariables(GDALMDArrayH hArray,
2345 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2346 void CPL_DLL GDALReleaseArrays(GDALMDArrayH *arrays, size_t nCount);
2347 int CPL_DLL GDALMDArrayCache(GDALMDArrayH hArray, CSLConstList papszOptions);
2348 bool CPL_DLL GDALMDArrayRename(GDALMDArrayH hArray, const char *pszNewName);
2349
2350 void CPL_DLL GDALAttributeRelease(GDALAttributeH hAttr);
2351 void CPL_DLL GDALReleaseAttributes(GDALAttributeH *attributes, size_t nCount);
2352 const char CPL_DLL *GDALAttributeGetName(GDALAttributeH hAttr);
2353 const char CPL_DLL *GDALAttributeGetFullName(GDALAttributeH hAttr);
2354 GUInt64 CPL_DLL GDALAttributeGetTotalElementsCount(GDALAttributeH hAttr);
2355 size_t CPL_DLL GDALAttributeGetDimensionCount(GDALAttributeH hAttr);
2356 GUInt64 CPL_DLL *
2357 GDALAttributeGetDimensionsSize(GDALAttributeH hAttr,
2358 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2359 GDALExtendedDataTypeH CPL_DLL GDALAttributeGetDataType(GDALAttributeH hAttr)
2360 CPL_WARN_UNUSED_RESULT;
2361 GByte CPL_DLL *GDALAttributeReadAsRaw(GDALAttributeH hAttr,
2362 size_t *pnSize) CPL_WARN_UNUSED_RESULT;
2363 void CPL_DLL GDALAttributeFreeRawResult(GDALAttributeH hAttr, GByte *raw,
2364 size_t nSize);
2365 const char CPL_DLL *GDALAttributeReadAsString(GDALAttributeH hAttr);
2366 int CPL_DLL GDALAttributeReadAsInt(GDALAttributeH hAttr);
2367 double CPL_DLL GDALAttributeReadAsDouble(GDALAttributeH hAttr);
2368 char CPL_DLL **
2369 GDALAttributeReadAsStringArray(GDALAttributeH hAttr) CPL_WARN_UNUSED_RESULT;
2370 int CPL_DLL *GDALAttributeReadAsIntArray(GDALAttributeH hAttr, size_t *pnCount)
2371 CPL_WARN_UNUSED_RESULT;
2372 double CPL_DLL *
2373 GDALAttributeReadAsDoubleArray(GDALAttributeH hAttr,
2374 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2375 int CPL_DLL GDALAttributeWriteRaw(GDALAttributeH hAttr, const void *, size_t);
2376 int CPL_DLL GDALAttributeWriteString(GDALAttributeH hAttr, const char *);
2377 int CPL_DLL GDALAttributeWriteStringArray(GDALAttributeH hAttr, CSLConstList);
2378 int CPL_DLL GDALAttributeWriteInt(GDALAttributeH hAttr, int);
2379 int CPL_DLL GDALAttributeWriteDouble(GDALAttributeH hAttr, double);
2380 int CPL_DLL GDALAttributeWriteDoubleArray(GDALAttributeH hAttr, const double *,
2381 size_t);
2382 bool CPL_DLL GDALAttributeRename(GDALAttributeH hAttr, const char *pszNewName);
2383
2384 void CPL_DLL GDALDimensionRelease(GDALDimensionH hDim);
2385 void CPL_DLL GDALReleaseDimensions(GDALDimensionH *dims, size_t nCount);
2386 const char CPL_DLL *GDALDimensionGetName(GDALDimensionH hDim);
2387 const char CPL_DLL *GDALDimensionGetFullName(GDALDimensionH hDim);
2388 const char CPL_DLL *GDALDimensionGetType(GDALDimensionH hDim);
2389 const char CPL_DLL *GDALDimensionGetDirection(GDALDimensionH hDim);
2390 GUInt64 CPL_DLL GDALDimensionGetSize(GDALDimensionH hDim);
2391 GDALMDArrayH CPL_DLL GDALDimensionGetIndexingVariable(GDALDimensionH hDim)
2392 CPL_WARN_UNUSED_RESULT;
2393 int CPL_DLL GDALDimensionSetIndexingVariable(GDALDimensionH hDim,
2394 GDALMDArrayH hArray);
2395 bool CPL_DLL GDALDimensionRename(GDALDimensionH hDim, const char *pszNewName);
2396
2397 CPL_C_END
2398
2399 #endif /* ndef GDAL_H_INCLUDED */
GCI_HueBand
@ GCI_HueBand
Definition: gdal.h:235
GDALGetAsyncStatusTypeByName
GDALAsyncStatusType GDALGetAsyncStatusTypeByName(const char *)
Get AsyncStatusType by symbolic name.
Definition: gdal_misc.cpp:931
GDALAttributeReadAsIntArray
int * GDALAttributeReadAsIntArray(GDALAttributeH hAttr, size_t *pnCount)
Return the value of an attribute as an array of integers.
Definition: gdalmultidim.cpp:12780
GDALGroupGetStructuralInfo
CSLConstList GDALGroupGetStructuralInfo(GDALGroupH hGroup)
Return structural information on the group.
Definition: gdalmultidim.cpp:11031
GDALCheckVersion
int GDALCheckVersion(int nVersionMajor, int nVersionMinor, const char *pszCallingComponentName)
Return TRUE if GDAL library version at runtime matches nVersionMajor.nVersionMinor.
Definition: gdal_misc.cpp:2529
GDALDimensionGetType
const char * GDALDimensionGetType(GDALDimensionH hDim)
Return dimension type.
Definition: gdalmultidim.cpp:13034
GDALRPCInfoV2::dfMIN_LONG
double dfMIN_LONG
Definition: gdal.h:1788
GDALMDArrayGetName
const char * GDALMDArrayGetName(GDALMDArrayH hArray)
Return array name.
Definition: gdalmultidim.cpp:11298
GDALRATInitializeFromColorTable
CPLErr GDALRATInitializeFromColorTable(GDALRasterAttributeTableH, GDALColorTableH)
Initialize from color table.
Definition: gdal_rat.cpp:984
GRC_ONE_TO_ONE
@ GRC_ONE_TO_ONE
One-to-one.
Definition: gdal.h:1971
GDALGroupDeleteMDArray
bool GDALGroupDeleteMDArray(GDALGroupH hGroup, const char *pszName, CSLConstList papszOptions)
Delete an array from a group.
Definition: gdalmultidim.cpp:11169
GDALRATTableType
GDALRATTableType
RAT table type (thematic or athematic)
Definition: gdal.h:1882
GDAL_GCP::pszId
char * pszId
Unique identifier, often numeric.
Definition: gdal.h:1054
GDALMDArrayH
struct GDALMDArrayHS * GDALMDArrayH
Opaque type for C++ GDALMDArray.
Definition: gdal.h:348
GDALVersionInfo
const char * GDALVersionInfo(const char *)
Get runtime version information.
Definition: gdal_misc.cpp:2362
GDALMDArrayGetOffsetEx
double GDALMDArrayGetOffsetEx(GDALMDArrayH hArray, int *pbHasValue, GDALDataType *peStorageType)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:11997
GDALRPCInfoV2::dfSAMP_SCALE
double dfSAMP_SCALE
Definition: gdal.h:1778
GRC_MANY_TO_ONE
@ GRC_MANY_TO_ONE
Many-to-one.
Definition: gdal.h:1975
GDALExtendedDataTypeGetSubType
GDALExtendedDataTypeSubType GDALExtendedDataTypeGetSubType(GDALExtendedDataTypeH hEDT)
Return the subtype of a type.
Definition: gdalmultidim.cpp:10534
GDT_Int32
@ GDT_Int32
Definition: gdal.h:71
GDALRenameDataset
CPLErr GDALRenameDataset(GDALDriverH, const char *pszNewName, const char *pszOldName)
Rename a dataset.
Definition: gdaldriver.cpp:1810
GDALRelationshipGetBackwardPathLabel
const char * GDALRelationshipGetBackwardPathLabel(GDALRelationshipH)
Get the label of the backward path for the relationship.
Definition: gdalrelationship.cpp:608
GDALDatasetRasterIO
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:2739
GDALAttributeReadAsRaw
GByte * GDALAttributeReadAsRaw(GDALAttributeH hAttr, size_t *pnSize)
Return the raw value of an attribute.
Definition: gdalmultidim.cpp:12649
GDALMDArrayDeleteAttribute
bool GDALMDArrayDeleteAttribute(GDALMDArrayH hArray, const char *pszName, CSLConstList papszOptions)
Delete an attribute from an array.
Definition: gdalmultidim.cpp:11615
GDALRasterAttributeTableH
void * GDALRasterAttributeTableH
Opaque type used for the C bindings of the C++ GDALRasterAttributeTable class.
Definition: gdal.h:304
GDALGetDataTypeSizeBytes
int GDALGetDataTypeSizeBytes(GDALDataType)
Get data type size in bytes.
Definition: gdal_misc.cpp:336
GDALGetRasterScale
double GDALGetRasterScale(GDALRasterBandH, int *pbSuccess)
Fetch the raster value scale.
Definition: gdalrasterband.cpp:2965
GDALGetDriverShortName
const char * GDALGetDriverShortName(GDALDriverH)
Return the short name of a driver.
Definition: gdaldriver.cpp:1970
GDALRATValuesIOAsDouble
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:160
GDALDatasetSetQueryLoggerFunc
bool GDALDatasetSetQueryLoggerFunc(GDALDatasetH hDS, GDALQueryLoggerFunc pfnQueryLoggerFunc, void *poQueryLoggerArg)
Sets the SQL query logger callback.
Definition: gdaldataset.cpp:9236
GDALAdjustValueToDataType
double GDALAdjustValueToDataType(GDALDataType eDT, double dfValue, int *pbClamped, int *pbRounded)
Adjust a value to the output data type.
Definition: gdal_misc.cpp:795
GDALGetDriverCreationOptionList
const char * GDALGetDriverCreationOptionList(GDALDriverH)
Return the list of creation options of the driver.
Definition: gdaldriver.cpp:2046
GDALMDArrayAdviseReadEx
int GDALMDArrayAdviseReadEx(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count, CSLConstList papszOptions)
Advise driver of upcoming read requests.
Definition: gdalmultidim.cpp:11507
GDALEDTComponentGetName
const char * GDALEDTComponentGetName(GDALEDTComponentH hComp)
Return the name.
Definition: gdalmultidim.cpp:10636
GDALGetRasterSampleOverview
GDALRasterBandH GDALGetRasterSampleOverview(GDALRasterBandH, int)
Fetch best sampling overview.
Definition: gdalrasterband.cpp:2730
GByte
unsigned char GByte
Unsigned byte type.
Definition: cpl_port.h:196
GDALGetDefaultHistogramEx
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:4157
GDALDuplicateGCPs
GDAL_GCP * GDALDuplicateGCPs(int, const GDAL_GCP *)
Duplicate an array of GCPs.
Definition: gdal_misc.cpp:1415
GDALAttributeH
struct GDALAttributeHS * GDALAttributeH
Opaque type for C++ GDALAttribute.
Definition: gdal.h:350
GUInt64
GUIntBig GUInt64
Unsigned 64 bit integer type.
Definition: cpl_port.h:249
GDT_UInt64
@ GDT_UInt64
Definition: gdal.h:72
GDALGeneralCmdLineProcessor
int GDALGeneralCmdLineProcessor(int nArgc, char ***ppapszArgv, int nOptions)
General utility option processing.
Definition: gdal_misc.cpp:3062
GDALRPCInfoV2::dfLONG_OFF
double dfLONG_OFF
Definition: gdal.h:1774
GDALMDArrayGetSpatialRef
OGRSpatialReferenceH GDALMDArrayGetSpatialRef(GDALMDArrayH hArray)
Return the spatial reference system object associated with the array.
Definition: gdalmultidim.cpp:12312
GDALRegisterPlugins
void GDALRegisterPlugins(void)
Register drivers and support code available as a plugin.
Definition: gdalallregister.cpp:89
GDALRelationshipGetType
GDALRelationshipType GDALRelationshipGetType(GDALRelationshipH)
Get the type of the relationship.
Definition: gdalrelationship.cpp:492
GCI_GreenBand
@ GCI_GreenBand
Definition: gdal.h:232
GTO_TIP
@ GTO_TIP
Definition: gdal.h:2071
GDALRPCInfoV2::dfMIN_LAT
double dfMIN_LAT
Definition: gdal.h:1789
GDALRasterIOExtraArg::bFloatingPointWindowValidity
int bFloatingPointWindowValidity
Definition: gdal.h:193
GDALRasterIOEx
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:462
GDALFlushCacheBlock
int GDALFlushCacheBlock(void)
Try to flush one cached raster block.
Definition: gdalrasterblock.cpp:372
GDALAttributeWriteString
int GDALAttributeWriteString(GDALAttributeH hAttr, const char *)
Write an attribute from a string value.
Definition: gdalmultidim.cpp:12865
GDALDimensionRename
bool GDALDimensionRename(GDALDimensionH hDim, const char *pszNewName)
Rename the dimension.
Definition: gdalmultidim.cpp:13125
GDT_Float32
@ GDT_Float32
Definition: gdal.h:74
GDALDatasetDeleteFieldDomain
bool GDALDatasetDeleteFieldDomain(GDALDatasetH hDS, const char *pszName, char **ppszFailureReason)
Removes a field domain from the dataset.
Definition: gdaldataset.cpp:8809
GDALGetMetadataDomainList
char ** GDALGetMetadataDomainList(GDALMajorObjectH hObject)
Fetch list of metadata domains.
Definition: gdalmajorobject.cpp:217
GDALDimensionGetFullName
const char * GDALDimensionGetFullName(GDALDimensionH hDim)
Return dimension full name.
Definition: gdalmultidim.cpp:13020
GDALRATGetRowOfValue
int GDALRATGetRowOfValue(GDALRasterAttributeTableH, double)
Get row for pixel value.
Definition: gdal_rat.cpp:381
cpl_error.h
GRC_MANY_TO_MANY
@ GRC_MANY_TO_MANY
Many-to-many.
Definition: gdal.h:1977
GDALGetRasterCategoryNames
char ** GDALGetRasterCategoryNames(GDALRasterBandH)
Fetch the list of category names for this raster.
Definition: gdalrasterband.cpp:1638
GDALGetColorInterpretationName
const char * GDALGetColorInterpretationName(GDALColorInterp)
Get name of color interpretation.
Definition: gdal_misc.cpp:1045
GDALRegisterPlugin
CPLErr GDALRegisterPlugin(const char *name)
Register a plugin by name, returning an error if not found.
Definition: gdalallregister.cpp:62
GDALDimensionGetIndexingVariable
GDALMDArrayH GDALDimensionGetIndexingVariable(GDALDimensionH hDim)
Return the variable that is used to index the dimension (if there is one).
Definition: gdalmultidim.cpp:13081
GDALARLockBuffer
int GDALARLockBuffer(GDALAsyncReaderH hARIO, double dfTimeout)
Lock image buffer.
Definition: gdaldefaultasync.cpp:220
GDALRelationshipGetMappingTableName
const char * GDALRelationshipGetMappingTableName(GDALRelationshipH)
Get the name of the mapping table for many-to-many relationships.
Definition: gdalrelationship.cpp:190
GDALGroupRename
bool GDALGroupRename(GDALGroupH hGroup, const char *pszNewName)
Rename the group.
Definition: gdalmultidim.cpp:11244
GDALGetJPEG2000Structure
CPLXMLNode * GDALGetJPEG2000Structure(const char *pszFilename, CSLConstList papszOptions)
Dump the structure of a JPEG2000 file as a XML tree.
Definition: gdaljp2structure.cpp:2362
GDAL_GCP::dfGCPX
double dfGCPX
X position of GCP in georeferenced space.
Definition: gdal.h:1065
GDALRPCInfoV2::dfLINE_SCALE
double dfLINE_SCALE
Definition: gdal.h:1777
GDALOpenEx
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:3467
GFU_GreenMax
@ GFU_GreenMax
Definition: gdal.h:1873
GDALGroupGetGroupNames
char ** GDALGroupGetGroupNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of sub-groups contained in this group.
Definition: gdalmultidim.cpp:10819
GDALRelationshipSetRelatedTableType
void GDALRelationshipSetRelatedTableType(GDALRelationshipH, const char *)
Sets the type string of the related table.
Definition: gdalrelationship.cpp:699
cpl_virtualmem.h
GDALMDArraySetNoDataValueAsDouble
int GDALMDArraySetNoDataValueAsDouble(GDALMDArrayH hArray, double dfNoDataValue)
Set the nodata value as a double.
Definition: gdalmultidim.cpp:11759
GDALMDArrayGetStructuralInfo
CSLConstList GDALMDArrayGetStructuralInfo(GDALMDArrayH hArray)
Return structural information on the array.
Definition: gdalmultidim.cpp:12099
GDALDatasetSetStyleTableDirectly
void GDALDatasetSetStyleTableDirectly(GDALDatasetH, OGRStyleTableH)
Set dataset style table.
Definition: gdaldataset.cpp:5040
GDALRATClone
GDALRasterAttributeTableH GDALRATClone(const GDALRasterAttributeTableH)
Copy Raster Attribute Table.
Definition: gdal_rat.cpp:2173
GDALDatasetReadCompressedData
CPLErr GDALDatasetReadCompressedData(GDALDatasetH hDS, const char *pszFormat, int nXOff, int nYOff, int nXSize, int nYSize, int nBandCount, const int *panBandList, void **ppBuffer, size_t *pnBufferSize, char **ppszDetailedFormat)
Return the compressed content that can be natively obtained for the window of interest and requested ...
Definition: gdaldataset.cpp:9683
GDALGroupCreateAttribute
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:11187
GDALDeinitGCPs
void GDALDeinitGCPs(int, GDAL_GCP *)
De-initialize an array of GCPs (initialized with GDALInitGCPs())
Definition: gdal_misc.cpp:1388
GDALDatasetUpdateFieldDomain
bool GDALDatasetUpdateFieldDomain(GDALDatasetH hDS, OGRFieldDomainH hFieldDomain, char **ppszFailureReason)
Updates an existing field domain by replacing its definition.
Definition: gdaldataset.cpp:8882
GDALFindDataType
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:248
GEDTC_STRING
@ GEDTC_STRING
String value.
Definition: gdal.h:325
GDALGetRandomRasterSample
int GDALGetRandomRasterSample(GDALRasterBandH, int, float *)
Undocumented.
Definition: gdal_misc.cpp:1153
GDALSetRasterNoDataValueAsUInt64
CPLErr GDALSetRasterNoDataValueAsUInt64(GDALRasterBandH, uint64_t)
Set the no data value for this band.
Definition: gdalrasterband.cpp:2087
GDALRATValuesIOAsInteger
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:224
GDALGetRasterHistogramEx
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:3957
GDALMDArrayComputeStatisticsEx
int GDALMDArrayComputeStatisticsEx(GDALMDArrayH hArray, GDALDatasetH, int bApproxOK, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GUInt64 *pnValidCount, GDALProgressFunc, void *pProgressData, CSLConstList papszOptions)
Compute statistics.
Definition: gdalmultidim.cpp:12384
GFU_MinMax
@ GFU_MinMax
Definition: gdal.h:1863
GEDTC_NUMERIC
@ GEDTC_NUMERIC
Numeric value.
Definition: gdal.h:323
GCI_Max
@ GCI_Max
Definition: gdal.h:245
GDT_Unknown
@ GDT_Unknown
Definition: gdal.h:65
GDALMDArraySetOffsetEx
int GDALMDArraySetOffsetEx(GDALMDArrayH hArray, double dfOffset, GDALDataType eStorageType)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:11909
GDALExtendedDataTypeGetName
const char * GDALExtendedDataTypeGetName(GDALExtendedDataTypeH hEDT)
Return type name.
Definition: gdalmultidim.cpp:10416
GDALRATGetValueAsDouble
double GDALRATGetValueAsDouble(GDALRasterAttributeTableH, int, int)
Fetch field value as a double.
Definition: gdal_rat.cpp:1622
GRIORA_Cubic
@ GRIORA_Cubic
Definition: gdal.h:146
GDALRPCInfoV2::dfLAT_SCALE
double dfLAT_SCALE
Definition: gdal.h:1779
GDALSetMetadataItem
CPLErr GDALSetMetadataItem(GDALMajorObjectH, const char *, const char *, const char *)
Set single metadata item.
Definition: gdalmajorobject.cpp:411
GDT_Int8
@ GDT_Int8
Definition: gdal.h:67
GDALCopyDatasetFiles
CPLErr GDALCopyDatasetFiles(GDALDriverH, const char *pszNewName, const char *pszOldName)
Copy the files of a dataset.
Definition: gdaldriver.cpp:1935
GDAL_GCP::dfGCPLine
double dfGCPLine
Line (y) location of GCP on raster.
Definition: gdal.h:1062
GCI_GrayIndex
@ GCI_GrayIndex
Definition: gdal.h:229
GDALGetPaletteInterpretation
GDALPaletteInterp GDALGetPaletteInterpretation(GDALColorTableH)
Fetch palette interpretation.
Definition: gdalcolortable.cpp:353
GDALMDArrayComputeStatistics
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:12357
GDALGetCacheUsed64
GIntBig GDALGetCacheUsed64(void)
Get cache memory used.
Definition: gdalrasterblock.cpp:352
GRT_ASSOCIATION
@ GRT_ASSOCIATION
Association relationship.
Definition: gdal.h:1989
GDALOverviewMagnitudeCorrection
CPLErr GDALOverviewMagnitudeCorrection(GDALRasterBandH hBaseBand, int nOverviewCount, GDALRasterBandH *pahOverviews, GDALProgressFunc pfnProgress, void *pProgressData)
Undocumented.
Definition: overview.cpp:5779
GDALRATGetUsageOfCol
GDALRATFieldUsage GDALRATGetUsageOfCol(GDALRasterAttributeTableH, int)
Fetch column usage value.
Definition: gdal_rat.cpp:1333
GDALRATGetTypeOfCol
GDALRATFieldType GDALRATGetTypeOfCol(GDALRasterAttributeTableH, int)
Fetch column type.
Definition: gdal_rat.cpp:1373
GDALRelationshipGetLeftTableName
const char * GDALRelationshipGetLeftTableName(GDALRelationshipH)
Get the name of the left (or base/origin) table in the relationship.
Definition: gdalrelationship.cpp:143
GDALMDArrayAsClassicDatasetEx
GDALDatasetH GDALMDArrayAsClassicDatasetEx(GDALMDArrayH hArray, size_t iXDim, size_t iYDim, GDALGroupH hRootGroup, CSLConstList papszOptions)
Return a view of this array as a "classic" GDALDataset (ie 2D)
Definition: gdalmultidim.cpp:13234
cpl_minixml.h
GDALSetColorEntry
void GDALSetColorEntry(GDALColorTableH, int, const GDALColorEntry *)
Set entry in color table.
Definition: gdalcolortable.cpp:242
GDALTileOrganization
GDALTileOrganization
! Enumeration to describe the tile organization
Definition: gdal.h:2067
GDALRPCInfoV2::dfERR_RAND
double dfERR_RAND
Definition: gdal.h:1796
GDALMDArraySetOffset
int GDALMDArraySetOffset(GDALMDArrayH hArray, double dfOffset)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:11890
GFU_Red
@ GFU_Red
Definition: gdal.h:1864
GRIORA_Lanczos
@ GRIORA_Lanczos
Definition: gdal.h:148
GDALReadWorldFile
int GDALReadWorldFile(const char *, const char *, double *)
Read ESRI world file.
Definition: gdal_misc.cpp:2133
GDALColorTableH
void * GDALColorTableH
Opaque type used for the C bindings of the C++ GDALColorTable class.
Definition: gdal.h:300
GDALSetRasterCategoryNames
CPLErr GDALSetRasterCategoryNames(GDALRasterBandH, CSLConstList)
Set the category names for this band.
Definition: gdalrasterband.cpp:1689
GDALGroupGetMDArrayNames
char ** GDALGroupGetMDArrayNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of multidimensional array names contained in this group.
Definition: gdalmultidim.cpp:10727
GDT_UInt32
@ GDT_UInt32
Definition: gdal.h:70
GDALRPCInfoV2::dfHEIGHT_OFF
double dfHEIGHT_OFF
Definition: gdal.h:1775
GDALGetCacheMax
int GDALGetCacheMax(void)
Get maximum cache memory.
Definition: gdalrasterblock.cpp:199
GDALRPCInfoV2::dfHEIGHT_SCALE
double dfHEIGHT_SCALE
Definition: gdal.h:1781
GDT_CFloat64
@ GDT_CFloat64
Definition: gdal.h:80
GDALGetOpenDatasets
void GDALGetOpenDatasets(GDALDatasetH **hDS, int *pnCount)
Fetch all open GDAL dataset handles.
Definition: gdaldataset.cpp:2834
GDALDatasetStartTransaction
OGRErr GDALDatasetStartTransaction(GDALDatasetH hDS, int bForce)
For datasources which support transactions, StartTransaction creates a transaction.
Definition: gdaldataset.cpp:7583
GDT_CInt32
@ GDT_CInt32
Definition: gdal.h:77
GDALDatasetCopyWholeRaster
CPLErr GDALDatasetCopyWholeRaster(GDALDatasetH hSrcDS, GDALDatasetH hDstDS, CSLConstList papszOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Copy all dataset raster data.
Definition: rasterio.cpp:4550
GDALGetRasterBand
GDALRasterBandH GDALGetRasterBand(GDALDatasetH, int)
Fetch a band object for a dataset.
Definition: gdaldataset.cpp:982
GDALGetGCPs
const GDAL_GCP * GDALGetGCPs(GDALDatasetH)
Fetch GCPs.
Definition: gdaldataset.cpp:1822
GDALGetNonComplexDataType
GDALDataType GDALGetNonComplexDataType(GDALDataType)
Return the base data type for the specified input.
Definition: gdal_misc.cpp:885
GDALDestroyRasterAttributeTable
void GDALDestroyRasterAttributeTable(GDALRasterAttributeTableH)
Destroys a RAT.
Definition: gdal_rat.cpp:1205
GDALMDArrayGetDimensionCount
size_t GDALMDArrayGetDimensionCount(GDALMDArrayH hArray)
Return the number of dimensions.
Definition: gdalmultidim.cpp:11341
GDALSwapWordsEx
void GDALSwapWordsEx(void *pData, int nWordSize, size_t nWordCount, int nWordSkip)
Byte swap words in-place.
Definition: rasterio.cpp:2074
GDALGetBlockSize
void GDALGetBlockSize(GDALRasterBandH, int *pnXSize, int *pnYSize)
Fetch the "natural" block size of this band.
Definition: gdalrasterband.cpp:982
GDALColorEntry::c4
short c4
Definition: gdal.h:1821
GCI_PaletteIndex
@ GCI_PaletteIndex
Definition: gdal.h:230
GDALDatasetDeleteRelationship
bool GDALDatasetDeleteRelationship(GDALDatasetH hDS, const char *pszName, char **ppszFailureReason)
Removes a relationship from the dataset.
Definition: gdaldataset.cpp:9126
GDALColorEntry
Color tuple.
Definition: gdal.h:1809
GDALGroupOpenGroupFromFullname
GDALGroupH GDALGroupOpenGroupFromFullname(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a sub-group from its fully qualified name.
Definition: gdalmultidim.cpp:10914
GDALGetFileList
char ** GDALGetFileList(GDALDatasetH)
Fetch files forming dataset.
Definition: gdaldataset.cpp:3197
GTO_BSQ
@ GTO_BSQ
Definition: gdal.h:2078
GDALGetRasterAccess
GDALAccess GDALGetRasterAccess(GDALRasterBandH)
Find out if we have update permission for this band.
Definition: gdalrasterband.cpp:1592
GDALColorInterp
GDALColorInterp
Definition: gdal.h:226
GDALDatasetUpdateRelationship
bool GDALDatasetUpdateRelationship(GDALDatasetH hDS, GDALRelationshipH hRelationship, char **ppszFailureReason)
Updates an existing relationship by replacing its definition.
Definition: gdaldataset.cpp:9197
GFT_Real
@ GFT_Real
Definition: gdal.h:1851
GFU_Max
@ GFU_Max
Definition: gdal.h:1862
GDALMDArrayCreateAttribute
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:11580
GRT_AGGREGATION
@ GRT_AGGREGATION
Aggregation relationship.
Definition: gdal.h:1991
GDALInitGCPs
void GDALInitGCPs(int, GDAL_GCP *)
Initialize an array of GCPs.
Definition: gdal_misc.cpp:1362
GDALGetMetadata
char ** GDALGetMetadata(GDALMajorObjectH, const char *)
Fetch metadata.
Definition: gdalmajorobject.cpp:263
GDALGetOverviewCount
int GDALGetOverviewCount(GDALRasterBandH)
Return the number of overview layers available.
Definition: gdalrasterband.cpp:2614
GF_Read
@ GF_Read
Definition: gdal.h:133
GTO_BIT
@ GTO_BIT
Definition: gdal.h:2075
GDALDeleteRasterNoDataValue
CPLErr GDALDeleteRasterNoDataValue(GDALRasterBandH)
Remove the no data value for this band.
Definition: gdalrasterband.cpp:2135
GDALARUnlockBuffer
void GDALARUnlockBuffer(GDALAsyncReaderH hARIO)
Unlock image buffer.
Definition: gdaldefaultasync.cpp:255
GDALMDArrayGetStatistics
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:12331
GDALDimensionGetSize
GUInt64 GDALDimensionGetSize(GDALDimensionH hDim)
Return the size, that is the number of values along the dimension.
Definition: gdalmultidim.cpp:13062
GDALSetRasterStatistics
CPLErr GDALSetRasterStatistics(GDALRasterBandH hBand, double dfMin, double dfMax, double dfMean, double dfStdDev)
Set statistics on band.
Definition: gdalrasterband.cpp:6206
GInt64
GIntBig GInt64
Signed 64 bit integer type.
Definition: cpl_port.h:247
GDALGroupRelease
void GDALGroupRelease(GDALGroupH hGroup)
Release the GDAL in-memory object associated with a GDALGroupH.
Definition: gdalmultidim.cpp:10680
GDALGetDataTypeSizeBits
int GDALGetDataTypeSizeBits(GDALDataType eDataType)
Get data type size in bits.
Definition: gdal_misc.cpp:386
GDALExtendedDataTypeCanConvertTo
int GDALExtendedDataTypeCanConvertTo(GDALExtendedDataTypeH hSourceEDT, GDALExtendedDataTypeH hTargetEDT)
Return whether this data type can be converted to the other one.
Definition: gdalmultidim.cpp:10493
GDALRasterBandCopyWholeRaster
CPLErr GDALRasterBandCopyWholeRaster(GDALRasterBandH hSrcBand, GDALRasterBandH hDstBand, const char *const *constpapszOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Copy a whole raster band.
Definition: rasterio.cpp:4877
GDALLoadWorldFile
int GDALLoadWorldFile(const char *, double *)
Read ESRI world file.
Definition: gdal_misc.cpp:2038
GDALDereferenceDataset
int GDALDereferenceDataset(GDALDatasetH)
Subtract one from dataset reference count.
Definition: gdaldataset.cpp:1508
GPtrDiff_t
int GPtrDiff_t
Integer type large enough to hold the difference between 2 addresses.
Definition: cpl_port.h:267
GDALGroupOpenGroup
GDALGroupH GDALGroupOpenGroup(GDALGroupH hGroup, const char *pszSubGroupName, CSLConstList papszOptions)
Open and return a sub-group.
Definition: gdalmultidim.cpp:10841
GDALDestroyDriver
void GDALDestroyDriver(GDALDriverH)
Destroy a GDALDriver.
Definition: gdaldriver.cpp:96
GCI_SaturationBand
@ GCI_SaturationBand
Definition: gdal.h:236
GDALRelationshipGetForwardPathLabel
const char * GDALRelationshipGetForwardPathLabel(GDALRelationshipH)
Get the label of the forward path for the relationship.
Definition: gdalrelationship.cpp:540
GDALClose
CPLErr GDALClose(GDALDatasetH)
Close GDAL dataset.
Definition: gdaldataset.cpp:3882
GDALOpen
GDALDatasetH GDALOpen(const char *pszFilename, GDALAccess eAccess)
Open a raster file as a GDALDataset.
Definition: gdaldataset.cpp:3325
GDALExtendedDataTypeClass
GDALExtendedDataTypeClass
Enumeration giving the class of a GDALExtendedDataType.
Definition: gdal.h:320
GDALAttributeReadAsDouble
double GDALAttributeReadAsDouble(GDALAttributeH hAttr)
Return the value of an attribute as a double.
Definition: gdalmultidim.cpp:12746
GCI_YCbCr_YBand
@ GCI_YCbCr_YBand
Definition: gdal.h:242
GDALMDArrayGetResampled
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:12213
GDALRPCInfoV2::dfSAMP_OFF
double dfSAMP_OFF
Definition: gdal.h:1772
GDALMDArrayAsClassicDataset
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:13203
GDALGetColorInterpretationByName
GDALColorInterp GDALGetColorInterpretationByName(const char *pszName)
Get color interpretation by symbolic name.
Definition: gdal_misc.cpp:1124
GCI_CyanBand
@ GCI_CyanBand
Definition: gdal.h:238
GDALAttributeReadAsInt
int GDALAttributeReadAsInt(GDALAttributeH hAttr)
Return the value of an attribute as a integer.
Definition: gdalmultidim.cpp:12726
GDALARGetNextUpdatedRegion
GDALAsyncStatusType GDALARGetNextUpdatedRegion(GDALAsyncReaderH hARIO, double dfTimeout, int *pnXBufOff, int *pnYBufOff, int *pnXBufSize, int *pnYBufSize)
Get async IO update.
Definition: gdaldefaultasync.cpp:161
GDALReadOziMapFile
int GDALReadOziMapFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for OZI .map.
Definition: gdal_misc.cpp:1739
GDALCreateMaskBand
CPLErr GDALCreateMaskBand(GDALRasterBandH hBand, int nFlags)
Adds a mask band to the current band.
Definition: gdalrasterband.cpp:7488
GDALDataType
GDALDataType
Definition: gdal.h:63
CPLXMLNode
Document node structure.
Definition: cpl_minixml.h:69
GDALMDArrayGetTotalElementsCount
GUInt64 GDALMDArrayGetTotalElementsCount(GDALMDArrayH hArray)
Return the total number of values in the array.
Definition: gdalmultidim.cpp:11327
GDALDatasetAddFieldDomain
bool GDALDatasetAddFieldDomain(GDALDatasetH hDS, OGRFieldDomainH hFieldDomain, char **ppszFailureReason)
Add a field domain to the dataset.
Definition: gdaldataset.cpp:8732
GRTT_ATHEMATIC
@ GRTT_ATHEMATIC
Definition: gdal.h:1885
GDALCloneColorTable
GDALColorTableH GDALCloneColorTable(GDALColorTableH)
Make a copy of a color table.
Definition: gdalcolortable.cpp:277
GDALGetGCPSpatialRef
OGRSpatialReferenceH GDALGetGCPSpatialRef(GDALDatasetH)
Get output spatial reference system for GCPs.
Definition: gdaldataset.cpp:1767
OGRFeatureH
void * OGRFeatureH
Opaque type for a feature (OGRFeature)
Definition: ogr_api.h:362
GDALSetRasterUnitType
CPLErr GDALSetRasterUnitType(GDALRasterBandH hBand, const char *pszNewValue)
Set unit type.
Definition: gdalrasterband.cpp:3110
OGRStyleTableH
void * OGRStyleTableH
Opaque type for a style table (OGRStyleTable)
Definition: ogr_api.h:364
GCI_RedBand
@ GCI_RedBand
Definition: gdal.h:231
GFU_Generic
@ GFU_Generic
Definition: gdal.h:1858
GDALDestroyRelationship
void GDALDestroyRelationship(GDALRelationshipH)
Destroys a relationship.
Definition: gdalrelationship.cpp:88
GDALExtendedDataTypeFreeComponents
void GDALExtendedDataTypeFreeComponents(GDALEDTComponentH *components, size_t nCount)
Free the return of GDALExtendedDataTypeGetComponents().
Definition: gdalmultidim.cpp:10583
GDALAddBand
CPLErr GDALAddBand(GDALDatasetH hDS, GDALDataType eType, CSLConstList papszOptions)
Add a band to a dataset.
Definition: gdaldataset.cpp:765
GDALCreatePansharpenedVRT
GDALDatasetH GDALCreatePansharpenedVRT(const char *pszXML, GDALRasterBandH hPanchroBand, int nInputSpectralBands, GDALRasterBandH *pahInputSpectralBands)
Create a virtual pansharpened dataset.
Definition: vrtpansharpened.cpp:94
GDALGetMetadataItem
const char * GDALGetMetadataItem(GDALMajorObjectH, const char *, const char *)
Fetch single metadata item.
Definition: gdalmajorobject.cpp:358
GDALDimensionGetName
const char * GDALDimensionGetName(GDALDimensionH hDim)
Return dimension name.
Definition: gdalmultidim.cpp:13006
GDALRATGetColumnCount
int GDALRATGetColumnCount(GDALRasterAttributeTableH)
Fetch table column count.
Definition: gdal_rat.cpp:1253
GDALGroupOpenMDArray
GDALMDArrayH GDALGroupOpenMDArray(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a multidimensional array.
Definition: gdalmultidim.cpp:10749
GDALDatasetGetTiledVirtualMem
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:1428
GDALMajorObjectH
void * GDALMajorObjectH
Opaque type used for the C bindings of the C++ GDALMajorObject class.
Definition: gdal.h:288
GFU_Blue
@ GFU_Blue
Definition: gdal.h:1866
GDALDatasetRollbackTransaction
OGRErr GDALDatasetRollbackTransaction(GDALDatasetH hDS)
For datasources which support transactions, RollbackTransaction will roll back a datasource to its st...
Definition: gdaldataset.cpp:7693
GDALBuildOverviewsEx
CPLErr GDALBuildOverviewsEx(GDALDatasetH, const char *, int, const int *, int, const int *, GDALProgressFunc, void *, CSLConstList papszOptions)
Build raster overview(s)
Definition: gdaldataset.cpp:2104
GDALGetRasterBandYSize
int GDALGetRasterBandYSize(GDALRasterBandH)
Fetch YSize of raster.
Definition: gdalrasterband.cpp:3185
GDALRasterIOExtraArg::eResampleAlg
GDALRIOResampleAlg eResampleAlg
Definition: gdal.h:181
GDALRelationshipGetCardinality
GDALRelationshipCardinality GDALRelationshipGetCardinality(GDALRelationshipH)
Get the cardinality of the relationship.
Definition: gdalrelationship.cpp:126
GDT_UInt16
@ GDT_UInt16
Definition: gdal.h:68
GDALDatasetClearStatistics
void GDALDatasetClearStatistics(GDALDatasetH hDS)
Clear statistics.
Definition: gdaldataset.cpp:8569
GDALMDArrayWrite
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:11454
GDALExtendedDataTypeGetNumericDataType
GDALDataType GDALExtendedDataTypeGetNumericDataType(GDALExtendedDataTypeH hEDT)
Return numeric data type (only valid when GetClass() == GEDTC_NUMERIC)
Definition: gdalmultidim.cpp:10445
GDALRPCInfoV2::dfMAX_LONG
double dfMAX_LONG
Definition: gdal.h:1790
GDALExtendedDataTypeGetSize
size_t GDALExtendedDataTypeGetSize(GDALExtendedDataTypeH hEDT)
Return data type size in bytes.
Definition: gdalmultidim.cpp:10459
GDALRATGetNameOfCol
const char * GDALRATGetNameOfCol(GDALRasterAttributeTableH, int)
Fetch name of indicated column.
Definition: gdal_rat.cpp:1291
GCI_LightnessBand
@ GCI_LightnessBand
Definition: gdal.h:237
GFU_AlphaMin
@ GFU_AlphaMin
Definition: gdal.h:1871
GDALAddDerivedBandPixelFuncWithArgs
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:288
GDALSetGCPs2
CPLErr GDALSetGCPs2(GDALDatasetH, int, const GDAL_GCP *, OGRSpatialReferenceH)
Assign GCPs.
Definition: gdaldataset.cpp:1958
GFU_Min
@ GFU_Min
Definition: gdal.h:1861
GDALAddDerivedBandPixelFunc
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:246
GDALGetDataTypeByName
GDALDataType GDALGetDataTypeByName(const char *)
Get data type by symbolic name.
Definition: gdal_misc.cpp:733
GDALGetRasterXSize
int GDALGetRasterXSize(GDALDatasetH)
Fetch raster width in pixels.
Definition: gdaldataset.cpp:891
GDALDataTypeIsInteger
int GDALDataTypeIsInteger(GDALDataType)
Is data type integer? (might be complex)
Definition: gdal_misc.cpp:509
GFU_BlueMax
@ GFU_BlueMax
Definition: gdal.h:1874
GDALDatasetGetLayerCount
int GDALDatasetGetLayerCount(GDALDatasetH)
Get the number of layers in this dataset.
Definition: gdaldataset.cpp:4539
GDALGetPaletteInterpretationName
const char * GDALGetPaletteInterpretationName(GDALPaletteInterp)
Get name of palette interpretation.
Definition: gdal_misc.cpp:1005
GDALMDArrayGetCoordinateVariables
GDALMDArrayH * GDALMDArrayGetCoordinateVariables(GDALMDArrayH hArray, size_t *pnCount)
Return coordinate variables.
Definition: gdalmultidim.cpp:12415
GDALIsMaskBand
bool GDALIsMaskBand(GDALRasterBandH hBand)
Returns whether a band is a mask band.
Definition: gdalrasterband.cpp:7547
GDALMDArraySetUnit
int GDALMDArraySetUnit(GDALMDArrayH hArray, const char *)
Set the variable unit.
Definition: gdalmultidim.cpp:12255
GDALDeleteDataset
CPLErr GDALDeleteDataset(GDALDriverH, const char *)
Delete named dataset.
Definition: gdaldriver.cpp:1680
GDALRelationshipCreate
GDALRelationshipH GDALRelationshipCreate(const char *, const char *, const char *, GDALRelationshipCardinality)
Creates a new relationship.
Definition: gdalrelationship.cpp:66
GRIORA_NearestNeighbour
@ GRIORA_NearestNeighbour
Definition: gdal.h:144
GDALHasArbitraryOverviews
int GDALHasArbitraryOverviews(GDALRasterBandH)
Check for arbitrary overviews.
Definition: gdalrasterband.cpp:2573
GDALGetBandDataset
GDALDatasetH GDALGetBandDataset(GDALRasterBandH)
Fetch the owning dataset handle.
Definition: gdalrasterband.cpp:3268
GDALReleaseArrays
void GDALReleaseArrays(GDALMDArrayH *arrays, size_t nCount)
Free the return of GDALMDArrayGetCoordinateVariables()
Definition: gdalmultidim.cpp:12468
GDALGetRasterStatistics
CPLErr GDALGetRasterStatistics(GDALRasterBandH, int bApproxOK, int bForce, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev)
Fetch image statistics.
Definition: gdalrasterband.cpp:4379
GDALGroupDeleteGroup
bool GDALGroupDeleteGroup(GDALGroupH hGroup, const char *pszName, CSLConstList papszOptions)
Delete a sub-group from a group.
Definition: gdalmultidim.cpp:11091
CPL_C_START
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:306
GDALSetGCPs
CPLErr GDALSetGCPs(GDALDatasetH, int, const GDAL_GCP *, const char *)
Assign GCPs.
Definition: gdaldataset.cpp:1936
GDALExtractRPCInfoV2
int GDALExtractRPCInfoV2(CSLConstList, GDALRPCInfoV2 *)
Extract RPC info from metadata, and apply to an RPCInfo structure.
Definition: gdal_misc.cpp:3695
GDALRelationshipH
void * GDALRelationshipH
Opaque type used for the C bindings of the C++ GDALRelationship class.
Definition: gdal.h:312
GDALRelationshipGetRightMappingTableFields
char ** GDALRelationshipGetRightMappingTableFields(GDALRelationshipH)
Get the names of the mapping table fields which correspond to the participating fields from the right...
Definition: gdalrelationship.cpp:397
GDALGetInternalHandle
void * GDALGetInternalHandle(GDALDatasetH, const char *)
Fetch a format specific internally meaningful handle.
Definition: gdaldataset.cpp:1395
GDALRasterAdviseRead
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:4239
GDALColorEntry::c2
short c2
Definition: gdal.h:1815
GDALGetMaskFlags
int GDALGetMaskFlags(GDALRasterBandH hBand)
Return the status flags of the mask band associated with the band.
Definition: gdalrasterband.cpp:7399
GDALRasterIOExtraArg::dfXOff
double dfXOff
Definition: gdal.h:196
GDALAttributeWriteDoubleArray
int GDALAttributeWriteDoubleArray(GDALAttributeH hAttr, const double *, size_t)
Write an attribute from an array of double.
Definition: gdalmultidim.cpp:12955
GDALGetDriverCount
int GDALGetDriverCount(void)
Fetch the number of registered drivers.
Definition: gdaldrivermanager.cpp:369
OGRSpatialReferenceH
void * OGRSpatialReferenceH
Opaque type for a spatial reference system.
Definition: ogr_api.h:81
GDALRelationshipGetName
const char * GDALRelationshipGetName(GDALRelationshipH)
Get the name of the relationship.
Definition: gdalrelationship.cpp:106
GDALGetColorEntryCount
int GDALGetColorEntryCount(GDALColorTableH)
Get number of color entries in table.
Definition: gdalcolortable.cpp:314
GDALEDTComponentRelease
void GDALEDTComponentRelease(GDALEDTComponentH hComp)
Release the GDAL in-memory object associated with a GDALEDTComponentH.
Definition: gdalmultidim.cpp:10621
GRT_COMPOSITE
@ GRT_COMPOSITE
Composite relationship.
Definition: gdal.h:1987
GDALAttributeReadAsString
const char * GDALAttributeReadAsString(GDALAttributeH hAttr)
Return the value of an attribute as a string.
Definition: gdalmultidim.cpp:12706
GDALGetCacheMax64
GIntBig GDALGetCacheMax64(void)
Get maximum cache memory.
Definition: gdalrasterblock.cpp:238
GDALCreate
GDALDatasetH GDALCreate(GDALDriverH hDriver, const char *, int, int, int, GDALDataType, CSLConstList)
Create a new dataset with this driver.
Definition: gdaldriver.cpp:315
GDALDatasetGetFieldDomainNames
char ** GDALDatasetGetFieldDomainNames(GDALDatasetH, CSLConstList)
Returns a list of the names of all field domains stored in the dataset.
Definition: gdaldataset.cpp:8620
GDALRATGetValueAsInt
int GDALRATGetValueAsInt(GDALRasterAttributeTableH, int, int)
Fetch field value as a integer.
Definition: gdal_rat.cpp:1564
GDALDatasetGetCompressionFormats
char ** GDALDatasetGetCompressionFormats(GDALDatasetH hDS, int nXOff, int nYOff, int nXSize, int nYSize, int nBandCount, const int *panBandList)
Return the compression formats that can be natively obtained for the window of interest and requested...
Definition: gdaldataset.cpp:9428
GDALAttributeGetDimensionsSize
GUInt64 * GDALAttributeGetDimensionsSize(GDALAttributeH hAttr, size_t *pnCount)
Return the dimension sizes of the attribute.
Definition: gdalmultidim.cpp:12605
GDALDataTypeUnionWithValue
GDALDataType GDALDataTypeUnionWithValue(GDALDataType eDT, double dValue, int bComplex)
Union a data type with the one found for a value.
Definition: gdal_misc.cpp:177
GDALMDArrayGetAttributes
GDALAttributeH * GDALMDArrayGetAttributes(GDALMDArrayH hArray, size_t *pnCount, CSLConstList papszOptions)
Return the list of attributes contained in this array.
Definition: gdalmultidim.cpp:11554
GDALGetRasterHistogram
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:3895
GDALMDArraySetNoDataValueAsUInt64
int GDALMDArraySetNoDataValueAsUInt64(GDALMDArrayH hArray, uint64_t nNoDataValue)
Set the nodata value as a UInt64.
Definition: gdalmultidim.cpp:11799
GF_Write
@ GF_Write
Definition: gdal.h:134
GDALDatasetGetRelationship
GDALRelationshipH GDALDatasetGetRelationship(GDALDatasetH hDS, const char *pszName)
Get a relationship from its name.
Definition: gdaldataset.cpp:8979
GCI_YellowBand
@ GCI_YellowBand
Definition: gdal.h:240
GDALRasterIOExtraArg::pProgressData
void * pProgressData
Definition: gdal.h:186
GDALValidateCreationOptions
int GDALValidateCreationOptions(GDALDriverH, CSLConstList papszCreationOptions)
Validate the list of creation options that are handled by a driver.
Definition: gdaldriver.cpp:2087
GDALRelationshipGetRelatedTableType
const char * GDALRelationshipGetRelatedTableType(GDALRelationshipH)
Get the type string of the related table.
Definition: gdalrelationship.cpp:669
GDALMDArrayGetProcessingChunkSize
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:12071
GFU_RedMin
@ GFU_RedMin
Definition: gdal.h:1868
GDALGroupGetDimensions
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:10947
GRC_ONE_TO_MANY
@ GRC_ONE_TO_MANY
One-to-many.
Definition: gdal.h:1973
GDALDatasetGetNextFeature
OGRFeatureH GDALDatasetGetNextFeature(GDALDatasetH hDS, OGRLayerH *phBelongingLayer, double *pdfProgressPct, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch the next available feature from this dataset.
Definition: gdaldataset.cpp:7361
GDALGroupGetVectorLayerNames
char ** GDALGroupGetVectorLayerNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of layer names contained in this group.
Definition: gdalmultidim.cpp:10864
GDT_CFloat32
@ GDT_CFloat32
Definition: gdal.h:79
GDALEDTComponentGetOffset
size_t GDALEDTComponentGetOffset(GDALEDTComponentH hComp)
Return the offset (in bytes) of the component in the compound data type.
Definition: gdalmultidim.cpp:10650
GDALGetDriverLongName
const char * GDALGetDriverLongName(GDALDriverH)
Return the long name of a driver.
Definition: gdaldriver.cpp:1992
GDALMDArrayGetOffset
double GDALMDArrayGetOffset(GDALMDArrayH hArray, int *pbHasValue)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:11974
GDALAttributeGetFullName
const char * GDALAttributeGetFullName(GDALAttributeH hAttr)
Return the full name of the attribute.
Definition: gdalmultidim.cpp:12557
GDALExtendedDataTypeGetMaxStringLength
size_t GDALExtendedDataTypeGetMaxStringLength(GDALExtendedDataTypeH hEDT)
Return the maximum length of a string in bytes.
Definition: gdalmultidim.cpp:10475
GDALDataTypeIsFloating
int GDALDataTypeIsFloating(GDALDataType)
Is data type floating? (might be complex)
Definition: gdal_misc.cpp:468
GDALDeregisterDriver
void GDALDeregisterDriver(GDALDriverH)
Deregister the passed driver.
Definition: gdaldrivermanager.cpp:587
CSLConstList
char ** CSLConstList
Type of a constant null-terminated list of nul terminated strings.
Definition: cpl_port.h:1178
GDALCreateColorTable
GDALColorTableH GDALCreateColorTable(GDALPaletteInterp)
Construct a new color table.
Definition: gdalcolortable.cpp:67
GDALGetRasterSampleOverviewEx
GDALRasterBandH GDALGetRasterSampleOverviewEx(GDALRasterBandH, GUIntBig)
Fetch best sampling overview.
Definition: gdalrasterband.cpp:2753
GUIntBig
unsigned long long GUIntBig
Large unsigned integer type (generally 64-bit unsigned integer type).
Definition: cpl_port.h:229
GDALRasterBandGetVirtualMem
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:1014
GDALDeinterleave
void GDALDeinterleave(const void *pSourceBuffer, GDALDataType eSourceDT, int nComponents, void **ppDestBuffer, GDALDataType eDestDT, size_t nIters)
Definition: rasterio.cpp:5489
GDALGetDriver
GDALDriverH GDALGetDriver(int)
Fetch driver by index.
Definition: gdaldrivermanager.cpp:407
GDALMDArrayGetAttribute
GDALAttributeH GDALMDArrayGetAttribute(GDALMDArrayH hArray, const char *pszName)
Return an attribute by its name.
Definition: gdalmultidim.cpp:11525
GDALDatasetCopyLayer
OGRLayerH GDALDatasetCopyLayer(GDALDatasetH, OGRLayerH, const char *, CSLConstList)
Duplicate an existing layer.
Definition: gdaldataset.cpp:4888
GDALMDArrayGetRawNoDataValue
const void * GDALMDArrayGetRawNoDataValue(GDALMDArrayH hArray)
Return the nodata value as a "raw" value.
Definition: gdalmultidim.cpp:11640
GDALEDTComponentH
struct GDALEDTComponentHS * GDALEDTComponentH
Opaque type for C++ GDALEDTComponent.
Definition: gdal.h:344
GDALExtendedDataTypeCreate
GDALExtendedDataTypeH GDALExtendedDataTypeCreate(GDALDataType eType)
Return a new GDALExtendedDataType of class GEDTC_NUMERIC.
Definition: gdalmultidim.cpp:10313
GDALRelationshipGetRightTableFields
char ** GDALRelationshipGetRightTableFields(GDALRelationshipH)
Get the names of the participating fields from the right table in the relationship.
Definition: gdalrelationship.cpp:269
GDT_Float64
@ GDT_Float64
Definition: gdal.h:75
GDALRegenerateOverviewsEx
CPLErr GDALRegenerateOverviewsEx(GDALRasterBandH hSrcBand, int nOverviewCount, GDALRasterBandH *pahOverviewBands, const char *pszResampling, GDALProgressFunc pfnProgress, void *pProgressData, CSLConstList papszOptions)
Generate downsampled overviews.
Definition: overview.cpp:4306
GDALRasterIOExtraArg::pfnProgress
GDALProgressFunc pfnProgress
Definition: gdal.h:184
GDALIdentifyDriver
GDALDriverH GDALIdentifyDriver(const char *pszFilename, CSLConstList papszFileList)
Identify the driver that can open a raster file.
Definition: gdaldriver.cpp:2578
GDALAttributeRelease
void GDALAttributeRelease(GDALAttributeH hAttr)
Release the GDAL in-memory object associated with a GDALAttribute.
Definition: gdalmultidim.cpp:12526
GDALFillRaster
CPLErr GDALFillRaster(GDALRasterBandH hBand, double dfRealValue, double dfImaginaryValue)
Fill this band with a constant value.
Definition: gdalrasterband.cpp:1555
GDALRATSetTableType
CPLErr GDALRATSetTableType(GDALRasterAttributeTableH hRAT, const GDALRATTableType eInTableType)
Set RAT Table Type.
Definition: gdal_rat.cpp:591
GFU_RedMax
@ GFU_RedMax
Definition: gdal.h:1872
GDALDatasetResetReading
void GDALDatasetResetReading(GDALDatasetH)
Reset feature reading to start on the first feature.
Definition: gdaldataset.cpp:7133
GDALGetGeoTransform
CPLErr GDALGetGeoTransform(GDALDatasetH, double *)
Fetch the affine transformation coefficients.
Definition: gdaldataset.cpp:1307
GDALRPCInfoV2::dfLONG_SCALE
double dfLONG_SCALE
Definition: gdal.h:1780
GDAL_GCP
Ground Control Point.
Definition: gdal.h:1051
CPL_C_END
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:310
GDALDerivedPixelFuncWithArgs
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:1445
GDALMDArrayCache
int GDALMDArrayCache(GDALMDArrayH hArray, CSLConstList papszOptions)
Cache the content of the array into an auxiliary filename.
Definition: gdalmultidim.cpp:12489
GEDTST_NONE
@ GEDTST_NONE
None.
Definition: gdal.h:336
GRIORA_CubicSpline
@ GRIORA_CubicSpline
Definition: gdal.h:147
GRIORA_RMS
@ GRIORA_RMS
RMS: Root Mean Square / Quadratic Mean.
Definition: gdal.h:163
GDALGetDataTypeSize
int GDALGetDataTypeSize(GDALDataType)
Get data type size in bits.
Definition: gdal_misc.cpp:408
GFU_Name
@ GFU_Name
Definition: gdal.h:1860
GDALSetDescription
void GDALSetDescription(GDALMajorObjectH, const char *)
Set object description.
Definition: gdalmajorobject.cpp:134
GDALMDArrayGetView
GDALMDArrayH GDALMDArrayGetView(GDALMDArrayH hArray, const char *pszViewExpr)
Return a view of the array using slicing or field access.
Definition: gdalmultidim.cpp:12115
GDALGetDescription
const char * GDALGetDescription(GDALMajorObjectH)
Fetch object description.
Definition: gdalmajorobject.cpp:93
GFU_Alpha
@ GFU_Alpha
Definition: gdal.h:1867
GDALCreateRasterAttributeTable
GDALRasterAttributeTableH GDALCreateRasterAttributeTable(void)
Construct empty table.
Definition: gdal_rat.cpp:1181
GCI_Undefined
@ GCI_Undefined
Definition: gdal.h:228
GDALGetSubdatasetInfo
GDALSubdatasetInfoH GDALGetSubdatasetInfo(const char *pszFileName)
Returns a new GDALSubdatasetInfo object with methods to extract and manipulate subdataset information...
Definition: gdalsubdatasetinfo.cpp:38
GDALWriteBlock
CPLErr GDALWriteBlock(GDALRasterBandH, int, int, void *)
Write a block of image data efficiently.
Definition: gdalrasterband.cpp:760
OGRFieldDomainH
struct OGRFieldDomainHS * OGRFieldDomainH
Opaque type for a field domain definition (OGRFieldDomain)
Definition: ogr_api.h:370
GDALReadBlock
CPLErr GDALReadBlock(GDALRasterBandH, int, int, void *)
Read a block of image data efficiently.
Definition: gdalrasterband.cpp:605
GDALSetDefaultHistogram
CPLErr GDALSetDefaultHistogram(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, int *panHistogram)
Set default histogram.
Definition: gdalrasterband.cpp:6852
GDALMDArrayRelease
void GDALMDArrayRelease(GDALMDArrayH hMDArray)
Release the GDAL in-memory object associated with a GDALMDArray.
Definition: gdalmultidim.cpp:11285
GDALAttributeWriteInt
int GDALAttributeWriteInt(GDALAttributeH hAttr, int)
Write an attribute from a integer value.
Definition: gdalmultidim.cpp:12886
GDALCreateMultiDimensional
GDALDatasetH GDALCreateMultiDimensional(GDALDriverH hDriver, const char *pszName, CSLConstList papszRootGroupOptions, CSLConstList papszOptions)
Create a new multidimensional dataset with this driver.
Definition: gdaldriver.cpp:408
GDALGroupOpenMDArrayFromFullname
GDALMDArrayH GDALGroupOpenMDArrayFromFullname(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a multidimensional array from its fully qualified name.
Definition: gdalmultidim.cpp:10773
GDALSetDefaultRAT
CPLErr GDALSetDefaultRAT(GDALRasterBandH, GDALRasterAttributeTableH)
Set default Raster Attribute Table.
Definition: gdalrasterband.cpp:6994
GDALReleaseDimensions
void GDALReleaseDimensions(GDALDimensionH *dims, size_t nCount)
Free the return of GDALGroupGetDimensions() or GDALMDArrayGetDimensions()
Definition: gdalmultidim.cpp:11388
GRIORA_Mode
@ GRIORA_Mode
Definition: gdal.h:152
GDALAttributeRename
bool GDALAttributeRename(GDALAttributeH hAttr, const char *pszNewName)
Rename the attribute.
Definition: gdalmultidim.cpp:12977
GDALExtendedDataTypeCreateString
GDALExtendedDataTypeH GDALExtendedDataTypeCreateString(size_t nMaxStringLength)
Return a new GDALExtendedDataType of class GEDTC_STRING.
Definition: gdalmultidim.cpp:10331
GDALAttributeGetTotalElementsCount
GUInt64 GDALAttributeGetTotalElementsCount(GDALAttributeH hAttr)
Return the total number of values in the attribute.
Definition: gdalmultidim.cpp:12572
GDALDatasetReleaseResultSet
void GDALDatasetReleaseResultSet(GDALDatasetH, OGRLayerH)
Release results of ExecuteSQL().
Definition: gdaldataset.cpp:4510
GDALExtendedDataTypeGetClass
GDALExtendedDataTypeClass GDALExtendedDataTypeGetClass(GDALExtendedDataTypeH hEDT)
Return type class.
Definition: gdalmultidim.cpp:10431
CPLVirtualMem
struct CPLVirtualMem CPLVirtualMem
Opaque type that represents a virtual memory mapping.
Definition: cpl_virtualmem.h:62
GDALDatasetExecuteSQL
OGRLayerH GDALDatasetExecuteSQL(GDALDatasetH, const char *, OGRGeometryH, const char *)
Execute an SQL statement against the data store.
Definition: gdaldataset.cpp:4943
GFU_PixelCount
@ GFU_PixelCount
Definition: gdal.h:1859
GDALGetDriverByName
GDALDriverH GDALGetDriverByName(const char *)
Fetch a driver based on the short name.
Definition: gdaldrivermanager.cpp:632
GDALAttributeReadAsStringArray
char ** GDALAttributeReadAsStringArray(GDALAttributeH hAttr)
Return the value of an attribute as an array of strings.
Definition: gdalmultidim.cpp:12762
GDALRATRemoveStatistics
void GDALRATRemoveStatistics(GDALRasterAttributeTableH)
Remove Statistics from RAT.
Definition: gdal_rat.cpp:2211
GDALSubdatasetInfoModifyPathComponent
char * GDALSubdatasetInfoModifyPathComponent(GDALSubdatasetInfoH hInfo, const char *pszNewPath)
Replaces the path component of a subdataset descriptor.
Definition: gdalsubdatasetinfo.cpp:91
GDALDatasetAdviseRead
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:2973
GDALDatasetAbortSQL
OGRErr GDALDatasetAbortSQL(GDALDatasetH)
Abort any SQL statement running in the data store.
Definition: gdaldataset.cpp:4988
GDALMDArraySetNoDataValueAsInt64
int GDALMDArraySetNoDataValueAsInt64(GDALMDArrayH hArray, int64_t nNoDataValue)
Set the nodata value as a Int64.
Definition: gdalmultidim.cpp:11779
GDALMDArrayGetNoDataValueAsDouble
double GDALMDArrayGetNoDataValueAsDouble(GDALMDArrayH hArray, int *pbHasNoDataValue)
Return the nodata value as a double.
Definition: gdalmultidim.cpp:11666
GDALSetRasterScale
CPLErr GDALSetRasterScale(GDALRasterBandH hBand, double dfNewOffset)
Set scaling ratio.
Definition: gdalrasterband.cpp:3015
GDALBuildOverviews
CPLErr GDALBuildOverviews(GDALDatasetH, const char *, int, const int *, int, const int *, GDALProgressFunc, void *)
Build raster overview(s)
Definition: gdaldataset.cpp:2077
GDALQueryLoggerFunc
void(* GDALQueryLoggerFunc)(const char *pszSQL, const char *pszError, int64_t lNumRecords, int64_t lExecutionTimeMilliseconds, void *pQueryLoggerArg)
Type of functions to pass to GDALDatasetSetQueryLoggerFunc.
Definition: gdal.h:1277
GDALSetCacheMax
void GDALSetCacheMax(int nBytes)
Set maximum cache memory.
Definition: gdalrasterblock.cpp:119
GFU_GreenMin
@ GFU_GreenMin
Definition: gdal.h:1869
GDALRPCInfoV2::dfERR_BIAS
double dfERR_BIAS
Definition: gdal.h:1795
GDALGetAccess
int GDALGetAccess(GDALDatasetH hDS)
Return access flag.
Definition: gdaldataset.cpp:2868
GDALMDArrayGetScale
double GDALMDArrayGetScale(GDALMDArrayH hArray, int *pbHasValue)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:11928
GCI_YCbCr_CrBand
@ GCI_YCbCr_CrBand
Definition: gdal.h:244
GCI_BlackBand
@ GCI_BlackBand
Definition: gdal.h:241
GDALApplyGeoTransform
void GDALApplyGeoTransform(double *, double, double, double *, double *)
Apply GeoTransform to x/y coordinate.
Definition: gdaltransformer.cpp:4284
GDALDumpOpenDatasets
int GDALDumpOpenDatasets(FILE *)
List open datasets.
Definition: gdaldataset.cpp:3988
GRIORA_Gauss
@ GRIORA_Gauss
Definition: gdal.h:153
GDALMDArraySetRawNoDataValue
int GDALMDArraySetRawNoDataValue(GDALMDArrayH hArray, const void *)
Set the nodata value as a "raw" value.
Definition: gdalmultidim.cpp:11740
GDALGetRasterCount
int GDALGetRasterCount(GDALDatasetH)
Fetch the number of raster bands on this dataset.
Definition: gdaldataset.cpp:1018
GDALRPCInfoV2::dfMAX_LAT
double dfMAX_LAT
Definition: gdal.h:1791
GDALGetDefaultHistogram
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:4087
OGRGeometryH
void * OGRGeometryH
Opaque type for a geometry.
Definition: ogr_api.h:66
GDALRATGetValueAsString
const char * GDALRATGetValueAsString(GDALRasterAttributeTableH, int, int)
Fetch field value as a string.
Definition: gdal_rat.cpp:1507
GDALColorEntry::c3
short c3
Definition: gdal.h:1818
GDALRATSerializeJSON
void * GDALRATSerializeJSON(GDALRasterAttributeTableH)
Serialize Raster Attribute Table in Json format.
Definition: gdal_rat.cpp:2191
GDALRATChangesAreWrittenToFile
int GDALRATChangesAreWrittenToFile(GDALRasterAttributeTableH hRAT)
Determine whether changes made to this RAT are reflected directly in the dataset.
Definition: gdal_rat.cpp:1891
GDALMDArrayGetNoDataValueAsInt64
int64_t GDALMDArrayGetNoDataValueAsInt64(GDALMDArrayH hArray, int *pbHasNoDataValue)
Return the nodata value as a Int64.
Definition: gdalmultidim.cpp:11692
GDALCopyBits
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:3534
GDALCopyWords
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:3252
GSpacing
GIntBig GSpacing
Type to express pixel, line or band spacing.
Definition: gdal.h:315
GDALSetGeoTransform
CPLErr GDALSetGeoTransform(GDALDatasetH, double *)
Set the affine transformation coefficients.
Definition: gdaldataset.cpp:1355
GDALRATSetValueAsInt
void GDALRATSetValueAsInt(GDALRasterAttributeTableH, int, int, int)
Set field value from integer.
Definition: gdal_rat.cpp:1794
GDALGroupSubsetDimensionFromSelection
GDALGroupH GDALGroupSubsetDimensionFromSelection(GDALGroupH hGroup, const char *pszSelection, CSLConstList papszOptions)
Return a virtual group whose one dimension has been subset according to a selection.
Definition: gdalmultidim.cpp:11263
GCI_BlueBand
@ GCI_BlueBand
Definition: gdal.h:233
GDALGroupCreateGroup
GDALGroupH GDALGroupCreateGroup(GDALGroupH hGroup, const char *pszSubGroupName, CSLConstList papszOptions)
Create a sub-group within a group.
Definition: gdalmultidim.cpp:11065
GDALAccess
GDALAccess
Definition: gdal.h:124
GDALGetRasterNoDataValueAsUInt64
uint64_t GDALGetRasterNoDataValueAsUInt64(GDALRasterBandH, int *)
Fetch the no data value for this band.
Definition: gdalrasterband.cpp:1866
GDALRelationshipGetLeftTableFields
char ** GDALRelationshipGetLeftTableFields(GDALRelationshipH)
Get the names of the participating fields from the left table in the relationship.
Definition: gdalrelationship.cpp:238
GDALAttributeWriteDouble
int GDALAttributeWriteDouble(GDALAttributeH hAttr, double)
Write an attribute from a double value.
Definition: gdalmultidim.cpp:12908
GDALDatasetTestCapability
int GDALDatasetTestCapability(GDALDatasetH, const char *)
Test if capability is available.
Definition: gdaldataset.cpp:7465
GDALLoadOziMapFile
int GDALLoadOziMapFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for OZI .map.
Definition: gdal_misc.cpp:1530
GDALFlushRasterCache
CPLErr GDALFlushRasterCache(GDALRasterBandH hBand)
Flush raster data cache.
Definition: gdalrasterband.cpp:1135
GDALGroupGetFullName
const char * GDALGroupGetFullName(GDALGroupH hGroup)
Return the full name of the group.
Definition: gdalmultidim.cpp:10711
GDALRATGetColOfUsage
int GDALRATGetColOfUsage(GDALRasterAttributeTableH, GDALRATFieldUsage)
Fetch column index for given usage.
Definition: gdal_rat.cpp:1413
GDALMDArrayGetUnit
const char * GDALMDArrayGetUnit(GDALMDArrayH hArray)
Return the array unit.
Definition: gdalmultidim.cpp:12280
GDALAttributeGetDimensionCount
size_t GDALAttributeGetDimensionCount(GDALAttributeH hAttr)
Return the number of dimensions.
Definition: gdalmultidim.cpp:12586
GDALGetBandNumber
int GDALGetBandNumber(GDALRasterBandH)
Fetch the band number.
Definition: gdalrasterband.cpp:3227
GDALAsyncStatusType
GDALAsyncStatusType
status of the asynchronous stream
Definition: gdal.h:110
GDALAttributeReadAsDoubleArray
double * GDALAttributeReadAsDoubleArray(GDALAttributeH hAttr, size_t *pnCount)
Return the value of an attribute as an array of doubles.
Definition: gdalmultidim.cpp:12808
GDALDecToPackedDMS
double GDALDecToPackedDMS(double)
Convert decimal degrees into packed DMS value (DDDMMMSSS.SS).
Definition: gdal_misc.cpp:2586
GDALDatasetCommitTransaction
OGRErr GDALDatasetCommitTransaction(GDALDatasetH hDS)
For datasources which support transactions, CommitTransaction commits a transaction.
Definition: gdaldataset.cpp:7641
GDALAttributeWriteRaw
int GDALAttributeWriteRaw(GDALAttributeH hAttr, const void *, size_t)
Write an attribute from raw values expressed in GetDataType()
Definition: gdalmultidim.cpp:12843
GFT_Integer
@ GFT_Integer
Definition: gdal.h:1850
GDALGetVirtualMemAuto
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:7937
GDALRATFieldType
GDALRATFieldType
Field type of raster attribute table.
Definition: gdal.h:1848
GDALRATCreateColumn
CPLErr GDALRATCreateColumn(GDALRasterAttributeTableH, const char *, GDALRATFieldType, GDALRATFieldUsage)
Create new column.
Definition: gdal_rat.cpp:460
GDALDatasetGetStyleTable
OGRStyleTableH GDALDatasetGetStyleTable(GDALDatasetH)
Returns dataset style table.
Definition: gdaldataset.cpp:5011
GDALGetDriverHelpTopic
const char * GDALGetDriverHelpTopic(GDALDriverH)
Return the URL to the help that describes the driver.
Definition: gdaldriver.cpp:2022
GDALMDArrayAdviseRead
int GDALMDArrayAdviseRead(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count)
Advise driver of upcoming read requests.
Definition: gdalmultidim.cpp:11489
GDALAttributeFreeRawResult
void GDALAttributeFreeRawResult(GDALAttributeH hAttr, GByte *raw, size_t nSize)
Free the return of GDALAttributeAsRaw()
Definition: gdalmultidim.cpp:12670
GDALRelationshipSetMappingTableName
void GDALRelationshipSetMappingTableName(GDALRelationshipH, const char *)
Sets the name of the mapping table for many-to-many relationships.
Definition: gdalrelationship.cpp:215
OGRErr
int OGRErr
Type for a OGR error.
Definition: ogr_core.h:378
GDALRelationshipSetLeftMappingTableFields
void GDALRelationshipSetLeftMappingTableFields(GDALRelationshipH, CSLConstList)
Sets the names of the mapping table fields which correspond to the participating fields from the left...
Definition: gdalrelationship.cpp:430
GDALGroupCreateMDArray
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:11135
GDALExtendedDataTypeRelease
void GDALExtendedDataTypeRelease(GDALExtendedDataTypeH hEDT)
Release the GDAL in-memory object associated with a GDALExtendedDataTypeH.
Definition: gdalmultidim.cpp:10403
GDALMDArrayGetScaleEx
double GDALMDArrayGetScaleEx(GDALMDArrayH hArray, int *pbHasValue, GDALDataType *peStorageType)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:11951
GDALEDTComponentGetType
GDALExtendedDataTypeH GDALEDTComponentGetType(GDALEDTComponentH hComp)
Return the data type of the component.
Definition: gdalmultidim.cpp:10664
GDALComputeBandStats
CPLErr GDALComputeBandStats(GDALRasterBandH hBand, int nSampleStep, double *pdfMean, double *pdfStdDev, GDALProgressFunc pfnProgress, void *pProgressData)
Undocumented.
Definition: overview.cpp:5646
GDALReleaseDataset
int GDALReleaseDataset(GDALDatasetH)
Drop a reference to this object, and destroy if no longer referenced.
Definition: gdaldataset.cpp:1549
GA_ReadOnly
@ GA_ReadOnly
Definition: gdal.h:126
GFT_String
@ GFT_String
Definition: gdal.h:1852
GDT_Int64
@ GDT_Int64
Definition: gdal.h:73
GDALDestroySubdatasetInfo
void GDALDestroySubdatasetInfo(GDALSubdatasetInfoH hInfo)
Destroys a GDALSubdatasetInfo object.
Definition: gdalsubdatasetinfo.cpp:75
GDALRasterBandGetTiledVirtualMem
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:1534
GDALRegisterDriver
int GDALRegisterDriver(GDALDriverH)
Register a driver for use.
Definition: gdaldrivermanager.cpp:529
GDALCreateDatasetMaskBand
CPLErr GDALCreateDatasetMaskBand(GDALDatasetH hDS, int nFlags)
Adds a mask band to the dataset.
Definition: gdaldataset.cpp:3274
GDALSetRasterColorInterpretation
CPLErr GDALSetRasterColorInterpretation(GDALRasterBandH, GDALColorInterp)
Set color interpretation of a band.
Definition: gdalrasterband.cpp:2434
GDALSubdatasetInfoGetSubdatasetComponent
char * GDALSubdatasetInfoGetSubdatasetComponent(GDALSubdatasetInfoH hInfo)
Returns the subdataset component of a subdataset descriptor descriptor.
Definition: gdalsubdatasetinfo.cpp:86
GIntBig
long long GIntBig
Large signed integer type (generally 64-bit integer type).
Definition: cpl_port.h:226
GDAL_GCP::pszInfo
char * pszInfo
Informational message or "".
Definition: gdal.h:1057
GDAL_GCP::dfGCPPixel
double dfGCPPixel
Pixel (x) location of GCP on raster.
Definition: gdal.h:1060
GDALGetRasterOffset
double GDALGetRasterOffset(GDALRasterBandH, int *pbSuccess)
Fetch the raster value offset.
Definition: gdalrasterband.cpp:2859
GDALGroupH
struct GDALGroupHS * GDALGroupH
Opaque type for C++ GDALGroup.
Definition: gdal.h:346
GDALOpenShared
GDALDatasetH GDALOpenShared(const char *, GDALAccess)
Open a raster file as a GDALDataset.
Definition: gdaldataset.cpp:3853
GDALDimensionRelease
void GDALDimensionRelease(GDALDimensionH hDim)
Release the GDAL in-memory object associated with a GDALDimension.
Definition: gdalmultidim.cpp:12993
GDALMDArrayGetNoDataValueAsUInt64
uint64_t GDALMDArrayGetNoDataValueAsUInt64(GDALMDArrayH hArray, int *pbHasNoDataValue)
Return the nodata value as a UInt64.
Definition: gdalmultidim.cpp:11718
GRIORA_Average
@ GRIORA_Average
Definition: gdal.h:149
GDALAttributeGetDataType
GDALExtendedDataTypeH GDALAttributeGetDataType(GDALAttributeH hAttr)
Return the data type.
Definition: gdalmultidim.cpp:12627
GDALDatasetGetRootGroup
GDALGroupH GDALDatasetGetRootGroup(GDALDatasetH hDS)
Return the root GDALGroup of this dataset.
Definition: gdalmultidim.cpp:13146
GDALExtendedDataTypeCreateCompound
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:10377
GDALDatasetGetRelationshipNames
char ** GDALDatasetGetRelationshipNames(GDALDatasetH, CSLConstList)
Returns a list of the names of all relationships stored in the dataset.
Definition: gdaldataset.cpp:8936
GDALFlushCache
CPLErr GDALFlushCache(GDALDatasetH hDS)
Flush all write cached data to disk.
Definition: gdaldataset.cpp:606
GDALGCPsToGeoTransform
int GDALGCPsToGeoTransform(int nGCPCount, const GDAL_GCP *pasGCPs, double *padfGeoTransform, int bApproxOK)
Generate Geotransform from GCPs.
Definition: gdal_misc.cpp:2627
GDALEDTComponentCreate
GDALEDTComponentH GDALEDTComponentCreate(const char *pszName, size_t nOffset, GDALExtendedDataTypeH hType)
Create a new GDALEDTComponent.
Definition: gdalmultidim.cpp:10603
OGRwkbGeometryType
OGRwkbGeometryType
List of well known binary geometry types.
Definition: ogr_core.h:406
GDALGetColorEntry
const GDALColorEntry * GDALGetColorEntry(GDALColorTableH, int)
Fetch a color entry from table.
Definition: gdalcolortable.cpp:132
GDALAsyncReaderH
void * GDALAsyncReaderH
Opaque type used for the C bindings of the C++ GDALAsyncReader class.
Definition: gdal.h:307
GDALFindDataTypeForValue
GDALDataType GDALFindDataTypeForValue(double dValue, int bComplex)
Finds the smallest data type able to support the provided value.
Definition: gdal_misc.cpp:313
GDALAttributeWriteStringArray
int GDALAttributeWriteStringArray(GDALAttributeH hAttr, CSLConstList)
Write an attribute from an array of strings.
Definition: gdalmultidim.cpp:12930
GDALGetGCPProjection
const char * GDALGetGCPProjection(GDALDatasetH)
Get output projection for GCPs.
Definition: gdaldataset.cpp:1786
GDALReadTabFile
int GDALReadTabFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for MapInfo .tab files.
Definition: gdal_misc.cpp:1934
GDALRasterIOExtraArg
Structure to pass extra arguments to RasterIO() method, must be initialized with INIT_RASTERIO_EXTRA_...
Definition: gdal.h:175
GDALExtendedDataTypeEquals
int GDALExtendedDataTypeEquals(GDALExtendedDataTypeH hFirstEDT, GDALExtendedDataTypeH hSecondEDT)
Return whether this data type is equal to another one.
Definition: gdalmultidim.cpp:10513
GDAL_GCP::dfGCPY
double dfGCPY
Y position of GCP in georeferenced space.
Definition: gdal.h:1068
CPL_WARN_UNUSED_RESULT
#define CPL_WARN_UNUSED_RESULT
Qualifier to warn when the return value of a function is not used.
Definition: cpl_port.h:976
GDALMDArrayGetGridded
GDALMDArrayH GDALMDArrayGetGridded(GDALMDArrayH hArray, const char *pszGridOptions, GDALMDArrayH hXArray, GDALMDArrayH hYArray, CSLConstList papszOptions)
Return a gridded array from scattered point data, that is from an array whose last dimension is the i...
Definition: gdalmultidim.cpp:12444
GDALDimensionGetDirection
const char * GDALDimensionGetDirection(GDALDimensionH hDim)
Return dimension direction.
Definition: gdalmultidim.cpp:13048
GDALGetActualBlockSize
CPLErr GDALGetActualBlockSize(GDALRasterBandH, int nXBlockOff, int nYBlockOff, int *pnXValid, int *pnYValid)
Retrieve the actual block size for a given block offset.
Definition: gdalrasterband.cpp:836
GDALGroupResolveMDArray
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:10795
GDT_CInt16
@ GDT_CInt16
Definition: gdal.h:76
GRTT_THEMATIC
@ GRTT_THEMATIC
Definition: gdal.h:1884
GDALGetRasterColorInterpretation
GDALColorInterp GDALGetRasterColorInterpretation(GDALRasterBandH)
How should this band be interpreted as color?
Definition: gdalrasterband.cpp:2388
GDALRATDumpReadable
void GDALRATDumpReadable(GDALRasterAttributeTableH, FILE *)
Dump RAT in readable form.
Definition: gdal_rat.cpp:1141
cpl_port.h
GEDTST_JSON
@ GEDTST_JSON
JSon.
Definition: gdal.h:338
GDALRWFlag
GDALRWFlag
Definition: gdal.h:131
GDALReleaseAttributes
void GDALReleaseAttributes(GDALAttributeH *attributes, size_t nCount)
Free the return of GDALGroupGetAttributes() or GDALMDArrayGetAttributes()
Definition: gdalmultidim.cpp:11046
GDALSetCacheMax64
void GDALSetCacheMax64(GIntBig nBytes)
Set maximum cache memory.
Definition: gdalrasterblock.cpp:145
ogr_api.h
GDALEndAsyncReader
void GDALEndAsyncReader(GDALDatasetH hDS, GDALAsyncReaderH hAsynchReaderH)
End asynchronous request.
Definition: gdaldataset.cpp:4235
GDALRATFieldUsage
GDALRATFieldUsage
Field usage of raster attribute table.
Definition: gdal.h:1856
GA_Update
@ GA_Update
Definition: gdal.h:127
GDALMDArrayRename
bool GDALMDArrayRename(GDALMDArrayH hArray, const char *pszNewName)
Rename the array.
Definition: gdalmultidim.cpp:12510
GDALDestroyDriverManager
void GDALDestroyDriverManager(void)
Destroy the driver manager.
Definition: gdaldrivermanager.cpp:1162
GDALGroupCreateDimension
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:11110
GDALRATSetValueAsDouble
void GDALRATSetValueAsDouble(GDALRasterAttributeTableH, int, int, double)
Set field value from double.
Definition: gdal_rat.cpp:1860
GDALGetRasterBandXSize
int GDALGetRasterBandXSize(GDALRasterBandH)
Fetch XSize of raster.
Definition: gdalrasterband.cpp:3148
GDT_Int16
@ GDT_Int16
Definition: gdal.h:69
GDALAttributeGetName
const char * GDALAttributeGetName(GDALAttributeH hAttr)
Return the name of the attribute.
Definition: gdalmultidim.cpp:12541
GDALPackedDMSToDec
double GDALPackedDMSToDec(double)
Convert a packed DMS value (DDDMMMSSS.SS) into decimal degrees.
Definition: gdal_misc.cpp:2570
GDALRPCInfoV2::dfLINE_OFF
double dfLINE_OFF
Definition: gdal.h:1771
GDALMDArrayRead
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:11422
GDALSetProjection
CPLErr GDALSetProjection(GDALDatasetH, const char *)
Set the projection reference string for this dataset.
Definition: gdaldataset.cpp:1241
GDALGetRasterMinimum
double GDALGetRasterMinimum(GDALRasterBandH, int *pbSuccess)
Fetch the minimum value for this band.
Definition: gdalrasterband.cpp:2346
GFU_AlphaMax
@ GFU_AlphaMax
Definition: gdal.h:1875
GDALGetRasterDataType
GDALDataType GDALGetRasterDataType(GDALRasterBandH)
Fetch the pixel data type for this band.
Definition: gdalrasterband.cpp:915
GDALCreateColorRamp
void GDALCreateColorRamp(GDALColorTableH hTable, int nStartIndex, const GDALColorEntry *psStartColor, int nEndIndex, const GDALColorEntry *psEndColor)
Create color ramp.
Definition: gdalcolortable.cpp:442
GDALGetDataTypeName
const char * GDALGetDataTypeName(GDALDataType)
Get name of data type.
Definition: gdal_misc.cpp:662
GCI_YCbCr_CbBand
@ GCI_YCbCr_CbBand
Definition: gdal.h:243
GDALGetSpatialRef
OGRSpatialReferenceH GDALGetSpatialRef(GDALDatasetH)
Fetch the spatial reference for this dataset.
Definition: gdaldataset.cpp:1114
GFU_MaxCount
@ GFU_MaxCount
Definition: gdal.h:1876
GDALGetRasterNoDataValue
double GDALGetRasterNoDataValue(GDALRasterBandH, int *)
Fetch the no data value for this band.
Definition: gdalrasterband.cpp:1745
GDALRasterIOExtraArg::dfYSize
double dfYSize
Definition: gdal.h:205
GPI_Gray
@ GPI_Gray
Definition: gdal.h:254
GDALRasterBandAsMDArray
GDALMDArrayH GDALRasterBandAsMDArray(GDALRasterBandH)
Return a view of this raster band as a 2D multidimensional GDALMDArray.
Definition: gdalmultidim.cpp:13174
GDALRATGetTableType
GDALRATTableType GDALRATGetTableType(GDALRasterAttributeTableH hRAT)
Get Rat Table Type.
Definition: gdal_rat.cpp:572
GDALDatasetAddRelationship
bool GDALDatasetAddRelationship(GDALDatasetH hDS, GDALRelationshipH hRelationship, char **ppszFailureReason)
Add a relationship to the dataset.
Definition: gdaldataset.cpp:9057
GDALDatasetCreateLayer
OGRLayerH GDALDatasetCreateLayer(GDALDatasetH, const char *, OGRSpatialReferenceH, OGRwkbGeometryType, CSLConstList)
This function attempts to create a new layer on the dataset with the indicated name,...
Definition: gdaldataset.cpp:4833
GDALDatasetGetLayerByName
OGRLayerH GDALDatasetGetLayerByName(GDALDatasetH, const char *)
Fetch a layer by name.
Definition: gdaldataset.cpp:4608
GDALRelationshipGetLeftMappingTableFields
char ** GDALRelationshipGetLeftMappingTableFields(GDALRelationshipH)
Get the names of the mapping table fields which correspond to the participating fields from the left ...
Definition: gdalrelationship.cpp:365
GDALSetRasterNoDataValue
CPLErr GDALSetRasterNoDataValue(GDALRasterBandH, double)
Set the no data value for this band.
Definition: gdalrasterband.cpp:1943
GDALGroupGetAttributes
GDALAttributeH * GDALGroupGetAttributes(GDALGroupH hGroup, size_t *pnCount, CSLConstList papszOptions)
Return the list of attributes contained in this group.
Definition: gdalmultidim.cpp:11002
GDALSetRasterOffset
CPLErr GDALSetRasterOffset(GDALRasterBandH hBand, double dfNewOffset)
Set scaling offset.
Definition: gdalrasterband.cpp:2908
CPLErr
CPLErr
Error category.
Definition: cpl_error.h:52
GDALMDArraySetSpatialRef
int GDALMDArraySetSpatialRef(GDALMDArrayH, OGRSpatialReferenceH)
Assign a spatial reference system object to the array.
Definition: gdalmultidim.cpp:12295
GDALWriteWorldFile
int GDALWriteWorldFile(const char *, const char *, double *)
Write ESRI world file.
Definition: gdal_misc.cpp:2295
GDALRelationshipGetRightTableName
const char * GDALRelationshipGetRightTableName(GDALRelationshipH)
Get the name of the right (or related/destination) table in the relationship.
Definition: gdalrelationship.cpp:166
GDALGetMaskBand
GDALRasterBandH GDALGetMaskBand(GDALRasterBandH hBand)
Return the mask band associated with the band.
Definition: gdalrasterband.cpp:7312
GDALGroupDeleteAttribute
bool GDALGroupDeleteAttribute(GDALGroupH hGroup, const char *pszName, CSLConstList papszOptions)
Delete an attribute from a group.
Definition: gdalmultidim.cpp:11220
GDALCopyWords64
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:3308
GDALRasterIO
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:435
GDALMDArraySetScale
int GDALMDArraySetScale(GDALMDArrayH hArray, double dfScale)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:11852
GDALDerivedPixelFunc
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:1437
GDALRasterIOExtraArg::dfXSize
double dfXSize
Definition: gdal.h:202
GDALGetRasterNoDataValueAsInt64
int64_t GDALGetRasterNoDataValueAsInt64(GDALRasterBandH, int *)
Fetch the no data value for this band.
Definition: gdalrasterband.cpp:1805
GDALGetCacheUsed
int GDALGetCacheUsed(void)
Get cache memory used.
Definition: gdalrasterblock.cpp:322
GDAL_GCP::dfGCPZ
double dfGCPZ
Elevation of GCP, or zero if not known.
Definition: gdal.h:1071
GDALRPCInfoV2::dfLAT_OFF
double dfLAT_OFF
Definition: gdal.h:1773
GDALDatasetGetVirtualMem
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:896
GPI_CMYK
@ GPI_CMYK
Definition: gdal.h:256
GDALRelationshipSetLeftTableFields
void GDALRelationshipSetLeftTableFields(GDALRelationshipH, CSLConstList)
Sets the names of the participating fields from the left table in the relationship.
Definition: gdalrelationship.cpp:302
GDALRasterIOExtraArg::dfYOff
double dfYOff
Definition: gdal.h:199
GPI_HLS
@ GPI_HLS
Definition: gdal.h:257
GDT_Byte
@ GDT_Byte
Definition: gdal.h:66
GPI_RGB
@ GPI_RGB
Definition: gdal.h:255
GDALMDArrayGetMask
GDALMDArrayH GDALMDArrayGetMask(GDALMDArrayH hArray, CSLConstList papszOptions)
Return an array that is a mask for the current array.
Definition: gdalmultidim.cpp:12189
GDALDecToDMS
const char * GDALDecToDMS(double, const char *, int)
Translate a decimal degrees value to a DMS string with hemisphere.
Definition: gdal_misc.cpp:2553
GDALDataTypeIsConversionLossy
int GDALDataTypeIsConversionLossy(GDALDataType eTypeFrom, GDALDataType eTypeTo)
Is conversion from eTypeFrom to eTypeTo potentially lossy.
Definition: gdal_misc.cpp:592
GDALIdentifyDriverEx
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:2627
GDALRATGetRowCount
int GDALRATGetRowCount(GDALRasterAttributeTableH)
Fetch row count.
Definition: gdal_rat.cpp:1441
GDALExtendedDataTypeSubType
GDALExtendedDataTypeSubType
Enumeration giving the subtype of a GDALExtendedDataType.
Definition: gdal.h:333
GDALExtendedDataTypeGetComponents
GDALEDTComponentH * GDALExtendedDataTypeGetComponents(GDALExtendedDataTypeH hEDT, size_t *pnCount)
Return the components of the data type (only valid when GetClass() == GEDTC_COMPOUND)
Definition: gdalmultidim.cpp:10558
GDALRATSetRowCount
void GDALRATSetRowCount(GDALRasterAttributeTableH, int)
Set row count.
Definition: gdal_rat.cpp:335
GDALRelationshipSetRightTableFields
void GDALRelationshipSetRightTableFields(GDALRelationshipH, CSLConstList)
Sets the names of the participating fields from the right table in the relationship.
Definition: gdalrelationship.cpp:334
GDALMDArrayGetDimensions
GDALDimensionH * GDALMDArrayGetDimensions(GDALMDArrayH hArray, size_t *pnCount)
Return the dimensions of the array.
Definition: gdalmultidim.cpp:11364
CPL_RESTRICT
#define CPL_RESTRICT
restrict keyword to declare that pointers do not alias
Definition: cpl_port.h:1022
GDALGetOverview
GDALRasterBandH GDALGetOverview(GDALRasterBandH, int)
Fetch overview raster band object.
Definition: gdalrasterband.cpp:2657
GDALSetMetadata
CPLErr GDALSetMetadata(GDALMajorObjectH, CSLConstList, const char *)
Set metadata.
Definition: gdalmajorobject.cpp:315
GDALDataTypeIsSigned
int GDALDataTypeIsSigned(GDALDataType)
Is data type signed?
Definition: gdal_misc.cpp:550
GDALExtendedDataTypeH
struct GDALExtendedDataTypeHS * GDALExtendedDataTypeH
Opaque type for C++ GDALExtendedDataType.
Definition: gdal.h:342
GDALRIOResampleAlg
GDALRIOResampleAlg
RasterIO() resampling method.
Definition: gdal.h:142
GDALGetDatasetDriver
GDALDriverH GDALGetDatasetDriver(GDALDatasetH)
Fetch the driver to which this dataset relates.
Definition: gdaldataset.cpp:1432
GDALSetSpatialRef
CPLErr GDALSetSpatialRef(GDALDatasetH, OGRSpatialReferenceH)
Set the spatial reference system for this dataset.
Definition: gdaldataset.cpp:1222
GDALDestroyColorTable
void GDALDestroyColorTable(GDALColorTableH)
Destroys a color table.
Definition: gdalcolortable.cpp:94
GDALGetRasterColorTable
GDALColorTableH GDALGetRasterColorTable(GDALRasterBandH)
Fetch the color table associated with band.
Definition: gdalrasterband.cpp:2476
GDALMDArrayTranspose
GDALMDArrayH GDALMDArrayTranspose(GDALMDArrayH hArray, size_t nNewAxisCount, const int *panMapNewAxisToOldAxis)
Return a view of the array whose axis have been reordered.
Definition: gdalmultidim.cpp:12135
GDALInvGeoTransform
int GDALInvGeoTransform(double *padfGeoTransformIn, double *padfInvGeoTransformOut)
Invert Geotransform.
Definition: gdaltransformer.cpp:4310
GDALRelationshipSetRightMappingTableFields
void GDALRelationshipSetRightMappingTableFields(GDALRelationshipH, CSLConstList)
Sets the names of the mapping table fields which correspond to the participating fields from the righ...
Definition: gdalrelationship.cpp:463
GDALSubdatasetInfoH
struct GDALSubdatasetInfo * GDALSubdatasetInfoH
Opaque type used for the C bindings of the C++ GDALSubdatasetInfo class.
Definition: gdal.h:1310
GDALDatasetRasterIOEx
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:2769
GDALRelationshipSetForwardPathLabel
void GDALRelationshipSetForwardPathLabel(GDALRelationshipH, const char *)
Sets the label of the forward path for the relationship.
Definition: gdalrelationship.cpp:575
GCI_AlphaBand
@ GCI_AlphaBand
Definition: gdal.h:234
GDALRelationshipCardinality
GDALRelationshipCardinality
Cardinality of relationship.
Definition: gdal.h:1968
GDALDimensionSetIndexingVariable
int GDALDimensionSetIndexingVariable(GDALDimensionH hDim, GDALMDArrayH hArray)
Set the variable that is used to index the dimension.
Definition: gdalmultidim.cpp:13103
GDALMDArrayGetUnscaled
GDALMDArrayH GDALMDArrayGetUnscaled(GDALMDArrayH hArray)
Return an array that is the unscaled version of the current one.
Definition: gdalmultidim.cpp:12167
GDALRATGetLinearBinning
int GDALRATGetLinearBinning(GDALRasterAttributeTableH, double *, double *)
Get linear binning information.
Definition: gdal_rat.cpp:550
GDALGroupGetAttribute
GDALAttributeH GDALGroupGetAttribute(GDALGroupH hGroup, const char *pszName)
Return an attribute by its name.
Definition: gdalmultidim.cpp:10973
GDALGroupGetName
const char * GDALGroupGetName(GDALGroupH hGroup)
Return the name of the group.
Definition: gdalmultidim.cpp:10695
GDALComputeRasterMinMax
CPLErr GDALComputeRasterMinMax(GDALRasterBandH hBand, int bApproxOK, double adfMinMax[2])
Compute the min/max values for a band.
Definition: gdalrasterband.cpp:6804
GDALPaletteInterp
GDALPaletteInterp
Definition: gdal.h:252
GDALGetColorEntryAsRGB
int GDALGetColorEntryAsRGB(GDALColorTableH, int, GDALColorEntry *)
Fetch a table entry in RGB format.
Definition: gdalcolortable.cpp:182
GDALRATValuesIOAsString
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:290
GDALRATSetValueAsString
void GDALRATSetValueAsString(GDALRasterAttributeTableH, int, int, const char *)
Set field value from string.
Definition: gdal_rat.cpp:1727
GDALRPCInfoV2
Structure to store Rational Polynomial Coefficients / Rigorous Projection Model.
Definition: gdal.h:1769
GDALMDArrayResize
bool GDALMDArrayResize(GDALMDArrayH hArray, const GUInt64 *panNewDimSizes, CSLConstList papszOptions)
Resize an array to new dimensions.
Definition: gdalmultidim.cpp:11827
GDALBeginAsyncReader
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:4184
GDALMDArrayGetFullName
const char * GDALMDArrayGetFullName(GDALMDArrayH hArray)
Return array full name.
Definition: gdalmultidim.cpp:11312
GDALDatasetGetLayer
OGRLayerH GDALDatasetGetLayer(GDALDatasetH, int)
Fetch a layer by index.
Definition: gdaldataset.cpp:4572
GDALDatasetIsLayerPrivate
int GDALDatasetIsLayerPrivate(GDALDatasetH, int)
Returns true if the layer at the specified index is deemed a private or system table,...
Definition: gdaldataset.cpp:4642
GDALRasterIOExtraArg::nVersion
int nVersion
Definition: gdal.h:178
GDALRelationshipSetBackwardPathLabel
void GDALRelationshipSetBackwardPathLabel(GDALRelationshipH, const char *)
Sets the label of the backward path for the relationship.
Definition: gdalrelationship.cpp:643
GRIORA_Bilinear
@ GRIORA_Bilinear
Definition: gdal.h:145
GDALCreateCopy
GDALDatasetH GDALCreateCopy(GDALDriverH, const char *, GDALDatasetH, int, CSLConstList, GDALProgressFunc, void *)
Create a copy of a dataset.
Definition: gdaldriver.cpp:1383
GDALColorEntry::c1
short c1
Definition: gdal.h:1812
OGRLayerH
void * OGRLayerH
Opaque type for a layer (OGRLayer)
Definition: ogr_api.h:623
GDALLoadTabFile
int GDALLoadTabFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for MapInfo .tab files.
Definition: gdal_misc.cpp:1785
GFU_BlueMin
@ GFU_BlueMin
Definition: gdal.h:1870
GDALSubdatasetInfo
The GDALSubdatasetInfo abstract class provides methods to extract and manipulate subdataset informati...
Definition: gdalsubdatasetinfo.h:41
GDALDataTypeUnion
GDALDataType GDALDataTypeUnion(GDALDataType, GDALDataType)
Return the smallest data type that can fully express both input data types.
Definition: gdal_misc.cpp:138
GDALExtendedDataTypeCreateStringEx
GDALExtendedDataTypeH GDALExtendedDataTypeCreateStringEx(size_t nMaxStringLength, GDALExtendedDataTypeSubType eSubType)
Return a new GDALExtendedDataType of class GEDTC_STRING.
Definition: gdalmultidim.cpp:10351
GDALRasterBandH
void * GDALRasterBandH
Opaque type used for the C bindings of the C++ GDALRasterBand class.
Definition: gdal.h:294
GDALGetRasterYSize
int GDALGetRasterYSize(GDALDatasetH)
Fetch raster height in pixels.
Definition: gdaldataset.cpp:928
GDALGetGCPCount
int GDALGetGCPCount(GDALDatasetH)
Get number of GCPs.
Definition: gdaldataset.cpp:1680
GDALGetProjectionRef
const char * GDALGetProjectionRef(GDALDatasetH)
Fetch the projection definition string for this dataset.
Definition: gdaldataset.cpp:1133
GEDTC_COMPOUND
@ GEDTC_COMPOUND
Compound data type.
Definition: gdal.h:327
GDALSetRasterNoDataValueAsInt64
CPLErr GDALSetRasterNoDataValueAsInt64(GDALRasterBandH, int64_t)
Set the no data value for this band.
Definition: gdalrasterband.cpp:2015
GDALComposeGeoTransforms
void GDALComposeGeoTransforms(const double *padfGeoTransform1, const double *padfGeoTransform2, double *padfGeoTransformOut)
Compose two geotransforms.
Definition: gdal_misc.cpp:2922
GDALGetDefaultRAT
GDALRasterAttributeTableH GDALGetDefaultRAT(GDALRasterBandH hBand)
Fetch default Raster Attribute Table.
Definition: gdalrasterband.cpp:6939
GDALSetDefaultHistogramEx
CPLErr GDALSetDefaultHistogramEx(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, GUIntBig *panHistogram)
Set default histogram.
Definition: gdalrasterband.cpp:6895
GDALGroupOpenVectorLayer
OGRLayerH GDALGroupOpenVectorLayer(GDALGroupH hGroup, const char *pszVectorLayerName, CSLConstList papszOptions)
Open and return a vector layer.
Definition: gdalmultidim.cpp:10892
GDALSwapWords
void GDALSwapWords(void *pData, int nWordSize, int nWordCount, int nWordSkip)
Byte swap words in-place.
Definition: rasterio.cpp:1981
GDALDatasetDeleteLayer
OGRErr GDALDatasetDeleteLayer(GDALDatasetH, int)
Delete the indicated layer from the datasource.
Definition: gdaldataset.cpp:4673
GDALMDArrayGetDataType
GDALExtendedDataTypeH GDALMDArrayGetDataType(GDALMDArrayH hArray)
Return the data type.
Definition: gdalmultidim.cpp:11405
GDALMDArrayGetBlockSize
GUInt64 * GDALMDArrayGetBlockSize(GDALMDArrayH hArray, size_t *pnCount)
Return the "natural" block size of the array along all dimensions.
Definition: gdalmultidim.cpp:12034
GDALDatasetH
void * GDALDatasetH
Opaque type used for the C bindings of the C++ GDALDataset class.
Definition: gdal.h:291
GDALReferenceDataset
int GDALReferenceDataset(GDALDatasetH)
Add one to dataset reference count.
Definition: gdaldataset.cpp:1470
GDALCreateDriver
GDALDriverH GDALCreateDriver(void)
Create a GDALDriver.
Definition: gdaldriver.cpp:77
GDALMDArraySetScaleEx
int GDALMDArraySetScaleEx(GDALMDArrayH hArray, double dfScale, GDALDataType eStorageType)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:11871
GDALRegenerateOverviews
CPLErr GDALRegenerateOverviews(GDALRasterBandH hSrcBand, int nOverviewCount, GDALRasterBandH *pahOverviewBands, const char *pszResampling, GDALProgressFunc pfnProgress, void *pProgressData)
Generate downsampled overviews.
Definition: overview.cpp:4256
GDALGetDataCoverageStatus
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:8031
GDALRATTranslateToColorTable
GDALColorTableH GDALRATTranslateToColorTable(GDALRasterAttributeTableH, int nEntryCount)
Translate to a color table.
Definition: gdal_rat.cpp:1091
GDALDataTypeIsComplex
int GDALDataTypeIsComplex(GDALDataType)
Is data type complex?
Definition: gdal_misc.cpp:426
GDALGetRasterMaximum
double GDALGetRasterMaximum(GDALRasterBandH, int *pbSuccess)
Fetch the maximum value for this band.
Definition: gdalrasterband.cpp:2240
GDALGetAsyncStatusTypeName
const char * GDALGetAsyncStatusTypeName(GDALAsyncStatusType)
Get name of AsyncStatus data type.
Definition: gdal_misc.cpp:967
GDALGetRasterUnitType
const char * GDALGetRasterUnitType(GDALRasterBandH)
Return raster unit type.
Definition: gdalrasterband.cpp:3057
GDALSubdatasetInfoGetPathComponent
char * GDALSubdatasetInfoGetPathComponent(GDALSubdatasetInfoH hInfo)
Returns the file path component of a subdataset descriptor effectively stripping the information abou...
Definition: gdalsubdatasetinfo.cpp:81
GDALDatasetGetFieldDomain
OGRFieldDomainH GDALDatasetGetFieldDomain(GDALDatasetH hDS, const char *pszName)
Get a field domain from its name.
Definition: gdaldataset.cpp:8665
GDALRATSetLinearBinning
CPLErr GDALRATSetLinearBinning(GDALRasterAttributeTableH, double, double)
Set linear binning information.
Definition: gdal_rat.cpp:507
GFU_Green
@ GFU_Green
Definition: gdal.h:1865
GDALRelationshipSetType
void GDALRelationshipSetType(GDALRelationshipH, GDALRelationshipType)
Sets the type of the relationship.
Definition: gdalrelationship.cpp:509
GCI_MagentaBand
@ GCI_MagentaBand
Definition: gdal.h:239
GDALSetRasterColorTable
CPLErr GDALSetRasterColorTable(GDALRasterBandH, GDALColorTableH)
Set the raster color table.
Definition: gdalrasterband.cpp:2528
GDALDriverH
void * GDALDriverH
Opaque type used for the C bindings of the C++ GDALDriver class.
Definition: gdal.h:297
GDALDimensionH
struct GDALDimensionHS * GDALDimensionH
Opaque type for C++ GDALDimension.
Definition: gdal.h:352
GDALComputeRasterStatistics
CPLErr GDALComputeRasterStatistics(GDALRasterBandH, int bApproxOK, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GDALProgressFunc pfnProgress, void *pProgressData)
Compute image statistics.
Definition: gdalrasterband.cpp:6131
GDALRelationshipType
GDALRelationshipType
Type of relationship.
Definition: gdal.h:1984
GDALDatasetSetStyleTable
void GDALDatasetSetStyleTable(GDALDatasetH, OGRStyleTableH)
Set dataset style table.
Definition: gdaldataset.cpp:5069