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 * SPDX-License-Identifier: MIT
13 ****************************************************************************/
14
15#ifndef GDAL_H_INCLUDED
16#define GDAL_H_INCLUDED
17
24#ifndef DOXYGEN_SKIP
25#if defined(GDAL_COMPILATION)
26#define DO_NOT_DEFINE_GDAL_DATE_NAME
27#endif
28#include "gdal_version.h"
29#include "cpl_port.h"
30#include "cpl_error.h"
31#include "cpl_progress.h"
32#include "cpl_virtualmem.h"
33#include "cpl_minixml.h"
34#include "ogr_api.h"
35#endif
36
37#include <stdbool.h>
38#include <stdint.h>
39
40/* -------------------------------------------------------------------- */
41/* Significant constants. */
42/* -------------------------------------------------------------------- */
43
44 CPL_C_START
45
47 typedef enum
48{ 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,
62 /* TODO?(#6879): GDT_CInt64 */ GDT_CFloat32 = 10, GDT_CFloat64 = 11,
65 GDT_TypeCount = 15 /* maximum type # + 1 */
66} GDALDataType;
67
68 int CPL_DLL CPL_STDCALL GDALGetDataTypeSize(GDALDataType); // Deprecated.
69 int CPL_DLL CPL_STDCALL GDALGetDataTypeSizeBits(GDALDataType eDataType);
70 int CPL_DLL CPL_STDCALL GDALGetDataTypeSizeBytes(GDALDataType);
71 int CPL_DLL CPL_STDCALL GDALDataTypeIsComplex(GDALDataType);
72 int CPL_DLL CPL_STDCALL GDALDataTypeIsInteger(GDALDataType);
73 int CPL_DLL CPL_STDCALL GDALDataTypeIsFloating(GDALDataType);
74 int CPL_DLL CPL_STDCALL GDALDataTypeIsSigned(GDALDataType);
75 const char CPL_DLL *CPL_STDCALL GDALGetDataTypeName(GDALDataType);
76 GDALDataType CPL_DLL CPL_STDCALL GDALGetDataTypeByName(const char *);
77 GDALDataType CPL_DLL CPL_STDCALL GDALDataTypeUnion(GDALDataType, GDALDataType);
78 GDALDataType CPL_DLL CPL_STDCALL GDALDataTypeUnionWithValue(GDALDataType eDT,
79 double dValue,
80 int bComplex);
81 GDALDataType CPL_DLL CPL_STDCALL GDALFindDataType(int nBits, int bSigned,
82 int bFloating, int bComplex);
83 GDALDataType CPL_DLL CPL_STDCALL GDALFindDataTypeForValue(double dValue,
84 int bComplex);
85 double CPL_DLL GDALAdjustValueToDataType(GDALDataType eDT, double dfValue,
86 int *pbClamped, int *pbRounded);
87 bool CPL_DLL GDALIsValueExactAs(double dfValue, GDALDataType eDT);
88 GDALDataType CPL_DLL CPL_STDCALL GDALGetNonComplexDataType(GDALDataType);
89 int CPL_DLL CPL_STDCALL GDALDataTypeIsConversionLossy(GDALDataType eTypeFrom,
90 GDALDataType eTypeTo);
91
95 typedef enum
96{
97 GARIO_PENDING = 0,
98 GARIO_UPDATE = 1,
99 GARIO_ERROR = 2,
100 GARIO_COMPLETE = 3,
101 GARIO_TypeCount = 4
102} GDALAsyncStatusType;
103
104 const char CPL_DLL *CPL_STDCALL GDALGetAsyncStatusTypeName(GDALAsyncStatusType);
105 GDALAsyncStatusType CPL_DLL CPL_STDCALL
106 GDALGetAsyncStatusTypeByName(const char *);
107
109 typedef enum
110{ GA_ReadOnly = 0, GA_Update = 1
113} GDALAccess;
114
116 typedef enum
117{ GF_Read = 0, GF_Write = 1
120} GDALRWFlag;
121
122/* NOTE: values are selected to be consistent with GDALResampleAlg of
123 * alg/gdalwarper.h */
127 typedef enum
128{ GRIORA_NearestNeighbour = 0, GRIORA_Bilinear = 1, GRIORA_Cubic = 2, GRIORA_CubicSpline = 3, GRIORA_Lanczos = 4, GRIORA_Average = 5,
137 GRIORA_Mode = 6, GRIORA_Gauss = 7,
139 /* NOTE: values 8 to 13 are reserved for max,min,med,Q1,Q3,sum */
141 GRIORA_RESERVED_START = 8,
142 GRIORA_RESERVED_END = 13,
148 GRIORA_RMS = 14,
150 GRIORA_LAST = GRIORA_RMS
152} GDALRIOResampleAlg;
153
154/* NOTE to developers: only add members, and if so edit INIT_RASTERIO_EXTRA_ARG
155 */
160 typedef struct
161{
163 int nVersion;
164
166 GDALRIOResampleAlg eResampleAlg;
167
169 GDALProgressFunc pfnProgress;
171 void *pProgressData;
172
178 int bFloatingPointWindowValidity;
181 double dfXOff;
184 double dfYOff;
187 double dfXSize;
190 double dfYSize;
191} GDALRasterIOExtraArg;
192
193#ifndef DOXYGEN_SKIP
194#define RASTERIO_EXTRA_ARG_CURRENT_VERSION 1
195#endif
196
200#define INIT_RASTERIO_EXTRA_ARG(s) \
201 do \
202 { \
203 (s).nVersion = RASTERIO_EXTRA_ARG_CURRENT_VERSION; \
204 (s).eResampleAlg = GRIORA_NearestNeighbour; \
205 (s).pfnProgress = CPL_NULLPTR; \
206 (s).pProgressData = CPL_NULLPTR; \
207 (s).bFloatingPointWindowValidity = FALSE; \
208 } while (0)
209
216#define GCI_IR_Start 20
217
224#define GCI_IR_End 29
225
233#define GCI_SAR_Start 30
234
242#define GCI_SAR_End 39
243
256 typedef enum
257{ GCI_Undefined = 0, GCI_GrayIndex = 1, GCI_PaletteIndex = 2,
262 GCI_RedBand = 3,
264 GCI_GreenBand = 4,
266 GCI_BlueBand = 5, GCI_AlphaBand = 6, GCI_HueBand = 7, GCI_SaturationBand = 8, GCI_LightnessBand = 9, GCI_CyanBand = 10, GCI_MagentaBand = 11,
274 GCI_YellowBand = 12, GCI_BlackBand = 13, GCI_YCbCr_YBand = 14, GCI_YCbCr_CbBand = 15, GCI_YCbCr_CrBand = 16,
279
280 /* GDAL 3.10 addition: begin */ GCI_PanBand = 17, GCI_CoastalBand = 18, GCI_RedEdgeBand = 19,
284 GCI_NIRBand =
286 GCI_IR_Start + 0, GCI_SWIRBand =
288 GCI_IR_Start + 1, GCI_MWIRBand =
290 GCI_IR_Start + 2, GCI_LWIRBand =
292 GCI_IR_Start + 3, GCI_TIRBand =
294 GCI_IR_Start + 4, GCI_OtherIRBand =
296 GCI_IR_Start + 5,
298 GCI_IR_Reserved_1 = GCI_IR_Start + 6,
300 GCI_IR_Reserved_2 = GCI_IR_Start + 7,
302 GCI_IR_Reserved_3 = GCI_IR_Start + 8,
304 GCI_IR_Reserved_4 = GCI_IR_Start + 9,
305
307 GCI_SAR_Ka_Band = GCI_SAR_Start + 0,
309 GCI_SAR_K_Band = GCI_SAR_Start + 1,
311 GCI_SAR_Ku_Band = GCI_SAR_Start + 2,
313 GCI_SAR_X_Band = GCI_SAR_Start + 3,
315 GCI_SAR_C_Band = GCI_SAR_Start + 4,
317 GCI_SAR_S_Band = GCI_SAR_Start + 5,
319 GCI_SAR_L_Band = GCI_SAR_Start + 6,
321 GCI_SAR_P_Band = GCI_SAR_Start + 7,
323 GCI_SAR_Reserved_1 = GCI_SAR_Start + 8,
325 GCI_SAR_Reserved_2 = GCI_SAR_Start + 9,
326
327 /* GDAL 3.10 addition: end */
328 GCI_Max =
330 GCI_SAR_Reserved_2
331} GDALColorInterp;
332
333 const char CPL_DLL *GDALGetColorInterpretationName(GDALColorInterp);
334 GDALColorInterp CPL_DLL GDALGetColorInterpretationByName(const char *pszName);
335
337 typedef enum
338{ GPI_Gray = 0, GPI_RGB = 1, GPI_CMYK = 2, GPI_HLS = 3
343} GDALPaletteInterp;
344
345 const char CPL_DLL *GDALGetPaletteInterpretationName(GDALPaletteInterp);
346
347/* "well known" metadata items. */
348
351#define GDALMD_AREA_OR_POINT "AREA_OR_POINT"
354#define GDALMD_AOP_AREA "Area"
357#define GDALMD_AOP_POINT "Point"
358
359/* -------------------------------------------------------------------- */
360/* GDAL Specific error codes. */
361/* */
362/* error codes 100 to 299 reserved for GDAL. */
363/* -------------------------------------------------------------------- */
364#ifndef DOXYGEN_SKIP
365#define CPLE_WrongFormat CPL_STATIC_CAST(CPLErrorNum, 200)
366#endif
367
368/* -------------------------------------------------------------------- */
369/* Define handle types related to various internal classes. */
370/* -------------------------------------------------------------------- */
371
373 typedef void *GDALMajorObjectH;
374
376 typedef void *GDALDatasetH;
377
379 typedef void *GDALRasterBandH;
380
382 typedef void *GDALDriverH;
383
385 typedef void *GDALColorTableH;
386
389 typedef void *GDALRasterAttributeTableH;
390
392 typedef void *GDALAsyncReaderH;
393
397 typedef void *GDALRelationshipH;
398
400 typedef GIntBig GSpacing;
401
405 typedef enum
406{
408 GEDTC_NUMERIC,
410 GEDTC_STRING,
412 GEDTC_COMPOUND
413} GDALExtendedDataTypeClass;
414
418 typedef enum
419{
421 GEDTST_NONE,
423 GEDTST_JSON
424} GDALExtendedDataTypeSubType;
425
427 typedef struct GDALExtendedDataTypeHS *GDALExtendedDataTypeH;
429 typedef struct GDALEDTComponentHS *GDALEDTComponentH;
431 typedef struct GDALGroupHS *GDALGroupH;
433 typedef struct GDALMDArrayHS *GDALMDArrayH;
435 typedef struct GDALAttributeHS *GDALAttributeH;
437 typedef struct GDALDimensionHS *GDALDimensionH;
438
439/* ==================================================================== */
440/* Registration/driver related. */
441/* ==================================================================== */
442
444#define GDAL_DMD_LONGNAME "DMD_LONGNAME"
445
447#define GDAL_DMD_HELPTOPIC "DMD_HELPTOPIC"
448
450#define GDAL_DMD_MIMETYPE "DMD_MIMETYPE"
451
453#define GDAL_DMD_EXTENSION "DMD_EXTENSION"
454
459#define GDAL_DMD_CONNECTION_PREFIX "DMD_CONNECTION_PREFIX"
460
464#define GDAL_DMD_EXTENSIONS "DMD_EXTENSIONS"
465
467#define GDAL_DMD_CREATIONOPTIONLIST "DMD_CREATIONOPTIONLIST"
468
472#define GDAL_DMD_MULTIDIM_DATASET_CREATIONOPTIONLIST \
473 "DMD_MULTIDIM_DATASET_CREATIONOPTIONLIST"
474
478#define GDAL_DMD_MULTIDIM_GROUP_CREATIONOPTIONLIST \
479 "DMD_MULTIDIM_GROUP_CREATIONOPTIONLIST"
480
484#define GDAL_DMD_MULTIDIM_DIMENSION_CREATIONOPTIONLIST \
485 "DMD_MULTIDIM_DIMENSION_CREATIONOPTIONLIST"
486
490#define GDAL_DMD_MULTIDIM_ARRAY_CREATIONOPTIONLIST \
491 "DMD_MULTIDIM_ARRAY_CREATIONOPTIONLIST"
492
496#define GDAL_DMD_MULTIDIM_ARRAY_OPENOPTIONLIST \
497 "DMD_MULTIDIM_ARRAY_OPENOPTIONLIST"
498
502#define GDAL_DMD_MULTIDIM_ATTRIBUTE_CREATIONOPTIONLIST \
503 "DMD_MULTIDIM_ATTRIBUTE_CREATIONOPTIONLIST"
504
508#define GDAL_DMD_OPENOPTIONLIST "DMD_OPENOPTIONLIST"
509
512#define GDAL_DMD_CREATIONDATATYPES "DMD_CREATIONDATATYPES"
513
518#define GDAL_DMD_CREATIONFIELDDATATYPES "DMD_CREATIONFIELDDATATYPES"
519
524#define GDAL_DMD_CREATIONFIELDDATASUBTYPES "DMD_CREATIONFIELDDATASUBTYPES"
525
543#define GDAL_DMD_CREATION_FIELD_DEFN_FLAGS "DMD_CREATION_FIELD_DEFN_FLAGS"
544
553#define GDAL_DMD_SUBDATASETS "DMD_SUBDATASETS"
554
563#define GDAL_DMD_NUMERIC_FIELD_WIDTH_INCLUDES_DECIMAL_SEPARATOR \
564 "DMD_NUMERIC_FIELD_WIDTH_INCLUDES_DECIMAL_SEPARATOR"
565
574#define GDAL_DMD_NUMERIC_FIELD_WIDTH_INCLUDES_SIGN \
575 "DMD_NUMERIC_FIELD_WIDTH_INCLUDES_SIGN"
576
578#define GDAL_DCAP_OPEN "DCAP_OPEN"
579
588#define GDAL_DCAP_CREATE "DCAP_CREATE"
589
594#define GDAL_DCAP_CREATE_MULTIDIMENSIONAL "DCAP_CREATE_MULTIDIMENSIONAL"
595
604#define GDAL_DCAP_CREATECOPY "DCAP_CREATECOPY"
605
610#define GDAL_DCAP_VECTOR_TRANSLATE_FROM "DCAP_VECTOR_TRANSLATE_FROM"
611
617#define GDAL_DCAP_CREATECOPY_MULTIDIMENSIONAL "DCAP_CREATECOPY_MULTIDIMENSIONAL"
618
622#define GDAL_DCAP_MULTIDIM_RASTER "DCAP_MULTIDIM_RASTER"
623
625#define GDAL_DCAP_SUBCREATECOPY "DCAP_SUBCREATECOPY"
626
629#define GDAL_DCAP_VIRTUALIO "DCAP_VIRTUALIO"
630
634#define GDAL_DCAP_RASTER "DCAP_RASTER"
635
639#define GDAL_DCAP_VECTOR "DCAP_VECTOR"
640
644#define GDAL_DCAP_GNM "DCAP_GNM"
645
649#define GDAL_DCAP_CREATE_LAYER "DCAP_CREATE_LAYER"
650
654#define GDAL_DCAP_DELETE_LAYER "DCAP_DELETE_LAYER"
655
659#define GDAL_DCAP_CREATE_FIELD "DCAP_CREATE_FIELD"
660
664#define GDAL_DCAP_DELETE_FIELD "DCAP_DELETE_FIELD"
665
669#define GDAL_DCAP_REORDER_FIELDS "DCAP_REORDER_FIELDS"
670
690#define GDAL_DMD_ALTER_FIELD_DEFN_FLAGS "GDAL_DMD_ALTER_FIELD_DEFN_FLAGS"
691
697#define GDAL_DMD_ILLEGAL_FIELD_NAMES "GDAL_DMD_ILLEGAL_FIELD_NAMES"
698
702#define GDAL_DCAP_NOTNULL_FIELDS "DCAP_NOTNULL_FIELDS"
703
707#define GDAL_DCAP_UNIQUE_FIELDS "DCAP_UNIQUE_FIELDS"
708
712#define GDAL_DCAP_DEFAULT_FIELDS "DCAP_DEFAULT_FIELDS"
713
718#define GDAL_DCAP_NOTNULL_GEOMFIELDS "DCAP_NOTNULL_GEOMFIELDS"
719
725#define GDAL_DCAP_NONSPATIAL "DCAP_NONSPATIAL"
726
730#define GDAL_DCAP_CURVE_GEOMETRIES "DCAP_CURVE_GEOMETRIES"
731
736#define GDAL_DCAP_MEASURED_GEOMETRIES "DCAP_MEASURED_GEOMETRIES"
737
742#define GDAL_DCAP_Z_GEOMETRIES "DCAP_Z_GEOMETRIES"
743
756#define GDAL_DMD_GEOMETRY_FLAGS "GDAL_DMD_GEOMETRY_FLAGS"
757
766#define GDAL_DCAP_FEATURE_STYLES "DCAP_FEATURE_STYLES"
767
771#define GDAL_DCAP_FEATURE_STYLES_READ "DCAP_FEATURE_STYLES_READ"
772
776#define GDAL_DCAP_FEATURE_STYLES_WRITE "DCAP_FEATURE_STYLES_WRITE"
777
782#define GDAL_DCAP_COORDINATE_EPOCH "DCAP_COORDINATE_EPOCH"
783
792#define GDAL_DCAP_MULTIPLE_VECTOR_LAYERS "DCAP_MULTIPLE_VECTOR_LAYERS"
793
798#define GDAL_DCAP_FIELD_DOMAINS "DCAP_FIELD_DOMAINS"
799
805#define GDAL_DCAP_RELATIONSHIPS "DCAP_RELATIONSHIPS"
806
811#define GDAL_DCAP_CREATE_RELATIONSHIP "DCAP_CREATE_RELATIONSHIP"
812
817#define GDAL_DCAP_DELETE_RELATIONSHIP "DCAP_DELETE_RELATIONSHIP"
818
823#define GDAL_DCAP_UPDATE_RELATIONSHIP "DCAP_UPDATE_RELATIONSHIP"
824
830#define GDAL_DCAP_FLUSHCACHE_CONSISTENT_STATE "DCAP_FLUSHCACHE_CONSISTENT_STATE"
831
840#define GDAL_DCAP_HONOR_GEOM_COORDINATE_PRECISION \
841 "DCAP_HONOR_GEOM_COORDINATE_PRECISION"
842
869#define GDAL_DMD_RELATIONSHIP_FLAGS "GDAL_DMD_RELATIONSHIP_FLAGS"
870
878#define GDAL_DMD_RELATIONSHIP_RELATED_TABLE_TYPES \
879 "GDAL_DMD_RELATIONSHIP_RELATED_TABLE_TYPES"
880
885#define GDAL_DCAP_RENAME_LAYERS "DCAP_RENAME_LAYERS"
886
896#define GDAL_DMD_CREATION_FIELD_DOMAIN_TYPES "DMD_CREATION_FIELD_DOMAIN_TYPES"
897
913#define GDAL_DMD_ALTER_GEOM_FIELD_DEFN_FLAGS "DMD_ALTER_GEOM_FIELD_DEFN_FLAGS"
914
936#define GDAL_DMD_SUPPORTED_SQL_DIALECTS "DMD_SUPPORTED_SQL_DIALECTS"
937
939#define GDAL_DMD_PLUGIN_INSTALLATION_MESSAGE "DMD_PLUGIN_INSTALLATION_MESSAGE"
946#define GDAL_DIM_TYPE_HORIZONTAL_X "HORIZONTAL_X"
947
952#define GDAL_DIM_TYPE_HORIZONTAL_Y "HORIZONTAL_Y"
953
957#define GDAL_DIM_TYPE_VERTICAL "VERTICAL"
958
962#define GDAL_DIM_TYPE_TEMPORAL "TEMPORAL"
963
967#define GDAL_DIM_TYPE_PARAMETRIC "PARAMETRIC"
968
969#define GDsCAddRelationship \
970 "AddRelationship"
972#define GDsCDeleteRelationship \
973 "DeleteRelationship"
975#define GDsCUpdateRelationship \
976 "UpdateRelationship"
979 void CPL_DLL CPL_STDCALL GDALAllRegister(void);
980 void CPL_DLL GDALRegisterPlugins(void);
981 CPLErr CPL_DLL GDALRegisterPlugin(const char *name);
982
983 GDALDatasetH CPL_DLL CPL_STDCALL
984 GDALCreate(GDALDriverH hDriver, const char *, int, int, int, GDALDataType,
985 CSLConstList) CPL_WARN_UNUSED_RESULT;
986 GDALDatasetH CPL_DLL CPL_STDCALL GDALCreateCopy(GDALDriverH, const char *,
987 GDALDatasetH, int, CSLConstList,
988 GDALProgressFunc,
989 void *) CPL_WARN_UNUSED_RESULT;
990
991 GDALDriverH CPL_DLL CPL_STDCALL GDALIdentifyDriver(const char *pszFilename,
992 CSLConstList papszFileList);
993
994 GDALDriverH CPL_DLL CPL_STDCALL GDALIdentifyDriverEx(
995 const char *pszFilename, unsigned int nIdentifyFlags,
996 const char *const *papszAllowedDrivers, const char *const *papszFileList);
997
998 GDALDatasetH CPL_DLL CPL_STDCALL
999 GDALOpen(const char *pszFilename, GDALAccess eAccess) CPL_WARN_UNUSED_RESULT;
1000 GDALDatasetH CPL_DLL CPL_STDCALL GDALOpenShared(const char *, GDALAccess)
1001 CPL_WARN_UNUSED_RESULT;
1002
1003/* Note: we define GDAL_OF_READONLY and GDAL_OF_UPDATE to be on purpose */
1004/* equals to GA_ReadOnly and GA_Update */
1005
1010#define GDAL_OF_READONLY 0x00
1011
1016#define GDAL_OF_UPDATE 0x01
1017
1022#define GDAL_OF_ALL 0x00
1023
1028#define GDAL_OF_RASTER 0x02
1029
1034#define GDAL_OF_VECTOR 0x04
1035
1040#define GDAL_OF_GNM 0x08
1041
1046#define GDAL_OF_MULTIDIM_RASTER 0x10
1047
1048#ifndef DOXYGEN_SKIP
1049#define GDAL_OF_KIND_MASK 0x1E
1050#endif
1051
1056#define GDAL_OF_SHARED 0x20
1057
1062#define GDAL_OF_VERBOSE_ERROR 0x40
1063
1070#define GDAL_OF_INTERNAL 0x80
1071
1081#define GDAL_OF_DEFAULT_BLOCK_ACCESS 0
1082
1091#define GDAL_OF_ARRAY_BLOCK_ACCESS 0x100
1092
1101#define GDAL_OF_HASHSET_BLOCK_ACCESS 0x200
1102
1103#ifndef DOXYGEN_SKIP
1104/* Reserved for a potential future alternative to GDAL_OF_ARRAY_BLOCK_ACCESS
1105 * and GDAL_OF_HASHSET_BLOCK_ACCESS */
1106#define GDAL_OF_RESERVED_1 0x300
1107
1109#define GDAL_OF_BLOCK_ACCESS_MASK 0x300
1110#endif
1111
1112#ifndef DOXYGEN_SKIP
1115#define GDAL_OF_FROM_GDALOPEN 0x400
1116#endif
1117
1124#define GDAL_OF_THREAD_SAFE 0x800
1125
1126 GDALDatasetH CPL_DLL CPL_STDCALL GDALOpenEx(
1127 const char *pszFilename, unsigned int nOpenFlags,
1128 const char *const *papszAllowedDrivers, const char *const *papszOpenOptions,
1129 const char *const *papszSiblingFiles) CPL_WARN_UNUSED_RESULT;
1130
1131 int CPL_DLL CPL_STDCALL GDALDumpOpenDatasets(FILE *);
1132
1133 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDriverByName(const char *);
1134 int CPL_DLL CPL_STDCALL GDALGetDriverCount(void);
1135 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDriver(int);
1136 GDALDriverH CPL_DLL CPL_STDCALL GDALCreateDriver(void);
1137 void CPL_DLL CPL_STDCALL GDALDestroyDriver(GDALDriverH);
1138 int CPL_DLL CPL_STDCALL GDALRegisterDriver(GDALDriverH);
1139 void CPL_DLL CPL_STDCALL GDALDeregisterDriver(GDALDriverH);
1140 void CPL_DLL CPL_STDCALL GDALDestroyDriverManager(void);
1141 void CPL_DLL GDALDestroy(void);
1142 CPLErr CPL_DLL CPL_STDCALL GDALDeleteDataset(GDALDriverH, const char *);
1143 CPLErr CPL_DLL CPL_STDCALL GDALRenameDataset(GDALDriverH,
1144 const char *pszNewName,
1145 const char *pszOldName);
1146 CPLErr CPL_DLL CPL_STDCALL GDALCopyDatasetFiles(GDALDriverH,
1147 const char *pszNewName,
1148 const char *pszOldName);
1149 int CPL_DLL CPL_STDCALL
1150 GDALValidateCreationOptions(GDALDriverH, CSLConstList papszCreationOptions);
1151 char CPL_DLL **GDALGetOutputDriversForDatasetName(const char *pszDestFilename,
1152 int nFlagRasterVector,
1153 bool bSingleMatch,
1154 bool bEmitWarning);
1155
1156/* The following are deprecated */
1157 const char CPL_DLL *CPL_STDCALL GDALGetDriverShortName(GDALDriverH);
1158 const char CPL_DLL *CPL_STDCALL GDALGetDriverLongName(GDALDriverH);
1159 const char CPL_DLL *CPL_STDCALL GDALGetDriverHelpTopic(GDALDriverH);
1160 const char CPL_DLL *CPL_STDCALL GDALGetDriverCreationOptionList(GDALDriverH);
1161
1162/* ==================================================================== */
1163/* GDAL_GCP */
1164/* ==================================================================== */
1165
1167 typedef struct
1168{
1170 char *pszId;
1171
1173 char *pszInfo;
1174
1176 double dfGCPPixel;
1178 double dfGCPLine;
1179
1181 double dfGCPX;
1182
1184 double dfGCPY;
1185
1187 double dfGCPZ;
1188} GDAL_GCP;
1189
1190 void CPL_DLL CPL_STDCALL GDALInitGCPs(int, GDAL_GCP *);
1191 void CPL_DLL CPL_STDCALL GDALDeinitGCPs(int, GDAL_GCP *);
1192 GDAL_GCP CPL_DLL *CPL_STDCALL GDALDuplicateGCPs(int, const GDAL_GCP *);
1193
1194 int CPL_DLL CPL_STDCALL GDALGCPsToGeoTransform(
1195 int nGCPCount, const GDAL_GCP *pasGCPs, double *padfGeoTransform,
1196 int bApproxOK) CPL_WARN_UNUSED_RESULT;
1197 int CPL_DLL CPL_STDCALL GDALInvGeoTransform(const double *padfGeoTransformIn,
1198 double *padfInvGeoTransformOut)
1199 CPL_WARN_UNUSED_RESULT;
1200 void CPL_DLL CPL_STDCALL GDALApplyGeoTransform(const double *, double, double,
1201 double *, double *);
1202 void CPL_DLL GDALComposeGeoTransforms(const double *padfGeoTransform1,
1203 const double *padfGeoTransform2,
1204 double *padfGeoTransformOut);
1205
1206/* ==================================================================== */
1207/* major objects (dataset, and, driver, drivermanager). */
1208/* ==================================================================== */
1209
1210 char CPL_DLL **CPL_STDCALL GDALGetMetadataDomainList(GDALMajorObjectH hObject);
1211 char CPL_DLL **CPL_STDCALL GDALGetMetadata(GDALMajorObjectH, const char *);
1212 CPLErr CPL_DLL CPL_STDCALL GDALSetMetadata(GDALMajorObjectH, CSLConstList,
1213 const char *);
1214 const char CPL_DLL *CPL_STDCALL GDALGetMetadataItem(GDALMajorObjectH,
1215 const char *, const char *);
1216 CPLErr CPL_DLL CPL_STDCALL GDALSetMetadataItem(GDALMajorObjectH, const char *,
1217 const char *, const char *);
1218 const char CPL_DLL *CPL_STDCALL GDALGetDescription(GDALMajorObjectH);
1219 void CPL_DLL CPL_STDCALL GDALSetDescription(GDALMajorObjectH, const char *);
1220
1221/* ==================================================================== */
1222/* GDALDataset class ... normally this represents one file. */
1223/* ==================================================================== */
1224
1226#define GDAL_DS_LAYER_CREATIONOPTIONLIST "DS_LAYER_CREATIONOPTIONLIST"
1227
1228 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDatasetDriver(GDALDatasetH);
1229 char CPL_DLL **CPL_STDCALL GDALGetFileList(GDALDatasetH);
1230 CPLErr CPL_DLL CPL_STDCALL GDALClose(GDALDatasetH);
1231 int CPL_DLL CPL_STDCALL GDALGetRasterXSize(GDALDatasetH);
1232 int CPL_DLL CPL_STDCALL GDALGetRasterYSize(GDALDatasetH);
1233 int CPL_DLL CPL_STDCALL GDALGetRasterCount(GDALDatasetH);
1234 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetRasterBand(GDALDatasetH, int);
1235
1236 bool CPL_DLL GDALDatasetIsThreadSafe(GDALDatasetH, int nScopeFlags,
1237 CSLConstList papszOptions);
1238 GDALDatasetH CPL_DLL GDALGetThreadSafeDataset(GDALDatasetH, int nScopeFlags,
1239 CSLConstList papszOptions);
1240
1241 CPLErr CPL_DLL CPL_STDCALL GDALAddBand(GDALDatasetH hDS, GDALDataType eType,
1242 CSLConstList papszOptions);
1243
1244 GDALAsyncReaderH CPL_DLL CPL_STDCALL GDALBeginAsyncReader(
1245 GDALDatasetH hDS, int nXOff, int nYOff, int nXSize, int nYSize, void *pBuf,
1246 int nBufXSize, int nBufYSize, GDALDataType eBufType, int nBandCount,
1247 int *panBandMap, int nPixelSpace, int nLineSpace, int nBandSpace,
1248 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1249
1250 void CPL_DLL CPL_STDCALL GDALEndAsyncReader(GDALDatasetH hDS,
1251 GDALAsyncReaderH hAsynchReaderH);
1252
1253 CPLErr CPL_DLL CPL_STDCALL GDALDatasetRasterIO(
1254 GDALDatasetH hDS, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff,
1255 int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize,
1256 GDALDataType eBDataType, int nBandCount, const int *panBandCount,
1257 int nPixelSpace, int nLineSpace, int nBandSpace) CPL_WARN_UNUSED_RESULT;
1258
1259 CPLErr CPL_DLL CPL_STDCALL GDALDatasetRasterIOEx(
1260 GDALDatasetH hDS, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff,
1261 int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize,
1262 GDALDataType eBDataType, int nBandCount, const int *panBandCount,
1263 GSpacing nPixelSpace, GSpacing nLineSpace, GSpacing nBandSpace,
1264 GDALRasterIOExtraArg *psExtraArg) CPL_WARN_UNUSED_RESULT;
1265
1266 CPLErr CPL_DLL CPL_STDCALL GDALDatasetAdviseRead(
1267 GDALDatasetH hDS, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
1268 int nBXSize, int nBYSize, GDALDataType eBDataType, int nBandCount,
1269 int *panBandCount, CSLConstList papszOptions);
1270
1271 char CPL_DLL **
1272 GDALDatasetGetCompressionFormats(GDALDatasetH hDS, int nXOff, int nYOff,
1273 int nXSize, int nYSize, int nBandCount,
1274 const int *panBandList) CPL_WARN_UNUSED_RESULT;
1275 CPLErr CPL_DLL GDALDatasetReadCompressedData(
1276 GDALDatasetH hDS, const char *pszFormat, int nXOff, int nYOff, int nXSize,
1277 int nYSize, int nBandCount, const int *panBandList, void **ppBuffer,
1278 size_t *pnBufferSize, char **ppszDetailedFormat);
1279
1280 const char CPL_DLL *CPL_STDCALL GDALGetProjectionRef(GDALDatasetH);
1281 OGRSpatialReferenceH CPL_DLL GDALGetSpatialRef(GDALDatasetH);
1282 CPLErr CPL_DLL CPL_STDCALL GDALSetProjection(GDALDatasetH, const char *);
1283 CPLErr CPL_DLL GDALSetSpatialRef(GDALDatasetH, OGRSpatialReferenceH);
1284 CPLErr CPL_DLL CPL_STDCALL GDALGetGeoTransform(GDALDatasetH, double *);
1285 CPLErr CPL_DLL CPL_STDCALL GDALSetGeoTransform(GDALDatasetH, double *);
1286
1287 int CPL_DLL CPL_STDCALL GDALGetGCPCount(GDALDatasetH);
1288 const char CPL_DLL *CPL_STDCALL GDALGetGCPProjection(GDALDatasetH);
1289 OGRSpatialReferenceH CPL_DLL GDALGetGCPSpatialRef(GDALDatasetH);
1290 const GDAL_GCP CPL_DLL *CPL_STDCALL GDALGetGCPs(GDALDatasetH);
1291 CPLErr CPL_DLL CPL_STDCALL GDALSetGCPs(GDALDatasetH, int, const GDAL_GCP *,
1292 const char *);
1293 CPLErr CPL_DLL GDALSetGCPs2(GDALDatasetH, int, const GDAL_GCP *,
1294 OGRSpatialReferenceH);
1295
1296 void CPL_DLL *CPL_STDCALL GDALGetInternalHandle(GDALDatasetH, const char *);
1297 int CPL_DLL CPL_STDCALL GDALReferenceDataset(GDALDatasetH);
1298 int CPL_DLL CPL_STDCALL GDALDereferenceDataset(GDALDatasetH);
1299 int CPL_DLL CPL_STDCALL GDALReleaseDataset(GDALDatasetH);
1300
1301 CPLErr CPL_DLL CPL_STDCALL GDALBuildOverviews(GDALDatasetH, const char *, int,
1302 const int *, int, const int *,
1303 GDALProgressFunc,
1304 void *) CPL_WARN_UNUSED_RESULT;
1305 CPLErr CPL_DLL CPL_STDCALL GDALBuildOverviewsEx(
1306 GDALDatasetH, const char *, int, const int *, int, const int *,
1307 GDALProgressFunc, void *, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1308 void CPL_DLL CPL_STDCALL GDALGetOpenDatasets(GDALDatasetH **hDS, int *pnCount);
1309 int CPL_DLL CPL_STDCALL GDALGetAccess(GDALDatasetH hDS);
1310 CPLErr CPL_DLL CPL_STDCALL GDALFlushCache(GDALDatasetH hDS);
1311 CPLErr CPL_DLL CPL_STDCALL GDALDropCache(GDALDatasetH hDS);
1312
1313 CPLErr CPL_DLL CPL_STDCALL GDALCreateDatasetMaskBand(GDALDatasetH hDS,
1314 int nFlags);
1315
1316 CPLErr CPL_DLL CPL_STDCALL GDALDatasetCopyWholeRaster(
1317 GDALDatasetH hSrcDS, GDALDatasetH hDstDS, CSLConstList papszOptions,
1318 GDALProgressFunc pfnProgress, void *pProgressData) CPL_WARN_UNUSED_RESULT;
1319
1320 CPLErr CPL_DLL CPL_STDCALL GDALRasterBandCopyWholeRaster(
1321 GDALRasterBandH hSrcBand, GDALRasterBandH hDstBand,
1322 const char *const *constpapszOptions, GDALProgressFunc pfnProgress,
1323 void *pProgressData) CPL_WARN_UNUSED_RESULT;
1324
1325 CPLErr CPL_DLL GDALRegenerateOverviews(GDALRasterBandH hSrcBand,
1326 int nOverviewCount,
1327 GDALRasterBandH *pahOverviewBands,
1328 const char *pszResampling,
1329 GDALProgressFunc pfnProgress,
1330 void *pProgressData);
1331
1332 CPLErr CPL_DLL GDALRegenerateOverviewsEx(GDALRasterBandH hSrcBand,
1333 int nOverviewCount,
1334 GDALRasterBandH *pahOverviewBands,
1335 const char *pszResampling,
1336 GDALProgressFunc pfnProgress,
1337 void *pProgressData,
1338 CSLConstList papszOptions);
1339
1340 int CPL_DLL GDALDatasetGetLayerCount(GDALDatasetH);
1341 OGRLayerH CPL_DLL GDALDatasetGetLayer(GDALDatasetH, int);
1342
1343/* Defined here to avoid circular dependency with ogr_api.h */
1344 GDALDatasetH CPL_DLL OGR_L_GetDataset(OGRLayerH hLayer);
1345
1346 OGRLayerH CPL_DLL GDALDatasetGetLayerByName(GDALDatasetH, const char *);
1347 int CPL_DLL GDALDatasetIsLayerPrivate(GDALDatasetH, int);
1348 OGRErr CPL_DLL GDALDatasetDeleteLayer(GDALDatasetH, int);
1349 OGRLayerH CPL_DLL GDALDatasetCreateLayer(GDALDatasetH, const char *,
1350 OGRSpatialReferenceH,
1351 OGRwkbGeometryType, CSLConstList);
1352 OGRLayerH CPL_DLL GDALDatasetCreateLayerFromGeomFieldDefn(GDALDatasetH,
1353 const char *,
1354 OGRGeomFieldDefnH,
1355 CSLConstList);
1356 OGRLayerH CPL_DLL GDALDatasetCopyLayer(GDALDatasetH, OGRLayerH, const char *,
1357 CSLConstList);
1358 void CPL_DLL GDALDatasetResetReading(GDALDatasetH);
1359 OGRFeatureH CPL_DLL GDALDatasetGetNextFeature(GDALDatasetH hDS,
1360 OGRLayerH *phBelongingLayer,
1361 double *pdfProgressPct,
1362 GDALProgressFunc pfnProgress,
1363 void *pProgressData);
1364 int CPL_DLL GDALDatasetTestCapability(GDALDatasetH, const char *);
1365 OGRLayerH CPL_DLL GDALDatasetExecuteSQL(GDALDatasetH, const char *,
1366 OGRGeometryH, const char *);
1367 OGRErr CPL_DLL GDALDatasetAbortSQL(GDALDatasetH);
1368 void CPL_DLL GDALDatasetReleaseResultSet(GDALDatasetH, OGRLayerH);
1369 OGRStyleTableH CPL_DLL GDALDatasetGetStyleTable(GDALDatasetH);
1370 void CPL_DLL GDALDatasetSetStyleTableDirectly(GDALDatasetH, OGRStyleTableH);
1371 void CPL_DLL GDALDatasetSetStyleTable(GDALDatasetH, OGRStyleTableH);
1372 OGRErr CPL_DLL GDALDatasetStartTransaction(GDALDatasetH hDS, int bForce);
1373 OGRErr CPL_DLL GDALDatasetCommitTransaction(GDALDatasetH hDS);
1374 OGRErr CPL_DLL GDALDatasetRollbackTransaction(GDALDatasetH hDS);
1375 void CPL_DLL GDALDatasetClearStatistics(GDALDatasetH hDS);
1376
1377 char CPL_DLL **GDALDatasetGetFieldDomainNames(GDALDatasetH, CSLConstList)
1378 CPL_WARN_UNUSED_RESULT;
1379 OGRFieldDomainH CPL_DLL GDALDatasetGetFieldDomain(GDALDatasetH hDS,
1380 const char *pszName);
1381 bool CPL_DLL GDALDatasetAddFieldDomain(GDALDatasetH hDS,
1382 OGRFieldDomainH hFieldDomain,
1383 char **ppszFailureReason);
1384 bool CPL_DLL GDALDatasetDeleteFieldDomain(GDALDatasetH hDS, const char *pszName,
1385 char **ppszFailureReason);
1386 bool CPL_DLL GDALDatasetUpdateFieldDomain(GDALDatasetH hDS,
1387 OGRFieldDomainH hFieldDomain,
1388 char **ppszFailureReason);
1389
1390 char CPL_DLL **GDALDatasetGetRelationshipNames(GDALDatasetH, CSLConstList)
1391 CPL_WARN_UNUSED_RESULT;
1392 GDALRelationshipH CPL_DLL GDALDatasetGetRelationship(GDALDatasetH hDS,
1393 const char *pszName);
1394
1395 bool CPL_DLL GDALDatasetAddRelationship(GDALDatasetH hDS,
1396 GDALRelationshipH hRelationship,
1397 char **ppszFailureReason);
1398 bool CPL_DLL GDALDatasetDeleteRelationship(GDALDatasetH hDS,
1399 const char *pszName,
1400 char **ppszFailureReason);
1401 bool CPL_DLL GDALDatasetUpdateRelationship(GDALDatasetH hDS,
1402 GDALRelationshipH hRelationship,
1403 char **ppszFailureReason);
1404
1407 typedef void (*GDALQueryLoggerFunc)(const char *pszSQL, const char *pszError,
1408 int64_t lNumRecords,
1409 int64_t lExecutionTimeMilliseconds,
1410 void *pQueryLoggerArg);
1411
1428 bool CPL_DLL GDALDatasetSetQueryLoggerFunc(
1429 GDALDatasetH hDS, GDALQueryLoggerFunc pfnQueryLoggerFunc,
1430 void *poQueryLoggerArg);
1431
1432/* ==================================================================== */
1433/* Informational utilities about subdatasets in file names */
1434/* ==================================================================== */
1435
1440 typedef struct GDALSubdatasetInfo *GDALSubdatasetInfoH;
1441
1453 GDALSubdatasetInfoH CPL_DLL GDALGetSubdatasetInfo(const char *pszFileName);
1454
1465 char CPL_DLL *GDALSubdatasetInfoGetPathComponent(GDALSubdatasetInfoH hInfo);
1466
1475 char CPL_DLL *
1476 GDALSubdatasetInfoGetSubdatasetComponent(GDALSubdatasetInfoH hInfo);
1477
1487 char CPL_DLL *GDALSubdatasetInfoModifyPathComponent(GDALSubdatasetInfoH hInfo,
1488 const char *pszNewPath);
1489
1495 void CPL_DLL GDALDestroySubdatasetInfo(GDALSubdatasetInfoH hInfo);
1496
1497/* ==================================================================== */
1498/* GDALRasterBand ... one band/channel in a dataset. */
1499/* ==================================================================== */
1500
1501/* Note: the only user of SRCVAL() was frmts/vrt/pixelfunctions.cpp and we no */
1502/* longer use it. */
1503
1508#define SRCVAL(papoSource, eSrcType, ii) \
1509 (eSrcType == GDT_Byte \
1510 ? CPL_REINTERPRET_CAST(const GByte *, papoSource)[ii] \
1511 : (eSrcType == GDT_Int8 \
1512 ? CPL_REINTERPRET_CAST(const GInt8 *, papoSource)[ii] \
1513 : (eSrcType == GDT_Float32 \
1514 ? CPL_REINTERPRET_CAST(const float *, papoSource)[ii] \
1515 : (eSrcType == GDT_Float64 \
1516 ? CPL_REINTERPRET_CAST(const double *, \
1517 papoSource)[ii] \
1518 : (eSrcType == GDT_Int32 \
1519 ? CPL_REINTERPRET_CAST(const GInt32 *, \
1520 papoSource)[ii] \
1521 : (eSrcType == GDT_UInt16 \
1522 ? CPL_REINTERPRET_CAST( \
1523 const GUInt16 *, \
1524 papoSource)[ii] \
1525 : (eSrcType == GDT_Int16 \
1526 ? CPL_REINTERPRET_CAST( \
1527 const GInt16 *, \
1528 papoSource)[ii] \
1529 : (eSrcType == GDT_UInt32 \
1530 ? CPL_REINTERPRET_CAST( \
1531 const GUInt32 \
1532 *, \
1533 papoSource) \
1534 [ii] \
1535 : (eSrcType == \
1536 GDT_CInt16 \
1537 ? CPL_REINTERPRET_CAST( \
1538 const GInt16 \
1539 *, \
1540 papoSource) \
1541 [(ii)*2] \
1542 : (eSrcType == \
1543 GDT_CInt32 \
1544 ? CPL_REINTERPRET_CAST( \
1545 const GInt32 \
1546 *, \
1547 papoSource) \
1548 [(ii)*2] \
1549 : (eSrcType == \
1550 GDT_CFloat32 \
1551 ? CPL_REINTERPRET_CAST( \
1552 const float \
1553 *, \
1554 papoSource) \
1555 [(ii)*2] \
1556 : (eSrcType == \
1557 GDT_CFloat64 \
1558 ? CPL_REINTERPRET_CAST( \
1559 const double \
1560 *, \
1561 papoSource) \
1562 [(ii)*2] \
1563 : 0))))))))))))
1564
1567 typedef CPLErr (*GDALDerivedPixelFunc)(void **papoSources, int nSources,
1568 void *pData, int nBufXSize,
1569 int nBufYSize, GDALDataType eSrcType,
1570 GDALDataType eBufType, int nPixelSpace,
1571 int nLineSpace);
1572
1575 typedef CPLErr (*GDALDerivedPixelFuncWithArgs)(
1576 void **papoSources, int nSources, void *pData, int nBufXSize, int nBufYSize,
1577 GDALDataType eSrcType, GDALDataType eBufType, int nPixelSpace,
1578 int nLineSpace, CSLConstList papszFunctionArgs);
1579
1580 GDALDataType CPL_DLL CPL_STDCALL GDALGetRasterDataType(GDALRasterBandH);
1581 void CPL_DLL CPL_STDCALL GDALGetBlockSize(GDALRasterBandH, int *pnXSize,
1582 int *pnYSize);
1583
1584 CPLErr CPL_DLL CPL_STDCALL GDALGetActualBlockSize(GDALRasterBandH,
1585 int nXBlockOff,
1586 int nYBlockOff, int *pnXValid,
1587 int *pnYValid);
1588
1589 CPLErr CPL_DLL CPL_STDCALL GDALRasterAdviseRead(GDALRasterBandH hRB,
1590 int nDSXOff, int nDSYOff,
1591 int nDSXSize, int nDSYSize,
1592 int nBXSize, int nBYSize,
1593 GDALDataType eBDataType,
1594 CSLConstList papszOptions);
1595
1596 CPLErr CPL_DLL CPL_STDCALL GDALRasterIO(GDALRasterBandH hRBand,
1597 GDALRWFlag eRWFlag, int nDSXOff,
1598 int nDSYOff, int nDSXSize, int nDSYSize,
1599 void *pBuffer, int nBXSize, int nBYSize,
1600 GDALDataType eBDataType,
1601 int nPixelSpace,
1602 int nLineSpace) CPL_WARN_UNUSED_RESULT;
1603 CPLErr CPL_DLL CPL_STDCALL GDALRasterIOEx(
1604 GDALRasterBandH hRBand, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff,
1605 int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize,
1606 GDALDataType eBDataType, GSpacing nPixelSpace, GSpacing nLineSpace,
1607 GDALRasterIOExtraArg *psExtraArg) CPL_WARN_UNUSED_RESULT;
1608 CPLErr CPL_DLL CPL_STDCALL GDALReadBlock(GDALRasterBandH, int, int,
1609 void *) CPL_WARN_UNUSED_RESULT;
1610 CPLErr CPL_DLL CPL_STDCALL GDALWriteBlock(GDALRasterBandH, int, int,
1611 void *) CPL_WARN_UNUSED_RESULT;
1612 int CPL_DLL CPL_STDCALL GDALGetRasterBandXSize(GDALRasterBandH);
1613 int CPL_DLL CPL_STDCALL GDALGetRasterBandYSize(GDALRasterBandH);
1614 GDALAccess CPL_DLL CPL_STDCALL GDALGetRasterAccess(GDALRasterBandH);
1615 int CPL_DLL CPL_STDCALL GDALGetBandNumber(GDALRasterBandH);
1616 GDALDatasetH CPL_DLL CPL_STDCALL GDALGetBandDataset(GDALRasterBandH);
1617
1618 GDALColorInterp
1619 CPL_DLL CPL_STDCALL GDALGetRasterColorInterpretation(GDALRasterBandH);
1620 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterColorInterpretation(GDALRasterBandH,
1621 GDALColorInterp);
1622 GDALColorTableH CPL_DLL CPL_STDCALL GDALGetRasterColorTable(GDALRasterBandH);
1623 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterColorTable(GDALRasterBandH,
1624 GDALColorTableH);
1625 int CPL_DLL CPL_STDCALL GDALHasArbitraryOverviews(GDALRasterBandH);
1626 int CPL_DLL CPL_STDCALL GDALGetOverviewCount(GDALRasterBandH);
1627 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetOverview(GDALRasterBandH, int);
1628 double CPL_DLL CPL_STDCALL GDALGetRasterNoDataValue(GDALRasterBandH, int *);
1629int64_t CPL_DLL CPL_STDCALL GDALGetRasterNoDataValueAsInt64(GDALRasterBandH,
1630 int *);
1631uint64_t CPL_DLL CPL_STDCALL GDALGetRasterNoDataValueAsUInt64(GDALRasterBandH,
1632 int *);
1633 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterNoDataValue(GDALRasterBandH, double);
1634 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterNoDataValueAsInt64(GDALRasterBandH,
1635 int64_t);
1636 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterNoDataValueAsUInt64(GDALRasterBandH,
1637 uint64_t);
1638 CPLErr CPL_DLL CPL_STDCALL GDALDeleteRasterNoDataValue(GDALRasterBandH);
1639 char CPL_DLL **CPL_STDCALL GDALGetRasterCategoryNames(GDALRasterBandH);
1640 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterCategoryNames(GDALRasterBandH,
1641 CSLConstList);
1642 double CPL_DLL CPL_STDCALL GDALGetRasterMinimum(GDALRasterBandH,
1643 int *pbSuccess);
1644 double CPL_DLL CPL_STDCALL GDALGetRasterMaximum(GDALRasterBandH,
1645 int *pbSuccess);
1646 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterStatistics(
1647 GDALRasterBandH, int bApproxOK, int bForce, double *pdfMin, double *pdfMax,
1648 double *pdfMean, double *pdfStdDev);
1649 CPLErr CPL_DLL CPL_STDCALL
1650 GDALComputeRasterStatistics(GDALRasterBandH, int bApproxOK, double *pdfMin,
1651 double *pdfMax, double *pdfMean, double *pdfStdDev,
1652 GDALProgressFunc pfnProgress, void *pProgressData);
1653 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterStatistics(GDALRasterBandH hBand,
1654 double dfMin, double dfMax,
1655 double dfMean,
1656 double dfStdDev);
1657
1658 GDALMDArrayH
1659 CPL_DLL GDALRasterBandAsMDArray(GDALRasterBandH) CPL_WARN_UNUSED_RESULT;
1660
1661 const char CPL_DLL *CPL_STDCALL GDALGetRasterUnitType(GDALRasterBandH);
1662 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterUnitType(GDALRasterBandH hBand,
1663 const char *pszNewValue);
1664 double CPL_DLL CPL_STDCALL GDALGetRasterOffset(GDALRasterBandH, int *pbSuccess);
1665 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterOffset(GDALRasterBandH hBand,
1666 double dfNewOffset);
1667 double CPL_DLL CPL_STDCALL GDALGetRasterScale(GDALRasterBandH, int *pbSuccess);
1668 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterScale(GDALRasterBandH hBand,
1669 double dfNewOffset);
1670 CPLErr CPL_DLL CPL_STDCALL GDALComputeRasterMinMax(GDALRasterBandH hBand,
1671 int bApproxOK,
1672 double adfMinMax[2]);
1673 CPLErr CPL_DLL CPL_STDCALL GDALFlushRasterCache(GDALRasterBandH hBand);
1674 CPLErr CPL_DLL CPL_STDCALL GDALDropRasterCache(GDALRasterBandH hBand);
1675 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterHistogram(
1676 GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets,
1677 int *panHistogram, int bIncludeOutOfRange, int bApproxOK,
1678 GDALProgressFunc pfnProgress, void *pProgressData)
1680 CPL_WARN_DEPRECATED("Use GDALGetRasterHistogramEx() instead")
1682 ;
1683 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterHistogramEx(
1684 GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets,
1685 GUIntBig *panHistogram, int bIncludeOutOfRange, int bApproxOK,
1686 GDALProgressFunc pfnProgress, void *pProgressData);
1687 CPLErr CPL_DLL CPL_STDCALL
1688 GDALGetDefaultHistogram(GDALRasterBandH hBand, double *pdfMin, double *pdfMax,
1689 int *pnBuckets, int **ppanHistogram, int bForce,
1690 GDALProgressFunc pfnProgress, void *pProgressData)
1692 CPL_WARN_DEPRECATED("Use GDALGetDefaultHistogramEx() instead")
1694 ;
1695 CPLErr CPL_DLL CPL_STDCALL
1696 GDALGetDefaultHistogramEx(GDALRasterBandH hBand, double *pdfMin, double *pdfMax,
1697 int *pnBuckets, GUIntBig **ppanHistogram, int bForce,
1698 GDALProgressFunc pfnProgress, void *pProgressData);
1699 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultHistogram(GDALRasterBandH hBand,
1700 double dfMin, double dfMax,
1701 int nBuckets,
1702 int *panHistogram)
1704 CPL_WARN_DEPRECATED("Use GDALSetDefaultHistogramEx() instead")
1706 ;
1707 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultHistogramEx(GDALRasterBandH hBand,
1708 double dfMin, double dfMax,
1709 int nBuckets,
1710 GUIntBig *panHistogram);
1711 int CPL_DLL CPL_STDCALL GDALGetRandomRasterSample(GDALRasterBandH, int,
1712 float *);
1713 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetRasterSampleOverview(GDALRasterBandH,
1714 int);
1715 GDALRasterBandH CPL_DLL CPL_STDCALL
1716 GDALGetRasterSampleOverviewEx(GDALRasterBandH, GUIntBig);
1717 CPLErr CPL_DLL CPL_STDCALL GDALFillRaster(GDALRasterBandH hBand,
1718 double dfRealValue,
1719 double dfImaginaryValue);
1720 CPLErr CPL_DLL CPL_STDCALL GDALComputeBandStats(
1721 GDALRasterBandH hBand, int nSampleStep, double *pdfMean, double *pdfStdDev,
1722 GDALProgressFunc pfnProgress, void *pProgressData);
1723 CPLErr CPL_DLL GDALOverviewMagnitudeCorrection(GDALRasterBandH hBaseBand,
1724 int nOverviewCount,
1725 GDALRasterBandH *pahOverviews,
1726 GDALProgressFunc pfnProgress,
1727 void *pProgressData);
1728
1729 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL
1730 GDALGetDefaultRAT(GDALRasterBandH hBand);
1731 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultRAT(GDALRasterBandH,
1732 GDALRasterAttributeTableH);
1733 CPLErr CPL_DLL CPL_STDCALL GDALAddDerivedBandPixelFunc(
1734 const char *pszName, GDALDerivedPixelFunc pfnPixelFunc);
1735 CPLErr CPL_DLL CPL_STDCALL GDALAddDerivedBandPixelFuncWithArgs(
1736 const char *pszName, GDALDerivedPixelFuncWithArgs pfnPixelFunc,
1737 const char *pszMetadata);
1738
1739 CPLErr CPL_DLL GDALRasterInterpolateAtPoint(GDALRasterBandH hBand,
1740 double dfPixel, double dfLine,
1741 GDALRIOResampleAlg eInterpolation,
1742 double *pdfRealValue,
1743 double *pdfImagValue);
1744
1747 typedef void *VRTPDWorkingDataPtr;
1748
1787 typedef CPLErr (*GDALVRTProcessedDatasetFuncInit)(
1788 const char *pszFuncName, void *pUserData, CSLConstList papszFunctionArgs,
1789 int nInBands, GDALDataType eInDT, double *padfInNoData, int *pnOutBands,
1790 GDALDataType *peOutDT, double **ppadfOutNoData, const char *pszVRTPath,
1791 VRTPDWorkingDataPtr *ppWorkingData);
1792
1802 typedef void (*GDALVRTProcessedDatasetFuncFree)(
1803 const char *pszFuncName, void *pUserData, VRTPDWorkingDataPtr pWorkingData);
1804
1835 typedef CPLErr (*GDALVRTProcessedDatasetFuncProcess)(
1836 const char *pszFuncName, void *pUserData, VRTPDWorkingDataPtr pWorkingData,
1837 CSLConstList papszFunctionArgs, int nBufXSize, int nBufYSize,
1838 const void *pInBuffer, size_t nInBufferSize, GDALDataType eInDT,
1839 int nInBands, const double *padfInNoData, void *pOutBuffer,
1840 size_t nOutBufferSize, GDALDataType eOutDT, int nOutBands,
1841 const double *padfOutNoData, double dfSrcXOff, double dfSrcYOff,
1842 double dfSrcXSize, double dfSrcYSize, const double adfSrcGT[/*6*/],
1843 const char *pszVRTPath, CSLConstList papszExtra);
1844
1845 CPLErr CPL_DLL GDALVRTRegisterProcessedDatasetFunc(
1846 const char *pszFuncName, void *pUserData, const char *pszXMLMetadata,
1847 GDALDataType eRequestedInputDT, const GDALDataType *paeSupportedInputDT,
1848 size_t nSupportedInputDTSize, const int *panSupportedInputBandCount,
1849 size_t nSupportedInputBandCountSize,
1850 GDALVRTProcessedDatasetFuncInit pfnInit,
1851 GDALVRTProcessedDatasetFuncFree pfnFree,
1852 GDALVRTProcessedDatasetFuncProcess pfnProcess, CSLConstList papszOptions);
1853
1854 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetMaskBand(GDALRasterBandH hBand);
1855 int CPL_DLL CPL_STDCALL GDALGetMaskFlags(GDALRasterBandH hBand);
1856 CPLErr CPL_DLL CPL_STDCALL GDALCreateMaskBand(GDALRasterBandH hBand,
1857 int nFlags);
1858 bool CPL_DLL GDALIsMaskBand(GDALRasterBandH hBand);
1859
1861#define GMF_ALL_VALID 0x01
1864#define GMF_PER_DATASET 0x02
1867#define GMF_ALPHA 0x04
1870#define GMF_NODATA 0x08
1871
1875#define GDAL_DATA_COVERAGE_STATUS_UNIMPLEMENTED 0x01
1876
1881#define GDAL_DATA_COVERAGE_STATUS_DATA 0x02
1882
1888#define GDAL_DATA_COVERAGE_STATUS_EMPTY 0x04
1889
1890 int CPL_DLL CPL_STDCALL GDALGetDataCoverageStatus(GDALRasterBandH hBand,
1891 int nXOff, int nYOff,
1892 int nXSize, int nYSize,
1893 int nMaskFlagStop,
1894 double *pdfDataPct);
1895
1896/* ==================================================================== */
1897/* GDALAsyncReader */
1898/* ==================================================================== */
1899
1900 GDALAsyncStatusType CPL_DLL CPL_STDCALL GDALARGetNextUpdatedRegion(
1901 GDALAsyncReaderH hARIO, double dfTimeout, int *pnXBufOff, int *pnYBufOff,
1902 int *pnXBufSize, int *pnYBufSize);
1903 int CPL_DLL CPL_STDCALL GDALARLockBuffer(GDALAsyncReaderH hARIO,
1904 double dfTimeout);
1905 void CPL_DLL CPL_STDCALL GDALARUnlockBuffer(GDALAsyncReaderH hARIO);
1906
1907/* -------------------------------------------------------------------- */
1908/* Helper functions. */
1909/* -------------------------------------------------------------------- */
1910 int CPL_DLL CPL_STDCALL GDALGeneralCmdLineProcessor(int nArgc,
1911 char ***ppapszArgv,
1912 int nOptions);
1913 void CPL_DLL CPL_STDCALL GDALSwapWords(void *pData, int nWordSize,
1914 int nWordCount, int nWordSkip);
1915 void CPL_DLL CPL_STDCALL GDALSwapWordsEx(void *pData, int nWordSize,
1916 size_t nWordCount, int nWordSkip);
1917
1918 void CPL_DLL CPL_STDCALL GDALCopyWords(const void *CPL_RESTRICT pSrcData,
1919 GDALDataType eSrcType,
1920 int nSrcPixelOffset,
1921 void *CPL_RESTRICT pDstData,
1922 GDALDataType eDstType,
1923 int nDstPixelOffset, int nWordCount);
1924
1925 void CPL_DLL CPL_STDCALL GDALCopyWords64(
1926 const void *CPL_RESTRICT pSrcData, GDALDataType eSrcType,
1927 int nSrcPixelOffset, void *CPL_RESTRICT pDstData, GDALDataType eDstType,
1928 int nDstPixelOffset, GPtrDiff_t nWordCount);
1929
1930 void CPL_DLL GDALCopyBits(const GByte *pabySrcData, int nSrcOffset,
1931 int nSrcStep, GByte *pabyDstData, int nDstOffset,
1932 int nDstStep, int nBitCount, int nStepCount);
1933
1934 void CPL_DLL GDALDeinterleave(const void *pSourceBuffer, GDALDataType eSourceDT,
1935 int nComponents, void **ppDestBuffer,
1936 GDALDataType eDestDT, size_t nIters);
1937
1938 double CPL_DLL GDALGetNoDataReplacementValue(GDALDataType, double);
1939
1940 int CPL_DLL CPL_STDCALL GDALLoadWorldFile(const char *, double *);
1941 int CPL_DLL CPL_STDCALL GDALReadWorldFile(const char *, const char *, double *);
1942 int CPL_DLL CPL_STDCALL GDALWriteWorldFile(const char *, const char *,
1943 double *);
1944 int CPL_DLL CPL_STDCALL GDALLoadTabFile(const char *, double *, char **, int *,
1945 GDAL_GCP **);
1946 int CPL_DLL CPL_STDCALL GDALReadTabFile(const char *, double *, char **, int *,
1947 GDAL_GCP **);
1948 int CPL_DLL CPL_STDCALL GDALLoadOziMapFile(const char *, double *, char **,
1949 int *, GDAL_GCP **);
1950 int CPL_DLL CPL_STDCALL GDALReadOziMapFile(const char *, double *, char **,
1951 int *, GDAL_GCP **);
1952
1953 const char CPL_DLL *CPL_STDCALL GDALDecToDMS(double, const char *, int);
1954 double CPL_DLL CPL_STDCALL GDALPackedDMSToDec(double);
1955 double CPL_DLL CPL_STDCALL GDALDecToPackedDMS(double);
1956
1957/* Note to developers : please keep this section in sync with ogr_core.h */
1958
1959#ifndef GDAL_VERSION_INFO_DEFINED
1960#ifndef DOXYGEN_SKIP
1961#define GDAL_VERSION_INFO_DEFINED
1962#endif
1963 const char CPL_DLL *CPL_STDCALL GDALVersionInfo(const char *);
1964#endif
1965
1966#ifndef GDAL_CHECK_VERSION
1967
1968 int CPL_DLL CPL_STDCALL GDALCheckVersion(int nVersionMajor, int nVersionMinor,
1969 const char *pszCallingComponentName);
1970
1974#define GDAL_CHECK_VERSION(pszCallingComponentName) \
1975 GDALCheckVersion(GDAL_VERSION_MAJOR, GDAL_VERSION_MINOR, \
1976 pszCallingComponentName)
1977
1978#endif
1979
1981#ifdef GDAL_COMPILATION
1982#define GDALExtractRPCInfoV1 GDALExtractRPCInfo
1983#else
1984#define GDALRPCInfo GDALRPCInfoV2
1985#define GDALExtractRPCInfo GDALExtractRPCInfoV2
1986#endif
1987
1988/* Deprecated: use GDALRPCInfoV2 */
1989 typedef struct
1990{
1991 double dfLINE_OFF;
1992 double dfSAMP_OFF;
1993 double dfLAT_OFF;
1994 double dfLONG_OFF;
1995 double dfHEIGHT_OFF;
1997 double dfLINE_SCALE;
1998 double dfSAMP_SCALE;
1999 double dfLAT_SCALE;
2000 double dfLONG_SCALE;
2001 double dfHEIGHT_SCALE;
2003 double adfLINE_NUM_COEFF[20];
2004 double adfLINE_DEN_COEFF[20];
2005 double adfSAMP_NUM_COEFF[20];
2006 double adfSAMP_DEN_COEFF[20];
2008 double dfMIN_LONG;
2009 double dfMIN_LAT;
2010 double dfMAX_LONG;
2011 double dfMAX_LAT;
2012} GDALRPCInfoV1;
2013
2018 typedef struct
2019{
2020 double dfLINE_OFF;
2021 double dfSAMP_OFF;
2022 double dfLAT_OFF;
2023 double dfLONG_OFF;
2024 double dfHEIGHT_OFF;
2026 double dfLINE_SCALE;
2027 double dfSAMP_SCALE;
2028 double dfLAT_SCALE;
2029 double dfLONG_SCALE;
2030 double dfHEIGHT_SCALE;
2032 double adfLINE_NUM_COEFF[20];
2033 double adfLINE_DEN_COEFF[20];
2034 double adfSAMP_NUM_COEFF[20];
2035 double adfSAMP_DEN_COEFF[20];
2037 double dfMIN_LONG;
2038 double dfMIN_LAT;
2039 double dfMAX_LONG;
2040 double dfMAX_LAT;
2042 /* Those fields should be at the end. And all above fields should be the
2043 * same as in GDALRPCInfoV1 */
2044 double dfERR_BIAS;
2045 double dfERR_RAND;
2046} GDALRPCInfoV2;
2047
2049 int CPL_DLL CPL_STDCALL GDALExtractRPCInfoV1(CSLConstList, GDALRPCInfoV1 *);
2051 int CPL_DLL CPL_STDCALL GDALExtractRPCInfoV2(CSLConstList, GDALRPCInfoV2 *);
2052
2053/* ==================================================================== */
2054/* Color tables. */
2055/* ==================================================================== */
2056
2058 typedef struct
2059{
2061 short c1;
2062
2064 short c2;
2065
2067 short c3;
2068
2070 short c4;
2071} GDALColorEntry;
2072
2073 GDALColorTableH CPL_DLL CPL_STDCALL GDALCreateColorTable(GDALPaletteInterp)
2074 CPL_WARN_UNUSED_RESULT;
2075 void CPL_DLL CPL_STDCALL GDALDestroyColorTable(GDALColorTableH);
2076 GDALColorTableH CPL_DLL CPL_STDCALL GDALCloneColorTable(GDALColorTableH);
2077 GDALPaletteInterp
2078 CPL_DLL CPL_STDCALL GDALGetPaletteInterpretation(GDALColorTableH);
2079 int CPL_DLL CPL_STDCALL GDALGetColorEntryCount(GDALColorTableH);
2080 const GDALColorEntry CPL_DLL *CPL_STDCALL GDALGetColorEntry(GDALColorTableH,
2081 int);
2082 int CPL_DLL CPL_STDCALL GDALGetColorEntryAsRGB(GDALColorTableH, int,
2083 GDALColorEntry *);
2084 void CPL_DLL CPL_STDCALL GDALSetColorEntry(GDALColorTableH, int,
2085 const GDALColorEntry *);
2086 void CPL_DLL CPL_STDCALL GDALCreateColorRamp(GDALColorTableH hTable,
2087 int nStartIndex,
2088 const GDALColorEntry *psStartColor,
2089 int nEndIndex,
2090 const GDALColorEntry *psEndColor);
2091
2092/* ==================================================================== */
2093/* Raster Attribute Table */
2094/* ==================================================================== */
2095
2097 typedef enum
2098{ GFT_Integer, GFT_Real, GFT_String
2102} GDALRATFieldType;
2103
2105 typedef enum
2106{ 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
2126} GDALRATFieldUsage;
2127
2131 typedef enum
2132{ GRTT_THEMATIC, GRTT_ATHEMATIC
2135} GDALRATTableType;
2136
2137 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL
2138 GDALCreateRasterAttributeTable(void) CPL_WARN_UNUSED_RESULT;
2139
2140 void CPL_DLL CPL_STDCALL
2141 GDALDestroyRasterAttributeTable(GDALRasterAttributeTableH);
2142
2143 int CPL_DLL CPL_STDCALL GDALRATGetColumnCount(GDALRasterAttributeTableH);
2144
2145 const char CPL_DLL *CPL_STDCALL GDALRATGetNameOfCol(GDALRasterAttributeTableH,
2146 int);
2147 GDALRATFieldUsage CPL_DLL CPL_STDCALL
2148 GDALRATGetUsageOfCol(GDALRasterAttributeTableH, int);
2149 GDALRATFieldType CPL_DLL CPL_STDCALL
2150 GDALRATGetTypeOfCol(GDALRasterAttributeTableH, int);
2151
2152 int CPL_DLL CPL_STDCALL GDALRATGetColOfUsage(GDALRasterAttributeTableH,
2153 GDALRATFieldUsage);
2154 int CPL_DLL CPL_STDCALL GDALRATGetRowCount(GDALRasterAttributeTableH);
2155
2156 const char CPL_DLL *CPL_STDCALL
2157 GDALRATGetValueAsString(GDALRasterAttributeTableH, int, int);
2158 int CPL_DLL CPL_STDCALL GDALRATGetValueAsInt(GDALRasterAttributeTableH, int,
2159 int);
2160 double CPL_DLL CPL_STDCALL GDALRATGetValueAsDouble(GDALRasterAttributeTableH,
2161 int, int);
2162
2163 void CPL_DLL CPL_STDCALL GDALRATSetValueAsString(GDALRasterAttributeTableH, int,
2164 int, const char *);
2165 void CPL_DLL CPL_STDCALL GDALRATSetValueAsInt(GDALRasterAttributeTableH, int,
2166 int, int);
2167 void CPL_DLL CPL_STDCALL GDALRATSetValueAsDouble(GDALRasterAttributeTableH, int,
2168 int, double);
2169
2170 int CPL_DLL CPL_STDCALL
2171 GDALRATChangesAreWrittenToFile(GDALRasterAttributeTableH hRAT);
2172
2173 CPLErr CPL_DLL CPL_STDCALL GDALRATValuesIOAsDouble(
2174 GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag, int iField,
2175 int iStartRow, int iLength, double *pdfData);
2176 CPLErr CPL_DLL CPL_STDCALL
2177 GDALRATValuesIOAsInteger(GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag,
2178 int iField, int iStartRow, int iLength, int *pnData);
2179 CPLErr CPL_DLL CPL_STDCALL GDALRATValuesIOAsString(
2180 GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag, int iField,
2181 int iStartRow, int iLength, char **papszStrList);
2182
2183 void CPL_DLL CPL_STDCALL GDALRATSetRowCount(GDALRasterAttributeTableH, int);
2184 CPLErr CPL_DLL CPL_STDCALL GDALRATCreateColumn(GDALRasterAttributeTableH,
2185 const char *, GDALRATFieldType,
2186 GDALRATFieldUsage);
2187 CPLErr CPL_DLL CPL_STDCALL GDALRATSetLinearBinning(GDALRasterAttributeTableH,
2188 double, double);
2189 int CPL_DLL CPL_STDCALL GDALRATGetLinearBinning(GDALRasterAttributeTableH,
2190 double *, double *);
2191 CPLErr CPL_DLL CPL_STDCALL GDALRATSetTableType(
2192 GDALRasterAttributeTableH hRAT, const GDALRATTableType eInTableType);
2193 GDALRATTableType CPL_DLL CPL_STDCALL
2194 GDALRATGetTableType(GDALRasterAttributeTableH hRAT);
2195 CPLErr CPL_DLL CPL_STDCALL
2196 GDALRATInitializeFromColorTable(GDALRasterAttributeTableH, GDALColorTableH);
2197 GDALColorTableH CPL_DLL CPL_STDCALL
2198 GDALRATTranslateToColorTable(GDALRasterAttributeTableH, int nEntryCount);
2199 void CPL_DLL CPL_STDCALL GDALRATDumpReadable(GDALRasterAttributeTableH, FILE *);
2200 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL
2201 GDALRATClone(const GDALRasterAttributeTableH);
2202
2203 void CPL_DLL *CPL_STDCALL GDALRATSerializeJSON(GDALRasterAttributeTableH)
2204 CPL_WARN_UNUSED_RESULT;
2205
2206 int CPL_DLL CPL_STDCALL GDALRATGetRowOfValue(GDALRasterAttributeTableH, double);
2207 void CPL_DLL CPL_STDCALL GDALRATRemoveStatistics(GDALRasterAttributeTableH);
2208
2209/* -------------------------------------------------------------------- */
2210/* Relationships */
2211/* -------------------------------------------------------------------- */
2212
2217 typedef enum
2218{
2220 GRC_ONE_TO_ONE,
2222 GRC_ONE_TO_MANY,
2224 GRC_MANY_TO_ONE,
2226 GRC_MANY_TO_MANY,
2227} GDALRelationshipCardinality;
2228
2233 typedef enum
2234{
2236 GRT_COMPOSITE,
2238 GRT_ASSOCIATION,
2240 GRT_AGGREGATION,
2241} GDALRelationshipType;
2242
2243 GDALRelationshipH CPL_DLL GDALRelationshipCreate(const char *, const char *,
2244 const char *,
2245 GDALRelationshipCardinality);
2246 void CPL_DLL CPL_STDCALL GDALDestroyRelationship(GDALRelationshipH);
2247 const char CPL_DLL *GDALRelationshipGetName(GDALRelationshipH);
2248 GDALRelationshipCardinality
2249 CPL_DLL GDALRelationshipGetCardinality(GDALRelationshipH);
2250 const char CPL_DLL *GDALRelationshipGetLeftTableName(GDALRelationshipH);
2251 const char CPL_DLL *GDALRelationshipGetRightTableName(GDALRelationshipH);
2252 const char CPL_DLL *GDALRelationshipGetMappingTableName(GDALRelationshipH);
2253 void CPL_DLL GDALRelationshipSetMappingTableName(GDALRelationshipH,
2254 const char *);
2255 char CPL_DLL **GDALRelationshipGetLeftTableFields(GDALRelationshipH);
2256 char CPL_DLL **GDALRelationshipGetRightTableFields(GDALRelationshipH);
2257 void CPL_DLL GDALRelationshipSetLeftTableFields(GDALRelationshipH,
2258 CSLConstList);
2259 void CPL_DLL GDALRelationshipSetRightTableFields(GDALRelationshipH,
2260 CSLConstList);
2261 char CPL_DLL **GDALRelationshipGetLeftMappingTableFields(GDALRelationshipH);
2262 char CPL_DLL **GDALRelationshipGetRightMappingTableFields(GDALRelationshipH);
2263 void CPL_DLL GDALRelationshipSetLeftMappingTableFields(GDALRelationshipH,
2264 CSLConstList);
2265 void CPL_DLL GDALRelationshipSetRightMappingTableFields(GDALRelationshipH,
2266 CSLConstList);
2267 GDALRelationshipType CPL_DLL GDALRelationshipGetType(GDALRelationshipH);
2268 void CPL_DLL GDALRelationshipSetType(GDALRelationshipH, GDALRelationshipType);
2269 const char CPL_DLL *GDALRelationshipGetForwardPathLabel(GDALRelationshipH);
2270 void CPL_DLL GDALRelationshipSetForwardPathLabel(GDALRelationshipH,
2271 const char *);
2272 const char CPL_DLL *GDALRelationshipGetBackwardPathLabel(GDALRelationshipH);
2273 void CPL_DLL GDALRelationshipSetBackwardPathLabel(GDALRelationshipH,
2274 const char *);
2275 const char CPL_DLL *GDALRelationshipGetRelatedTableType(GDALRelationshipH);
2276 void CPL_DLL GDALRelationshipSetRelatedTableType(GDALRelationshipH,
2277 const char *);
2278
2279/* ==================================================================== */
2280/* GDAL Cache Management */
2281/* ==================================================================== */
2282
2283 void CPL_DLL CPL_STDCALL GDALSetCacheMax(int nBytes);
2284 int CPL_DLL CPL_STDCALL GDALGetCacheMax(void);
2285 int CPL_DLL CPL_STDCALL GDALGetCacheUsed(void);
2286 void CPL_DLL CPL_STDCALL GDALSetCacheMax64(GIntBig nBytes);
2287 GIntBig CPL_DLL CPL_STDCALL GDALGetCacheMax64(void);
2288 GIntBig CPL_DLL CPL_STDCALL GDALGetCacheUsed64(void);
2289
2290 int CPL_DLL CPL_STDCALL GDALFlushCacheBlock(void);
2291
2292/* ==================================================================== */
2293/* GDAL virtual memory */
2294/* ==================================================================== */
2295
2296 CPLVirtualMem CPL_DLL *GDALDatasetGetVirtualMem(
2297 GDALDatasetH hDS, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize,
2298 int nYSize, int nBufXSize, int nBufYSize, GDALDataType eBufType,
2299 int nBandCount, int *panBandMap, int nPixelSpace, GIntBig nLineSpace,
2300 GIntBig nBandSpace, size_t nCacheSize, size_t nPageSizeHint,
2301 int bSingleThreadUsage, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2302
2303 CPLVirtualMem CPL_DLL *GDALRasterBandGetVirtualMem(
2304 GDALRasterBandH hBand, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize,
2305 int nYSize, int nBufXSize, int nBufYSize, GDALDataType eBufType,
2306 int nPixelSpace, GIntBig nLineSpace, size_t nCacheSize,
2307 size_t nPageSizeHint, int bSingleThreadUsage,
2308 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2309
2310 CPLVirtualMem CPL_DLL *
2311 GDALGetVirtualMemAuto(GDALRasterBandH hBand, GDALRWFlag eRWFlag,
2312 int *pnPixelSpace, GIntBig *pnLineSpace,
2313 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2314
2316 typedef enum
2317{
2320 GTO_TIP,
2324 GTO_BIT,
2327 GTO_BSQ
2328} GDALTileOrganization;
2329
2330 CPLVirtualMem CPL_DLL *GDALDatasetGetTiledVirtualMem(
2331 GDALDatasetH hDS, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize,
2332 int nYSize, int nTileXSize, int nTileYSize, GDALDataType eBufType,
2333 int nBandCount, int *panBandMap, GDALTileOrganization eTileOrganization,
2334 size_t nCacheSize, int bSingleThreadUsage,
2335 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2336
2337 CPLVirtualMem CPL_DLL *GDALRasterBandGetTiledVirtualMem(
2338 GDALRasterBandH hBand, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize,
2339 int nYSize, int nTileXSize, int nTileYSize, GDALDataType eBufType,
2340 size_t nCacheSize, int bSingleThreadUsage,
2341 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2342
2343/* ==================================================================== */
2344/* VRTPansharpenedDataset class. */
2345/* ==================================================================== */
2346
2347 GDALDatasetH CPL_DLL GDALCreatePansharpenedVRT(
2348 const char *pszXML, GDALRasterBandH hPanchroBand, int nInputSpectralBands,
2349 GDALRasterBandH *pahInputSpectralBands) CPL_WARN_UNUSED_RESULT;
2350
2351/* =================================================================== */
2352/* Misc API */
2353/* ==================================================================== */
2354
2355 CPLXMLNode CPL_DLL *
2356 GDALGetJPEG2000Structure(const char *pszFilename,
2357 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2358
2359/* ==================================================================== */
2360/* Multidimensional API_api */
2361/* ==================================================================== */
2362
2363 GDALDatasetH CPL_DLL
2364 GDALCreateMultiDimensional(GDALDriverH hDriver, const char *pszName,
2365 CSLConstList papszRootGroupOptions,
2366 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2367
2368 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreate(GDALDataType eType)
2369 CPL_WARN_UNUSED_RESULT;
2370 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreateString(
2371 size_t nMaxStringLength) CPL_WARN_UNUSED_RESULT;
2372 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreateStringEx(
2373 size_t nMaxStringLength,
2374 GDALExtendedDataTypeSubType eSubType) CPL_WARN_UNUSED_RESULT;
2375 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreateCompound(
2376 const char *pszName, size_t nTotalSize, size_t nComponents,
2377 const GDALEDTComponentH *comps) CPL_WARN_UNUSED_RESULT;
2378 void CPL_DLL GDALExtendedDataTypeRelease(GDALExtendedDataTypeH hEDT);
2379 const char CPL_DLL *GDALExtendedDataTypeGetName(GDALExtendedDataTypeH hEDT);
2380 GDALExtendedDataTypeClass CPL_DLL
2381 GDALExtendedDataTypeGetClass(GDALExtendedDataTypeH hEDT);
2382 GDALDataType CPL_DLL
2383 GDALExtendedDataTypeGetNumericDataType(GDALExtendedDataTypeH hEDT);
2384 size_t CPL_DLL GDALExtendedDataTypeGetSize(GDALExtendedDataTypeH hEDT);
2385 size_t CPL_DLL
2386 GDALExtendedDataTypeGetMaxStringLength(GDALExtendedDataTypeH hEDT);
2387 GDALEDTComponentH CPL_DLL *
2388 GDALExtendedDataTypeGetComponents(GDALExtendedDataTypeH hEDT,
2389 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2390 void CPL_DLL GDALExtendedDataTypeFreeComponents(GDALEDTComponentH *components,
2391 size_t nCount);
2392 int CPL_DLL GDALExtendedDataTypeCanConvertTo(GDALExtendedDataTypeH hSourceEDT,
2393 GDALExtendedDataTypeH hTargetEDT);
2394 int CPL_DLL GDALExtendedDataTypeEquals(GDALExtendedDataTypeH hFirstEDT,
2395 GDALExtendedDataTypeH hSecondEDT);
2396 GDALExtendedDataTypeSubType CPL_DLL
2397 GDALExtendedDataTypeGetSubType(GDALExtendedDataTypeH hEDT);
2398
2399 GDALEDTComponentH CPL_DLL
2400 GDALEDTComponentCreate(const char *pszName, size_t nOffset,
2401 GDALExtendedDataTypeH hType) CPL_WARN_UNUSED_RESULT;
2402 void CPL_DLL GDALEDTComponentRelease(GDALEDTComponentH hComp);
2403 const char CPL_DLL *GDALEDTComponentGetName(GDALEDTComponentH hComp);
2404 size_t CPL_DLL GDALEDTComponentGetOffset(GDALEDTComponentH hComp);
2405 GDALExtendedDataTypeH CPL_DLL GDALEDTComponentGetType(GDALEDTComponentH hComp)
2406 CPL_WARN_UNUSED_RESULT;
2407
2408 GDALGroupH CPL_DLL GDALDatasetGetRootGroup(GDALDatasetH hDS)
2409 CPL_WARN_UNUSED_RESULT;
2410 void CPL_DLL GDALGroupRelease(GDALGroupH hGroup);
2411 const char CPL_DLL *GDALGroupGetName(GDALGroupH hGroup);
2412 const char CPL_DLL *GDALGroupGetFullName(GDALGroupH hGroup);
2413 char CPL_DLL **
2414 GDALGroupGetMDArrayNames(GDALGroupH hGroup,
2415 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2416 GDALMDArrayH CPL_DLL
2417 GDALGroupOpenMDArray(GDALGroupH hGroup, const char *pszMDArrayName,
2418 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2419 GDALMDArrayH CPL_DLL GDALGroupOpenMDArrayFromFullname(
2420 GDALGroupH hGroup, const char *pszMDArrayName,
2421 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2422 GDALMDArrayH CPL_DLL GDALGroupResolveMDArray(
2423 GDALGroupH hGroup, const char *pszName, const char *pszStartingPoint,
2424 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2425 char CPL_DLL **
2426 GDALGroupGetGroupNames(GDALGroupH hGroup,
2427 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2428 GDALGroupH CPL_DLL
2429 GDALGroupOpenGroup(GDALGroupH hGroup, const char *pszSubGroupName,
2430 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2431 GDALGroupH CPL_DLL GDALGroupOpenGroupFromFullname(
2432 GDALGroupH hGroup, const char *pszMDArrayName,
2433 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2434 char CPL_DLL **
2435 GDALGroupGetVectorLayerNames(GDALGroupH hGroup,
2436 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2437 OGRLayerH CPL_DLL
2438 GDALGroupOpenVectorLayer(GDALGroupH hGroup, const char *pszVectorLayerName,
2439 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2440 GDALDimensionH CPL_DLL *
2441 GDALGroupGetDimensions(GDALGroupH hGroup, size_t *pnCount,
2442 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2443 GDALAttributeH CPL_DLL GDALGroupGetAttribute(
2444 GDALGroupH hGroup, const char *pszName) CPL_WARN_UNUSED_RESULT;
2445 GDALAttributeH CPL_DLL *
2446 GDALGroupGetAttributes(GDALGroupH hGroup, size_t *pnCount,
2447 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2448 CSLConstList CPL_DLL GDALGroupGetStructuralInfo(GDALGroupH hGroup);
2449 GDALGroupH CPL_DLL
2450 GDALGroupCreateGroup(GDALGroupH hGroup, const char *pszSubGroupName,
2451 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2452 bool CPL_DLL GDALGroupDeleteGroup(GDALGroupH hGroup, const char *pszName,
2453 CSLConstList papszOptions);
2454 GDALDimensionH CPL_DLL GDALGroupCreateDimension(
2455 GDALGroupH hGroup, const char *pszName, const char *pszType,
2456 const char *pszDirection, GUInt64 nSize,
2457 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2458 GDALMDArrayH CPL_DLL GDALGroupCreateMDArray(
2459 GDALGroupH hGroup, const char *pszName, size_t nDimensions,
2460 GDALDimensionH *pahDimensions, GDALExtendedDataTypeH hEDT,
2461 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2462 bool CPL_DLL GDALGroupDeleteMDArray(GDALGroupH hGroup, const char *pszName,
2463 CSLConstList papszOptions);
2464 GDALAttributeH CPL_DLL GDALGroupCreateAttribute(
2465 GDALGroupH hGroup, const char *pszName, size_t nDimensions,
2466 const GUInt64 *panDimensions, GDALExtendedDataTypeH hEDT,
2467 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2468 bool CPL_DLL GDALGroupDeleteAttribute(GDALGroupH hGroup, const char *pszName,
2469 CSLConstList papszOptions);
2470 bool CPL_DLL GDALGroupRename(GDALGroupH hGroup, const char *pszNewName);
2471 GDALGroupH CPL_DLL GDALGroupSubsetDimensionFromSelection(
2472 GDALGroupH hGroup, const char *pszSelection, CSLConstList papszOptions);
2473
2474 void CPL_DLL GDALMDArrayRelease(GDALMDArrayH hMDArray);
2475 const char CPL_DLL *GDALMDArrayGetName(GDALMDArrayH hArray);
2476 const char CPL_DLL *GDALMDArrayGetFullName(GDALMDArrayH hArray);
2477 GUInt64 CPL_DLL GDALMDArrayGetTotalElementsCount(GDALMDArrayH hArray);
2478 size_t CPL_DLL GDALMDArrayGetDimensionCount(GDALMDArrayH hArray);
2479 GDALDimensionH CPL_DLL *
2480 GDALMDArrayGetDimensions(GDALMDArrayH hArray,
2481 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2482 GDALExtendedDataTypeH CPL_DLL GDALMDArrayGetDataType(GDALMDArrayH hArray)
2483 CPL_WARN_UNUSED_RESULT;
2484 int CPL_DLL GDALMDArrayRead(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx,
2485 const size_t *count, const GInt64 *arrayStep,
2486 const GPtrDiff_t *bufferStride,
2487 GDALExtendedDataTypeH bufferDatatype,
2488 void *pDstBuffer, const void *pDstBufferAllocStart,
2489 size_t nDstBufferllocSize);
2490 int CPL_DLL GDALMDArrayWrite(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx,
2491 const size_t *count, const GInt64 *arrayStep,
2492 const GPtrDiff_t *bufferStride,
2493 GDALExtendedDataTypeH bufferDatatype,
2494 const void *pSrcBuffer,
2495 const void *psrcBufferAllocStart,
2496 size_t nSrcBufferllocSize);
2497 int CPL_DLL GDALMDArrayAdviseRead(GDALMDArrayH hArray,
2498 const GUInt64 *arrayStartIdx,
2499 const size_t *count);
2500 int CPL_DLL GDALMDArrayAdviseReadEx(GDALMDArrayH hArray,
2501 const GUInt64 *arrayStartIdx,
2502 const size_t *count,
2503 CSLConstList papszOptions);
2504 GDALAttributeH CPL_DLL GDALMDArrayGetAttribute(
2505 GDALMDArrayH hArray, const char *pszName) CPL_WARN_UNUSED_RESULT;
2506 GDALAttributeH CPL_DLL *
2507 GDALMDArrayGetAttributes(GDALMDArrayH hArray, size_t *pnCount,
2508 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2509 GDALAttributeH CPL_DLL GDALMDArrayCreateAttribute(
2510 GDALMDArrayH hArray, const char *pszName, size_t nDimensions,
2511 const GUInt64 *panDimensions, GDALExtendedDataTypeH hEDT,
2512 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2513 bool CPL_DLL GDALMDArrayDeleteAttribute(GDALMDArrayH hArray,
2514 const char *pszName,
2515 CSLConstList papszOptions);
2516 bool CPL_DLL GDALMDArrayResize(GDALMDArrayH hArray,
2517 const GUInt64 *panNewDimSizes,
2518 CSLConstList papszOptions);
2519 const void CPL_DLL *GDALMDArrayGetRawNoDataValue(GDALMDArrayH hArray);
2520 double CPL_DLL GDALMDArrayGetNoDataValueAsDouble(GDALMDArrayH hArray,
2521 int *pbHasNoDataValue);
2522int64_t CPL_DLL GDALMDArrayGetNoDataValueAsInt64(GDALMDArrayH hArray,
2523 int *pbHasNoDataValue);
2524uint64_t CPL_DLL GDALMDArrayGetNoDataValueAsUInt64(GDALMDArrayH hArray,
2525 int *pbHasNoDataValue);
2526 int CPL_DLL GDALMDArraySetRawNoDataValue(GDALMDArrayH hArray, const void *);
2527 int CPL_DLL GDALMDArraySetNoDataValueAsDouble(GDALMDArrayH hArray,
2528 double dfNoDataValue);
2529 int CPL_DLL GDALMDArraySetNoDataValueAsInt64(GDALMDArrayH hArray,
2530 int64_t nNoDataValue);
2531 int CPL_DLL GDALMDArraySetNoDataValueAsUInt64(GDALMDArrayH hArray,
2532 uint64_t nNoDataValue);
2533 int CPL_DLL GDALMDArraySetScale(GDALMDArrayH hArray, double dfScale);
2534 int CPL_DLL GDALMDArraySetScaleEx(GDALMDArrayH hArray, double dfScale,
2535 GDALDataType eStorageType);
2536 double CPL_DLL GDALMDArrayGetScale(GDALMDArrayH hArray, int *pbHasValue);
2537 double CPL_DLL GDALMDArrayGetScaleEx(GDALMDArrayH hArray, int *pbHasValue,
2538 GDALDataType *peStorageType);
2539 int CPL_DLL GDALMDArraySetOffset(GDALMDArrayH hArray, double dfOffset);
2540 int CPL_DLL GDALMDArraySetOffsetEx(GDALMDArrayH hArray, double dfOffset,
2541 GDALDataType eStorageType);
2542 double CPL_DLL GDALMDArrayGetOffset(GDALMDArrayH hArray, int *pbHasValue);
2543 double CPL_DLL GDALMDArrayGetOffsetEx(GDALMDArrayH hArray, int *pbHasValue,
2544 GDALDataType *peStorageType);
2545 GUInt64 CPL_DLL *GDALMDArrayGetBlockSize(GDALMDArrayH hArray, size_t *pnCount);
2546 int CPL_DLL GDALMDArraySetUnit(GDALMDArrayH hArray, const char *);
2547 const char CPL_DLL *GDALMDArrayGetUnit(GDALMDArrayH hArray);
2548 int CPL_DLL GDALMDArraySetSpatialRef(GDALMDArrayH, OGRSpatialReferenceH);
2549 OGRSpatialReferenceH CPL_DLL GDALMDArrayGetSpatialRef(GDALMDArrayH hArray);
2550 size_t CPL_DLL *GDALMDArrayGetProcessingChunkSize(GDALMDArrayH hArray,
2551 size_t *pnCount,
2552 size_t nMaxChunkMemory);
2553 CSLConstList CPL_DLL GDALMDArrayGetStructuralInfo(GDALMDArrayH hArray);
2554 GDALMDArrayH CPL_DLL GDALMDArrayGetView(GDALMDArrayH hArray,
2555 const char *pszViewExpr);
2556 GDALMDArrayH CPL_DLL GDALMDArrayTranspose(GDALMDArrayH hArray,
2557 size_t nNewAxisCount,
2558 const int *panMapNewAxisToOldAxis);
2559 GDALMDArrayH CPL_DLL GDALMDArrayGetUnscaled(GDALMDArrayH hArray);
2560 GDALMDArrayH CPL_DLL GDALMDArrayGetMask(GDALMDArrayH hArray,
2561 CSLConstList papszOptions);
2562 GDALDatasetH CPL_DLL GDALMDArrayAsClassicDataset(GDALMDArrayH hArray,
2563 size_t iXDim, size_t iYDim);
2564 GDALDatasetH CPL_DLL GDALMDArrayAsClassicDatasetEx(GDALMDArrayH hArray,
2565 size_t iXDim, size_t iYDim,
2566 GDALGroupH hRootGroup,
2567 CSLConstList papszOptions);
2568 CPLErr CPL_DLL GDALMDArrayGetStatistics(
2569 GDALMDArrayH hArray, GDALDatasetH, int bApproxOK, int bForce,
2570 double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev,
2571 GUInt64 *pnValidCount, GDALProgressFunc pfnProgress, void *pProgressData);
2572 int CPL_DLL GDALMDArrayComputeStatistics(GDALMDArrayH hArray, GDALDatasetH,
2573 int bApproxOK, double *pdfMin,
2574 double *pdfMax, double *pdfMean,
2575 double *pdfStdDev,
2576 GUInt64 *pnValidCount,
2577 GDALProgressFunc, void *pProgressData);
2578 int CPL_DLL GDALMDArrayComputeStatisticsEx(
2579 GDALMDArrayH hArray, GDALDatasetH, int bApproxOK, double *pdfMin,
2580 double *pdfMax, double *pdfMean, double *pdfStdDev, GUInt64 *pnValidCount,
2581 GDALProgressFunc, void *pProgressData, CSLConstList papszOptions);
2582 GDALMDArrayH CPL_DLL GDALMDArrayGetResampled(GDALMDArrayH hArray,
2583 size_t nNewDimCount,
2584 const GDALDimensionH *pahNewDims,
2585 GDALRIOResampleAlg resampleAlg,
2586 OGRSpatialReferenceH hTargetSRS,
2587 CSLConstList papszOptions);
2588 GDALMDArrayH CPL_DLL GDALMDArrayGetGridded(
2589 GDALMDArrayH hArray, const char *pszGridOptions, GDALMDArrayH hXArray,
2590 GDALMDArrayH hYArray, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2591
2592 GDALMDArrayH CPL_DLL *
2593 GDALMDArrayGetCoordinateVariables(GDALMDArrayH hArray,
2594 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2595
2596 GDALMDArrayH CPL_DLL *
2597 GDALMDArrayGetMeshGrid(const GDALMDArrayH *pahInputArrays,
2598 size_t nCountInputArrays, size_t *pnCountOutputArrays,
2599 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
2600
2601 void CPL_DLL GDALReleaseArrays(GDALMDArrayH *arrays, size_t nCount);
2602 int CPL_DLL GDALMDArrayCache(GDALMDArrayH hArray, CSLConstList papszOptions);
2603 bool CPL_DLL GDALMDArrayRename(GDALMDArrayH hArray, const char *pszNewName);
2604
2605 GDALRasterAttributeTableH CPL_DLL GDALCreateRasterAttributeTableFromMDArrays(
2606 GDALRATTableType eTableType, int nArrays, const GDALMDArrayH *ahArrays,
2607 const GDALRATFieldUsage *paeUsages);
2608
2609 void CPL_DLL GDALAttributeRelease(GDALAttributeH hAttr);
2610 void CPL_DLL GDALReleaseAttributes(GDALAttributeH *attributes, size_t nCount);
2611 const char CPL_DLL *GDALAttributeGetName(GDALAttributeH hAttr);
2612 const char CPL_DLL *GDALAttributeGetFullName(GDALAttributeH hAttr);
2613 GUInt64 CPL_DLL GDALAttributeGetTotalElementsCount(GDALAttributeH hAttr);
2614 size_t CPL_DLL GDALAttributeGetDimensionCount(GDALAttributeH hAttr);
2615 GUInt64 CPL_DLL *
2616 GDALAttributeGetDimensionsSize(GDALAttributeH hAttr,
2617 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2618 GDALExtendedDataTypeH CPL_DLL GDALAttributeGetDataType(GDALAttributeH hAttr)
2619 CPL_WARN_UNUSED_RESULT;
2620 GByte CPL_DLL *GDALAttributeReadAsRaw(GDALAttributeH hAttr,
2621 size_t *pnSize) CPL_WARN_UNUSED_RESULT;
2622 void CPL_DLL GDALAttributeFreeRawResult(GDALAttributeH hAttr, GByte *raw,
2623 size_t nSize);
2624 const char CPL_DLL *GDALAttributeReadAsString(GDALAttributeH hAttr);
2625 int CPL_DLL GDALAttributeReadAsInt(GDALAttributeH hAttr);
2626int64_t CPL_DLL GDALAttributeReadAsInt64(GDALAttributeH hAttr);
2627 double CPL_DLL GDALAttributeReadAsDouble(GDALAttributeH hAttr);
2628 char CPL_DLL **
2629 GDALAttributeReadAsStringArray(GDALAttributeH hAttr) CPL_WARN_UNUSED_RESULT;
2630 int CPL_DLL *GDALAttributeReadAsIntArray(GDALAttributeH hAttr, size_t *pnCount)
2631 CPL_WARN_UNUSED_RESULT;
2632int64_t CPL_DLL *
2633 GDALAttributeReadAsInt64Array(GDALAttributeH hAttr,
2634 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2635 double CPL_DLL *
2636 GDALAttributeReadAsDoubleArray(GDALAttributeH hAttr,
2637 size_t *pnCount) CPL_WARN_UNUSED_RESULT;
2638 int CPL_DLL GDALAttributeWriteRaw(GDALAttributeH hAttr, const void *, size_t);
2639 int CPL_DLL GDALAttributeWriteString(GDALAttributeH hAttr, const char *);
2640 int CPL_DLL GDALAttributeWriteStringArray(GDALAttributeH hAttr, CSLConstList);
2641 int CPL_DLL GDALAttributeWriteInt(GDALAttributeH hAttr, int);
2642 int CPL_DLL GDALAttributeWriteIntArray(GDALAttributeH hAttr, const int *,
2643 size_t);
2644 int CPL_DLL GDALAttributeWriteInt64(GDALAttributeH hAttr, int64_t);
2645 int CPL_DLL GDALAttributeWriteInt64Array(GDALAttributeH hAttr, const int64_t *,
2646 size_t);
2647 int CPL_DLL GDALAttributeWriteDouble(GDALAttributeH hAttr, double);
2648 int CPL_DLL GDALAttributeWriteDoubleArray(GDALAttributeH hAttr, const double *,
2649 size_t);
2650 bool CPL_DLL GDALAttributeRename(GDALAttributeH hAttr, const char *pszNewName);
2651
2652 void CPL_DLL GDALDimensionRelease(GDALDimensionH hDim);
2653 void CPL_DLL GDALReleaseDimensions(GDALDimensionH *dims, size_t nCount);
2654 const char CPL_DLL *GDALDimensionGetName(GDALDimensionH hDim);
2655 const char CPL_DLL *GDALDimensionGetFullName(GDALDimensionH hDim);
2656 const char CPL_DLL *GDALDimensionGetType(GDALDimensionH hDim);
2657 const char CPL_DLL *GDALDimensionGetDirection(GDALDimensionH hDim);
2658 GUInt64 CPL_DLL GDALDimensionGetSize(GDALDimensionH hDim);
2659 GDALMDArrayH CPL_DLL GDALDimensionGetIndexingVariable(GDALDimensionH hDim)
2660 CPL_WARN_UNUSED_RESULT;
2661 int CPL_DLL GDALDimensionSetIndexingVariable(GDALDimensionH hDim,
2662 GDALMDArrayH hArray);
2663 bool CPL_DLL GDALDimensionRename(GDALDimensionH hDim, const char *pszNewName);
2664
2665 CPL_C_END
2666
2667#endif /* ndef GDAL_H_INCLUDED */
cpl_error.h
CPL error handling services.
CPLErr
CPLErr
Error category.
Definition: cpl_error.h:37
cpl_minixml.h
Definitions for CPL mini XML Parser/Serializer.
cpl_port.h
Core portability definitions for CPL.
GPtrDiff_t
int GPtrDiff_t
Integer type large enough to hold the difference between 2 addresses.
Definition: cpl_port.h:240
CPL_RESTRICT
#define CPL_RESTRICT
restrict keyword to declare that pointers do not alias
Definition: cpl_port.h:1010
GUIntBig
unsigned long long GUIntBig
Large unsigned integer type (generally 64-bit unsigned integer type).
Definition: cpl_port.h:202
CPL_C_END
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:283
CPL_C_START
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:279
GInt64
GIntBig GInt64
Signed 64 bit integer type.
Definition: cpl_port.h:220
CSLConstList
char ** CSLConstList
Type of a constant null-terminated list of nul terminated strings.
Definition: cpl_port.h:1179
GUInt64
GUIntBig GUInt64
Unsigned 64 bit integer type.
Definition: cpl_port.h:222
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:964
GByte
unsigned char GByte
Unsigned byte type.
Definition: cpl_port.h:169
GIntBig
long long GIntBig
Large signed integer type (generally 64-bit integer type).
Definition: cpl_port.h:199
cpl_virtualmem.h
Virtual memory management.
CPLVirtualMem
struct CPLVirtualMem CPLVirtualMem
Opaque type that represents a virtual memory mapping.
Definition: cpl_virtualmem.h:46
GSpacing
GIntBig GSpacing
Type to express pixel, line or band spacing.
Definition: gdal.h:400
GDALGetOverview
GDALRasterBandH GDALGetOverview(GDALRasterBandH, int)
Fetch overview raster band object.
Definition: gdalrasterband.cpp:3246
GDALGetDriverShortName
const char * GDALGetDriverShortName(GDALDriverH)
Return the short name of a driver.
Definition: gdaldriver.cpp:1997
GDALDatasetCopyWholeRaster
CPLErr GDALDatasetCopyWholeRaster(GDALDatasetH hSrcDS, GDALDatasetH hDstDS, CSLConstList papszOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Copy all dataset raster data.
Definition: rasterio.cpp:4618
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:1407
GDALRATTableType
GDALRATTableType
RAT table type (thematic or athematic)
Definition: gdal.h:2132
GRTT_THEMATIC
@ GRTT_THEMATIC
Definition: gdal.h:2133
GRTT_ATHEMATIC
@ GRTT_ATHEMATIC
Definition: gdal.h:2134
GDALEDTComponentGetName
const char * GDALEDTComponentGetName(GDALEDTComponentH hComp)
Return the name.
Definition: gdalmultidim.cpp:10801
GDALAccess
GDALAccess
Definition: gdal.h:110
GA_ReadOnly
@ GA_ReadOnly
Definition: gdal.h:111
GA_Update
@ GA_Update
Definition: gdal.h:112
GDALIdentifyDriver
GDALDriverH GDALIdentifyDriver(const char *pszFilename, CSLConstList papszFileList)
Identify the driver that can open a dataset.
Definition: gdaldriver.cpp:2602
GDALDatasetIsThreadSafe
bool GDALDatasetIsThreadSafe(GDALDatasetH, int nScopeFlags, CSLConstList papszOptions)
Return whether this dataset, and its related objects (typically raster bands), can be called for the ...
Definition: gdalthreadsafedataset.cpp:1131
GDALGroupGetFullName
const char * GDALGroupGetFullName(GDALGroupH hGroup)
Return the full name of the group.
Definition: gdalmultidim.cpp:10876
GDALAttributeWriteInt64Array
int GDALAttributeWriteInt64Array(GDALAttributeH hAttr, const int64_t *, size_t)
Write an attribute from an array of int64_t.
Definition: gdalmultidim.cpp:13291
GDALSetColorEntry
void GDALSetColorEntry(GDALColorTableH, int, const GDALColorEntry *)
Set entry in color table.
Definition: gdalcolortable.cpp:226
GDALSetRasterScale
CPLErr GDALSetRasterScale(GDALRasterBandH hBand, double dfNewOffset)
Set scaling ratio.
Definition: gdalrasterband.cpp:3602
GDALRATSetLinearBinning
CPLErr GDALRATSetLinearBinning(GDALRasterAttributeTableH, double, double)
Set linear binning information.
Definition: gdal_rat.cpp:491
GDALDimensionH
struct GDALDimensionHS * GDALDimensionH
Opaque type for C++ GDALDimension.
Definition: gdal.h:437
GDALDatasetGetLayerByName
OGRLayerH GDALDatasetGetLayerByName(GDALDatasetH, const char *)
Fetch a layer by name.
Definition: gdaldataset.cpp:4919
GDALWriteBlock
CPLErr GDALWriteBlock(GDALRasterBandH, int, int, void *)
Write a block of image data efficiently.
Definition: gdalrasterband.cpp:1282
GDALAttributeWriteIntArray
int GDALAttributeWriteIntArray(GDALAttributeH hAttr, const int *, size_t)
Write an attribute from an array of int.
Definition: gdalmultidim.cpp:13266
GDALCreate
GDALDatasetH GDALCreate(GDALDriverH hDriver, const char *, int, int, int, GDALDataType, CSLConstList)
Create a new dataset with this driver.
Definition: gdaldriver.cpp:308
GDALGetRasterNoDataValue
double GDALGetRasterNoDataValue(GDALRasterBandH, int *)
Fetch the no data value for this band.
Definition: gdalrasterband.cpp:2334
GDALMDArraySetRawNoDataValue
int GDALMDArraySetRawNoDataValue(GDALMDArrayH hArray, const void *)
Set the nodata value as a "raw" value.
Definition: gdalmultidim.cpp:11905
GDALGetDataTypeSizeBits
int GDALGetDataTypeSizeBits(GDALDataType eDataType)
Get data type size in bits.
Definition: gdal_misc.cpp:452
GDALDatasetClearStatistics
void GDALDatasetClearStatistics(GDALDatasetH hDS)
Clear statistics.
Definition: gdaldataset.cpp:9085
GDALGetNoDataReplacementValue
double GDALGetNoDataReplacementValue(GDALDataType, double)
Returns a replacement value for a nodata value or 0 if dfNoDataValue is out of range for the specifie...
Definition: gdal_misc.cpp:5313
GDALGetRandomRasterSample
int GDALGetRandomRasterSample(GDALRasterBandH, int, float *)
Undocumented.
Definition: gdal_misc.cpp:1419
GDALRelationshipGetForwardPathLabel
const char * GDALRelationshipGetForwardPathLabel(GDALRelationshipH)
Get the label of the forward path for the relationship.
Definition: gdalrelationship.cpp:474
GDALGetCacheUsed
int GDALGetCacheUsed(void)
Get cache memory used.
Definition: gdalrasterblock.cpp:309
GDALAttributeH
struct GDALAttributeHS * GDALAttributeH
Opaque type for C++ GDALAttribute.
Definition: gdal.h:435
GDALRATGetRowOfValue
int GDALRATGetRowOfValue(GDALRasterAttributeTableH, double)
Get row for pixel value.
Definition: gdal_rat.cpp:365
GDALSetCacheMax64
void GDALSetCacheMax64(GIntBig nBytes)
Set maximum cache memory.
Definition: gdalrasterblock.cpp:130
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:1523
GDALDeinterleave
void GDALDeinterleave(const void *pSourceBuffer, GDALDataType eSourceDT, int nComponents, void **ppDestBuffer, GDALDataType eDestDT, size_t nIters)
Definition: rasterio.cpp:5558
GDALRasterBandAsMDArray
GDALMDArrayH GDALRasterBandAsMDArray(GDALRasterBandH)
Return a view of this raster band as a 2D multidimensional GDALMDArray.
Definition: gdalmultidim.cpp:13535
GDALGroupDeleteGroup
bool GDALGroupDeleteGroup(GDALGroupH hGroup, const char *pszName, CSLConstList papszOptions)
Delete a sub-group from a group.
Definition: gdalmultidim.cpp:11256
GDALDatasetAddFieldDomain
bool GDALDatasetAddFieldDomain(GDALDatasetH hDS, OGRFieldDomainH hFieldDomain, char **ppszFailureReason)
Add a field domain to the dataset.
Definition: gdaldataset.cpp:9248
GDALGetMetadata
char ** GDALGetMetadata(GDALMajorObjectH, const char *)
Fetch metadata.
Definition: gdalmajorobject.cpp:247
GDALGetDatasetDriver
GDALDriverH GDALGetDatasetDriver(GDALDatasetH)
Fetch the driver to which this dataset relates.
Definition: gdaldataset.cpp:1531
GDALGroupGetAttribute
GDALAttributeH GDALGroupGetAttribute(GDALGroupH hGroup, const char *pszName)
Return an attribute by its name.
Definition: gdalmultidim.cpp:11138
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:9944
GDALDimensionGetDirection
const char * GDALDimensionGetDirection(GDALDimensionH hDim)
Return dimension direction.
Definition: gdalmultidim.cpp:13409
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:11112
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:1417
GDALRATSetValueAsDouble
void GDALRATSetValueAsDouble(GDALRasterAttributeTableH, int, int, double)
Set field value from double.
Definition: gdal_rat.cpp:1844
GDALGroupOpenMDArray
GDALMDArrayH GDALGroupOpenMDArray(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a multidimensional array.
Definition: gdalmultidim.cpp:10914
GDALGetMaskFlags
int GDALGetMaskFlags(GDALRasterBandH hBand)
Return the status flags of the mask band associated with the band.
Definition: gdalrasterband.cpp:8021
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:12378
GDALSetProjection
CPLErr GDALSetProjection(GDALDatasetH, const char *)
Set the projection reference string for this dataset.
Definition: gdaldataset.cpp:1340
GDALRasterBandCopyWholeRaster
CPLErr GDALRasterBandCopyWholeRaster(GDALRasterBandH hSrcBand, GDALRasterBandH hDstBand, const char *const *constpapszOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Copy a whole raster band.
Definition: rasterio.cpp:4946
GDALGetAsyncStatusTypeByName
GDALAsyncStatusType GDALGetAsyncStatusTypeByName(const char *)
Get AsyncStatusType by symbolic name.
Definition: gdal_misc.cpp:1049
GDALRATSetValueAsString
void GDALRATSetValueAsString(GDALRasterAttributeTableH, int, int, const char *)
Set field value from string.
Definition: gdal_rat.cpp:1711
GDALRelationshipSetType
void GDALRelationshipSetType(GDALRelationshipH, GDALRelationshipType)
Sets the type of the relationship.
Definition: gdalrelationship.cpp:443
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:13595
GDALMDArrayGetTotalElementsCount
GUInt64 GDALMDArrayGetTotalElementsCount(GDALMDArrayH hArray)
Return the total number of values in the array.
Definition: gdalmultidim.cpp:11492
VRTPDWorkingDataPtr
void * VRTPDWorkingDataPtr
Generic pointer for the working structure of VRTProcessedDataset function.
Definition: gdal.h:1747
GDALGetSpatialRef
OGRSpatialReferenceH GDALGetSpatialRef(GDALDatasetH)
Fetch the spatial reference for this dataset.
Definition: gdaldataset.cpp:1213
GDALSwapWordsEx
void GDALSwapWordsEx(void *pData, int nWordSize, size_t nWordCount, int nWordSkip)
Byte swap words in-place.
Definition: rasterio.cpp:2100
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:10960
GDALGetOverviewCount
int GDALGetOverviewCount(GDALRasterBandH)
Return the number of overview layers available.
Definition: gdalrasterband.cpp:3203
GDALAttributeWriteInt64
int GDALAttributeWriteInt64(GDALAttributeH hAttr, int64_t)
Write an attribute from an int64_t value.
Definition: gdalmultidim.cpp:13197
GDALAttributeRelease
void GDALAttributeRelease(GDALAttributeH hAttr)
Release the GDAL in-memory object associated with a GDALAttribute.
Definition: gdalmultidim.cpp:12767
GDALGetBlockSize
void GDALGetBlockSize(GDALRasterBandH, int *pnXSize, int *pnYSize)
Fetch the "natural" block size of this band.
Definition: gdalrasterband.cpp:1504
GDALMDArrayGetView
GDALMDArrayH GDALMDArrayGetView(GDALMDArrayH hArray, const char *pszViewExpr)
Return a view of the array using slicing or field access.
Definition: gdalmultidim.cpp:12280
GDALGetMetadataDomainList
char ** GDALGetMetadataDomainList(GDALMajorObjectH hObject)
Fetch list of metadata domains.
Definition: gdalmajorobject.cpp:201
GDALGetDriverCreationOptionList
const char * GDALGetDriverCreationOptionList(GDALDriverH)
Return the list of creation options of the driver.
Definition: gdaldriver.cpp:2073
GDALPaletteInterp
GDALPaletteInterp
Definition: gdal.h:338
GPI_CMYK
@ GPI_CMYK
Definition: gdal.h:341
GPI_HLS
@ GPI_HLS
Definition: gdal.h:342
GPI_Gray
@ GPI_Gray
Definition: gdal.h:339
GPI_RGB
@ GPI_RGB
Definition: gdal.h:340
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:4545
GDALSetDescription
void GDALSetDescription(GDALMajorObjectH, const char *)
Set object description.
Definition: gdalmajorobject.cpp:118
GDALSubdatasetInfoH
struct GDALSubdatasetInfo * GDALSubdatasetInfoH
Opaque type used for the C bindings of the C++ GDALSubdatasetInfo class.
Definition: gdal.h:1440
GDALDimensionRelease
void GDALDimensionRelease(GDALDimensionH hDim)
Release the GDAL in-memory object associated with a GDALDimension.
Definition: gdalmultidim.cpp:13354
GDALGetRasterCount
int GDALGetRasterCount(GDALDatasetH)
Fetch the number of raster bands on this dataset.
Definition: gdaldataset.cpp:1112
GDALGetRasterSampleOverviewEx
GDALRasterBandH GDALGetRasterSampleOverviewEx(GDALRasterBandH, GUIntBig)
Fetch best sampling overview.
Definition: gdalrasterband.cpp:3342
GDALAttributeGetDimensionCount
size_t GDALAttributeGetDimensionCount(GDALAttributeH hAttr)
Return the number of dimensions.
Definition: gdalmultidim.cpp:12827
GDALGetRasterStatistics
CPLErr GDALGetRasterStatistics(GDALRasterBandH, int bApproxOK, int bForce, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev)
Fetch image statistics.
Definition: gdalrasterband.cpp:4968
GDALRATInitializeFromColorTable
CPLErr GDALRATInitializeFromColorTable(GDALRasterAttributeTableH, GDALColorTableH)
Initialize from color table.
Definition: gdal_rat.cpp:968
GDALMDArrayGetDimensionCount
size_t GDALMDArrayGetDimensionCount(GDALMDArrayH hArray)
Return the number of dimensions.
Definition: gdalmultidim.cpp:11506
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:8557
GDALGroupGetMDArrayNames
char ** GDALGroupGetMDArrayNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of multidimensional array names contained in this group.
Definition: gdalmultidim.cpp:10892
GDALGetCacheUsed64
GIntBig GDALGetCacheUsed64(void)
Get cache memory used.
Definition: gdalrasterblock.cpp:339
GDALDatasetSetStyleTableDirectly
void GDALDatasetSetStyleTableDirectly(GDALDatasetH, OGRStyleTableH)
Set dataset style table.
Definition: gdaldataset.cpp:5516
GDALDataType
GDALDataType
Definition: gdal.h:48
GDT_UInt32
@ GDT_UInt32
Definition: gdal.h:54
GDT_UInt64
@ GDT_UInt64
Definition: gdal.h:56
GDT_CInt32
@ GDT_CInt32
Definition: gdal.h:61
GDT_Int64
@ GDT_Int64
Definition: gdal.h:57
GDT_Byte
@ GDT_Byte
Definition: gdal.h:50
GDT_Int8
@ GDT_Int8
Definition: gdal.h:51
GDT_CFloat32
@ GDT_CFloat32
Definition: gdal.h:63
GDT_CFloat64
@ GDT_CFloat64
Definition: gdal.h:64
GDT_Float64
@ GDT_Float64
Definition: gdal.h:59
GDT_UInt16
@ GDT_UInt16
Definition: gdal.h:52
GDT_Int16
@ GDT_Int16
Definition: gdal.h:53
GDT_CInt16
@ GDT_CInt16
Definition: gdal.h:60
GDT_Int32
@ GDT_Int32
Definition: gdal.h:55
GDT_Unknown
@ GDT_Unknown
Definition: gdal.h:49
GDT_Float32
@ GDT_Float32
Definition: gdal.h:58
GDALGetRasterOffset
double GDALGetRasterOffset(GDALRasterBandH, int *pbSuccess)
Fetch the raster value offset.
Definition: gdalrasterband.cpp:3446
GDALDatasetCommitTransaction
OGRErr GDALDatasetCommitTransaction(GDALDatasetH hDS)
For datasources which support transactions, CommitTransaction commits a transaction.
Definition: gdaldataset.cpp:8154
GDALDatasetH
void * GDALDatasetH
Opaque type used for the C bindings of the C++ GDALDataset class.
Definition: gdal.h:376
GDALHasArbitraryOverviews
int GDALHasArbitraryOverviews(GDALRasterBandH)
Check for arbitrary overviews.
Definition: gdalrasterband.cpp:3162
GDALGetColorEntry
const GDALColorEntry * GDALGetColorEntry(GDALColorTableH, int)
Fetch a color entry from table.
Definition: gdalcolortable.cpp:116
GDALGetAccess
int GDALGetAccess(GDALDatasetH hDS)
Return access flag.
Definition: gdaldataset.cpp:2980
GDALGetRasterBandXSize
int GDALGetRasterBandXSize(GDALRasterBandH)
Fetch XSize of raster.
Definition: gdalrasterband.cpp:3735
GDALRATGetUsageOfCol
GDALRATFieldUsage GDALRATGetUsageOfCol(GDALRasterAttributeTableH, int)
Fetch column usage value.
Definition: gdal_rat.cpp:1317
GDALAttributeReadAsInt
int GDALAttributeReadAsInt(GDALAttributeH hAttr)
Return the value of an attribute as a integer.
Definition: gdalmultidim.cpp:12967
GDALExtendedDataTypeCreate
GDALExtendedDataTypeH GDALExtendedDataTypeCreate(GDALDataType eType)
Return a new GDALExtendedDataType of class GEDTC_NUMERIC.
Definition: gdalmultidim.cpp:10478
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, const int *panBandCount, GSpacing nPixelSpace, GSpacing nLineSpace, GSpacing nBandSpace, GDALRasterIOExtraArg *psExtraArg)
Read/write a region of image data from multiple bands.
Definition: gdaldataset.cpp:2880
GDALRATFieldUsage
GDALRATFieldUsage
Field usage of raster attribute table.
Definition: gdal.h:2106
GFU_Min
@ GFU_Min
Definition: gdal.h:2110
GFU_AlphaMin
@ GFU_AlphaMin
Definition: gdal.h:2120
GFU_GreenMin
@ GFU_GreenMin
Definition: gdal.h:2118
GFU_Red
@ GFU_Red
Definition: gdal.h:2113
GFU_Alpha
@ GFU_Alpha
Definition: gdal.h:2116
GFU_MaxCount
@ GFU_MaxCount
Definition: gdal.h:2125
GFU_MinMax
@ GFU_MinMax
Definition: gdal.h:2112
GFU_RedMin
@ GFU_RedMin
Definition: gdal.h:2117
GFU_GreenMax
@ GFU_GreenMax
Definition: gdal.h:2122
GFU_Name
@ GFU_Name
Definition: gdal.h:2109
GFU_BlueMax
@ GFU_BlueMax
Definition: gdal.h:2123
GFU_BlueMin
@ GFU_BlueMin
Definition: gdal.h:2119
GFU_RedMax
@ GFU_RedMax
Definition: gdal.h:2121
GFU_Green
@ GFU_Green
Definition: gdal.h:2114
GFU_Blue
@ GFU_Blue
Definition: gdal.h:2115
GFU_AlphaMax
@ GFU_AlphaMax
Definition: gdal.h:2124
GFU_PixelCount
@ GFU_PixelCount
Definition: gdal.h:2108
GFU_Generic
@ GFU_Generic
Definition: gdal.h:2107
GFU_Max
@ GFU_Max
Definition: gdal.h:2111
GDALGetRasterScale
double GDALGetRasterScale(GDALRasterBandH, int *pbSuccess)
Fetch the raster value scale.
Definition: gdalrasterband.cpp:3552
GDALGetColorEntryCount
int GDALGetColorEntryCount(GDALColorTableH)
Get number of color entries in table.
Definition: gdalcolortable.cpp:298
GDALRegisterPlugin
CPLErr GDALRegisterPlugin(const char *name)
Register a plugin by name, returning an error if not found.
Definition: gdalallregister.cpp:51
GDALGetRasterBand
GDALRasterBandH GDALGetRasterBand(GDALDatasetH, int)
Fetch a band object for a dataset.
Definition: gdaldataset.cpp:1076
GDALGetRasterAccess
GDALAccess GDALGetRasterAccess(GDALRasterBandH)
Find out if we have update permission for this band.
Definition: gdalrasterband.cpp:2181
GDALMDArrayGetNoDataValueAsInt64
int64_t GDALMDArrayGetNoDataValueAsInt64(GDALMDArrayH hArray, int *pbHasNoDataValue)
Return the nodata value as a Int64.
Definition: gdalmultidim.cpp:11857
GDALGeneralCmdLineProcessor
int GDALGeneralCmdLineProcessor(int nArgc, char ***ppapszArgv, int nOptions)
General utility option processing.
Definition: gdal_misc.cpp:3448
GDALRATChangesAreWrittenToFile
int GDALRATChangesAreWrittenToFile(GDALRasterAttributeTableH hRAT)
Determine whether changes made to this RAT are reflected directly in the dataset.
Definition: gdal_rat.cpp:1875
GDALGetGCPSpatialRef
OGRSpatialReferenceH GDALGetGCPSpatialRef(GDALDatasetH)
Get output spatial reference system for GCPs.
Definition: gdaldataset.cpp:1881
GDALMDArrayGetRawNoDataValue
const void * GDALMDArrayGetRawNoDataValue(GDALMDArrayH hArray)
Return the nodata value as a "raw" value.
Definition: gdalmultidim.cpp:11805
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:11619
GDALDumpOpenDatasets
int GDALDumpOpenDatasets(FILE *)
List open datasets.
Definition: gdaldataset.cpp:4300
GDALExtendedDataTypeFreeComponents
void GDALExtendedDataTypeFreeComponents(GDALEDTComponentH *components, size_t nCount)
Free the return of GDALExtendedDataTypeGetComponents().
Definition: gdalmultidim.cpp:10748
GDALGetGCPs
const GDAL_GCP * GDALGetGCPs(GDALDatasetH)
Fetch GCPs.
Definition: gdaldataset.cpp:1936
GDALAttributeReadAsRaw
GByte * GDALAttributeReadAsRaw(GDALAttributeH hAttr, size_t *pnSize)
Return the raw value of an attribute.
Definition: gdalmultidim.cpp:12890
GDALExtendedDataTypeGetSize
size_t GDALExtendedDataTypeGetSize(GDALExtendedDataTypeH hEDT)
Return data type size in bytes.
Definition: gdalmultidim.cpp:10624
GDALGetRasterDataType
GDALDataType GDALGetRasterDataType(GDALRasterBandH)
Fetch the pixel data type for this band.
Definition: gdalrasterband.cpp:1437
GDALEDTComponentH
struct GDALEDTComponentHS * GDALEDTComponentH
Opaque type for C++ GDALEDTComponent.
Definition: gdal.h:429
GDALCreateRasterAttributeTableFromMDArrays
GDALRasterAttributeTableH GDALCreateRasterAttributeTableFromMDArrays(GDALRATTableType eTableType, int nArrays, const GDALMDArrayH *ahArrays, const GDALRATFieldUsage *paeUsages)
Return a virtual Raster Attribute Table from several GDALMDArray's.
Definition: gdalmultidim_rat.cpp:413
GDALExtractRPCInfoV2
int GDALExtractRPCInfoV2(CSLConstList, GDALRPCInfoV2 *)
Extract RPC info from metadata, and apply to an RPCInfo structure.
Definition: gdal_misc.cpp:4209
GDALGroupOpenMDArrayFromFullname
GDALMDArrayH GDALGroupOpenMDArrayFromFullname(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a multidimensional array from its fully qualified name.
Definition: gdalmultidim.cpp:10938
GDALGroupDeleteAttribute
bool GDALGroupDeleteAttribute(GDALGroupH hGroup, const char *pszName, CSLConstList papszOptions)
Delete an attribute from a group.
Definition: gdalmultidim.cpp:11385
GDALCreateColorTable
GDALColorTableH GDALCreateColorTable(GDALPaletteInterp)
Construct a new color table.
Definition: gdalcolortable.cpp:51
GDALIsMaskBand
bool GDALIsMaskBand(GDALRasterBandH hBand)
Returns whether a band is a mask band.
Definition: gdalrasterband.cpp:8167
GDALGetMaskBand
GDALRasterBandH GDALGetMaskBand(GDALRasterBandH hBand)
Return the mask band associated with the band.
Definition: gdalrasterband.cpp:7921
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:11745
GDALRelationshipSetMappingTableName
void GDALRelationshipSetMappingTableName(GDALRelationshipH, const char *)
Sets the name of the mapping table for many-to-many relationships.
Definition: gdalrelationship.cpp:199
GDALMDArraySetNoDataValueAsInt64
int GDALMDArraySetNoDataValueAsInt64(GDALMDArrayH hArray, int64_t nNoDataValue)
Set the nodata value as a Int64.
Definition: gdalmultidim.cpp:11944
GDALMDArraySetNoDataValueAsUInt64
int GDALMDArraySetNoDataValueAsUInt64(GDALMDArrayH hArray, uint64_t nNoDataValue)
Set the nodata value as a UInt64.
Definition: gdalmultidim.cpp:11964
GDALOverviewMagnitudeCorrection
CPLErr GDALOverviewMagnitudeCorrection(GDALRasterBandH hBaseBand, int nOverviewCount, GDALRasterBandH *pahOverviews, GDALProgressFunc pfnProgress, void *pProgressData)
Undocumented.
Definition: overview.cpp:6122
GDALGetOutputDriversForDatasetName
char ** GDALGetOutputDriversForDatasetName(const char *pszDestFilename, int nFlagRasterVector, bool bSingleMatch, bool bEmitWarning)
Return a list of driver short names that are likely candidates for the provided output file name.
Definition: gdaldriver.cpp:2869
GDALDatasetDeleteFieldDomain
bool GDALDatasetDeleteFieldDomain(GDALDatasetH hDS, const char *pszName, char **ppszFailureReason)
Removes a field domain from the dataset.
Definition: gdaldataset.cpp:9325
GDALReleaseDimensions
void GDALReleaseDimensions(GDALDimensionH *dims, size_t nCount)
Free the return of GDALGroupGetDimensions() or GDALMDArrayGetDimensions()
Definition: gdalmultidim.cpp:11553
GDALRATSetRowCount
void GDALRATSetRowCount(GDALRasterAttributeTableH, int)
Set row count.
Definition: gdal_rat.cpp:319
GDALRasterInterpolateAtPoint
CPLErr GDALRasterInterpolateAtPoint(GDALRasterBandH hBand, double dfPixel, double dfLine, GDALRIOResampleAlg eInterpolation, double *pdfRealValue, double *pdfImagValue)
Interpolates the value between pixels using a resampling algorithm.
Definition: gdalrasterband.cpp:9433
GDALOpenShared
GDALDatasetH GDALOpenShared(const char *, GDALAccess)
Open a raster file as a GDALDataset.
Definition: gdaldataset.cpp:4165
GDALSetRasterNoDataValueAsInt64
CPLErr GDALSetRasterNoDataValueAsInt64(GDALRasterBandH, int64_t)
Set the no data value for this band.
Definition: gdalrasterband.cpp:2604
GDALRelationshipSetForwardPathLabel
void GDALRelationshipSetForwardPathLabel(GDALRelationshipH, const char *)
Sets the label of the forward path for the relationship.
Definition: gdalrelationship.cpp:509
GDALGetDriverHelpTopic
const char * GDALGetDriverHelpTopic(GDALDriverH)
Return the URL to the help that describes the driver.
Definition: gdaldriver.cpp:2049
GDALIdentifyDriverEx
GDALDriverH GDALIdentifyDriverEx(const char *pszFilename, unsigned int nIdentifyFlags, const char *const *papszAllowedDrivers, const char *const *papszFileList)
Identify the driver that can open a dataset.
Definition: gdaldriver.cpp:2651
GDALInvGeoTransform
int GDALInvGeoTransform(const double *padfGeoTransformIn, double *padfInvGeoTransformOut)
Invert Geotransform.
Definition: gdaltransformer.cpp:4369
GDALExtendedDataTypeCreateStringEx
GDALExtendedDataTypeH GDALExtendedDataTypeCreateStringEx(size_t nMaxStringLength, GDALExtendedDataTypeSubType eSubType)
Return a new GDALExtendedDataType of class GEDTC_STRING.
Definition: gdalmultidim.cpp:10516
GDALSwapWords
void GDALSwapWords(void *pData, int nWordSize, int nWordCount, int nWordSkip)
Byte swap words in-place.
Definition: rasterio.cpp:2007
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:380
GDALGetDriver
GDALDriverH GDALGetDriver(int)
Fetch driver by index.
Definition: gdaldrivermanager.cpp:436
GDALGroupRelease
void GDALGroupRelease(GDALGroupH hGroup)
Release the GDAL in-memory object associated with a GDALGroupH.
Definition: gdalmultidim.cpp:10845
GDALDuplicateGCPs
GDAL_GCP * GDALDuplicateGCPs(int, const GDAL_GCP *)
Duplicate an array of GCPs.
Definition: gdal_misc.cpp:1795
GDALRATSetValueAsInt
void GDALRATSetValueAsInt(GDALRasterAttributeTableH, int, int, int)
Set field value from integer.
Definition: gdal_rat.cpp:1778
GDALMDArrayGetFullName
const char * GDALMDArrayGetFullName(GDALMDArrayH hArray)
Return array full name.
Definition: gdalmultidim.cpp:11477
GDALGetRasterMinimum
double GDALGetRasterMinimum(GDALRasterBandH, int *pbSuccess)
Fetch the minimum value for this band.
Definition: gdalrasterband.cpp:2935
GDALSetRasterCategoryNames
CPLErr GDALSetRasterCategoryNames(GDALRasterBandH, CSLConstList)
Set the category names for this band.
Definition: gdalrasterband.cpp:2278
GDALDimensionGetSize
GUInt64 GDALDimensionGetSize(GDALDimensionH hDim)
Return the size, that is the number of values along the dimension.
Definition: gdalmultidim.cpp:13423
GDALMDArraySetOffsetEx
int GDALMDArraySetOffsetEx(GDALMDArrayH hArray, double dfOffset, GDALDataType eStorageType)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:12074
GDALMDArrayCache
int GDALMDArrayCache(GDALMDArrayH hArray, CSLConstList papszOptions)
Cache the content of the array into an auxiliary filename.
Definition: gdalmultidim.cpp:12730
GDALGetNonComplexDataType
GDALDataType GDALGetNonComplexDataType(GDALDataType)
Return the base data type for the specified input.
Definition: gdal_misc.cpp:1003
GDALGetRasterMaximum
double GDALGetRasterMaximum(GDALRasterBandH, int *pbSuccess)
Fetch the maximum value for this band.
Definition: gdalrasterband.cpp:2829
GDALDimensionGetType
const char * GDALDimensionGetType(GDALDimensionH hDim)
Return dimension type.
Definition: gdalmultidim.cpp:13395
GDALRATValuesIOAsString
CPLErr GDALRATValuesIOAsString(GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag, int iField, int iStartRow, int iLength, char **papszStrList)
Read or Write a block of strings to/from the Attribute Table.
Definition: gdal_rat.cpp:274
GDALGetDriverLongName
const char * GDALGetDriverLongName(GDALDriverH)
Return the long name of a driver.
Definition: gdaldriver.cpp:2019
GDALDataTypeIsComplex
int GDALDataTypeIsComplex(GDALDataType)
Is data type complex?
Definition: gdal_misc.cpp:492
GDALGetColorInterpretationName
const char * GDALGetColorInterpretationName(GDALColorInterp)
Get name of color interpretation.
Definition: gdal_misc.cpp:1163
GDALIsValueExactAs
bool GDALIsValueExactAs(double dfValue, GDALDataType eDT)
Check whether the provided value can be exactly represented in a data type.
Definition: gdal_misc.cpp:953
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:405
GDALDestroyDriverManager
void GDALDestroyDriverManager(void)
Destroy the driver manager.
Definition: gdaldrivermanager.cpp:1701
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:484
GDALMDArraySetUnit
int GDALMDArraySetUnit(GDALMDArrayH hArray, const char *)
Set the variable unit.
Definition: gdalmultidim.cpp:12420
GDALRelationshipGetBackwardPathLabel
const char * GDALRelationshipGetBackwardPathLabel(GDALRelationshipH)
Get the label of the backward path for the relationship.
Definition: gdalrelationship.cpp:542
GDALDatasetGetFieldDomainNames
char ** GDALDatasetGetFieldDomainNames(GDALDatasetH, CSLConstList)
Returns a list of the names of all field domains stored in the dataset.
Definition: gdaldataset.cpp:9136
GDALValidateCreationOptions
int GDALValidateCreationOptions(GDALDriverH, CSLConstList papszCreationOptions)
Validate the list of creation options that are handled by a driver.
Definition: gdaldriver.cpp:2114
GDALRelationshipCreate
GDALRelationshipH GDALRelationshipCreate(const char *, const char *, const char *, GDALRelationshipCardinality)
Creates a new relationship.
Definition: gdalrelationship.cpp:50
GDALComputeRasterMinMax
CPLErr GDALComputeRasterMinMax(GDALRasterBandH hBand, int bApproxOK, double adfMinMax[2])
Compute the min/max values for a band.
Definition: gdalrasterband.cpp:7408
GDALRelationshipGetMappingTableName
const char * GDALRelationshipGetMappingTableName(GDALRelationshipH)
Get the name of the mapping table for many-to-many relationships.
Definition: gdalrelationship.cpp:174
GDALDatasetGetLayer
OGRLayerH GDALDatasetGetLayer(GDALDatasetH, int)
Fetch a layer by index.
Definition: gdaldataset.cpp:4883
GDALRenameDataset
CPLErr GDALRenameDataset(GDALDriverH, const char *pszNewName, const char *pszOldName)
Rename a dataset.
Definition: gdaldriver.cpp:1835
GDALRATDumpReadable
void GDALRATDumpReadable(GDALRasterAttributeTableH, FILE *)
Dump RAT in readable form.
Definition: gdal_rat.cpp:1125
GDALSetGCPs2
CPLErr GDALSetGCPs2(GDALDatasetH, int, const GDAL_GCP *, OGRSpatialReferenceH)
Assign GCPs.
Definition: gdaldataset.cpp:2072
GDALExtendedDataTypeGetMaxStringLength
size_t GDALExtendedDataTypeGetMaxStringLength(GDALExtendedDataTypeH hEDT)
Return the maximum length of a string in bytes.
Definition: gdalmultidim.cpp:10640
GDALDimensionGetIndexingVariable
GDALMDArrayH GDALDimensionGetIndexingVariable(GDALDimensionH hDim)
Return the variable that is used to index the dimension (if there is one).
Definition: gdalmultidim.cpp:13442
GDALGroupGetGroupNames
char ** GDALGroupGetGroupNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of sub-groups contained in this group.
Definition: gdalmultidim.cpp:10984
GDALDatasetRollbackTransaction
OGRErr GDALDatasetRollbackTransaction(GDALDatasetH hDS)
For datasources which support transactions, RollbackTransaction will roll back a datasource to its st...
Definition: gdaldataset.cpp:8206
GDALAttributeWriteDouble
int GDALAttributeWriteDouble(GDALAttributeH hAttr, double)
Write an attribute from a double value.
Definition: gdalmultidim.cpp:13219
GDALGetRasterXSize
int GDALGetRasterXSize(GDALDatasetH)
Fetch raster width in pixels.
Definition: gdaldataset.cpp:948
GDALRATSerializeJSON
void * GDALRATSerializeJSON(GDALRasterAttributeTableH)
Serialize Raster Attribute Table in Json format.
Definition: gdal_rat.cpp:2175
GDALRegisterPlugins
void GDALRegisterPlugins(void)
Register drivers and support code available as a plugin.
Definition: gdalallregister.cpp:78
GDALAttributeReadAsString
const char * GDALAttributeReadAsString(GDALAttributeH hAttr)
Return the value of an attribute as a string.
Definition: gdalmultidim.cpp:12947
GDALGroupGetStructuralInfo
CSLConstList GDALGroupGetStructuralInfo(GDALGroupH hGroup)
Return structural information on the group.
Definition: gdalmultidim.cpp:11196
GDALExtendedDataTypeClass
GDALExtendedDataTypeClass
Enumeration giving the class of a GDALExtendedDataType.
Definition: gdal.h:406
GEDTC_STRING
@ GEDTC_STRING
String value.
Definition: gdal.h:410
GEDTC_COMPOUND
@ GEDTC_COMPOUND
Compound data type.
Definition: gdal.h:412
GEDTC_NUMERIC
@ GEDTC_NUMERIC
Numeric value.
Definition: gdal.h:408
GDALDatasetUpdateFieldDomain
bool GDALDatasetUpdateFieldDomain(GDALDatasetH hDS, OGRFieldDomainH hFieldDomain, char **ppszFailureReason)
Updates an existing field domain by replacing its definition.
Definition: gdaldataset.cpp:9398
GDALDeleteRasterNoDataValue
CPLErr GDALDeleteRasterNoDataValue(GDALRasterBandH)
Remove the no data value for this band.
Definition: gdalrasterband.cpp:2724
GDALSetMetadataItem
CPLErr GDALSetMetadataItem(GDALMajorObjectH, const char *, const char *, const char *)
Set single metadata item.
Definition: gdalmajorobject.cpp:395
GDALFindDataTypeForValue
GDALDataType GDALFindDataTypeForValue(double dValue, int bComplex)
Finds the smallest data type able to support the provided value.
Definition: gdal_misc.cpp:374
GDALGroupOpenGroup
GDALGroupH GDALGroupOpenGroup(GDALGroupH hGroup, const char *pszSubGroupName, CSLConstList papszOptions)
Open and return a sub-group.
Definition: gdalmultidim.cpp:11006
GDALDatasetGetNextFeature
OGRFeatureH GDALDatasetGetNextFeature(GDALDatasetH hDS, OGRLayerH *phBelongingLayer, double *pdfProgressPct, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch the next available feature from this dataset.
Definition: gdaldataset.cpp:7874
GDALDatasetStartTransaction
OGRErr GDALDatasetStartTransaction(GDALDatasetH hDS, int bForce)
For datasources which support transactions, StartTransaction creates a transaction.
Definition: gdaldataset.cpp:8096
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:1575
GDALCreatePansharpenedVRT
GDALDatasetH GDALCreatePansharpenedVRT(const char *pszXML, GDALRasterBandH hPanchroBand, int nInputSpectralBands, GDALRasterBandH *pahInputSpectralBands)
Create a virtual pansharpened dataset.
Definition: vrtpansharpened.cpp:78
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:8651
GDALGroupCreateGroup
GDALGroupH GDALGroupCreateGroup(GDALGroupH hGroup, const char *pszSubGroupName, CSLConstList papszOptions)
Create a sub-group within a group.
Definition: gdalmultidim.cpp:11230
GDALGetPaletteInterpretationName
const char * GDALGetPaletteInterpretationName(GDALPaletteInterp)
Get name of palette interpretation.
Definition: gdal_misc.cpp:1123
GDALGetAsyncStatusTypeName
const char * GDALGetAsyncStatusTypeName(GDALAsyncStatusType)
Get name of AsyncStatus data type.
Definition: gdal_misc.cpp:1085
GDALRATGetLinearBinning
int GDALRATGetLinearBinning(GDALRasterAttributeTableH, double *, double *)
Get linear binning information.
Definition: gdal_rat.cpp:534
GDALARGetNextUpdatedRegion
GDALAsyncStatusType GDALARGetNextUpdatedRegion(GDALAsyncReaderH hARIO, double dfTimeout, int *pnXBufOff, int *pnYBufOff, int *pnXBufSize, int *pnYBufSize)
Get async IO update.
Definition: gdaldefaultasync.cpp:145
GDALGetRasterNoDataValueAsUInt64
uint64_t GDALGetRasterNoDataValueAsUInt64(GDALRasterBandH, int *)
Fetch the no data value for this band.
Definition: gdalrasterband.cpp:2455
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:4745
GDALAddBand
CPLErr GDALAddBand(GDALDatasetH hDS, GDALDataType eType, CSLConstList papszOptions)
Add a band to a dataset.
Definition: gdaldataset.cpp:811
GDALAttributeFreeRawResult
void GDALAttributeFreeRawResult(GDALAttributeH hAttr, GByte *raw, size_t nSize)
Free the return of GDALAttributeAsRaw()
Definition: gdalmultidim.cpp:12911
GDALSetDefaultHistogram
CPLErr GDALSetDefaultHistogram(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, int *panHistogram)
Set default histogram.
Definition: gdalrasterband.cpp:7456
GDALRelationshipGetCardinality
GDALRelationshipCardinality GDALRelationshipGetCardinality(GDALRelationshipH)
Get the cardinality of the relationship.
Definition: gdalrelationship.cpp:110
GDALRelationshipGetLeftTableFields
char ** GDALRelationshipGetLeftTableFields(GDALRelationshipH)
Get the names of the participating fields from the left table in the relationship.
Definition: gdalrelationship.cpp:222
GDALAttributeGetTotalElementsCount
GUInt64 GDALAttributeGetTotalElementsCount(GDALAttributeH hAttr)
Return the total number of values in the attribute.
Definition: gdalmultidim.cpp:12813
GDALApplyGeoTransform
void GDALApplyGeoTransform(const double *, double, double, double *, double *)
Apply GeoTransform to x/y coordinate.
Definition: gdaltransformer.cpp:4343
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:10199
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:12549
GDALCloneColorTable
GDALColorTableH GDALCloneColorTable(GDALColorTableH)
Make a copy of a color table.
Definition: gdalcolortable.cpp:261
GDALRelationshipCardinality
GDALRelationshipCardinality
Cardinality of relationship.
Definition: gdal.h:2218
GRC_ONE_TO_ONE
@ GRC_ONE_TO_ONE
One-to-one.
Definition: gdal.h:2220
GRC_MANY_TO_ONE
@ GRC_MANY_TO_ONE
Many-to-one.
Definition: gdal.h:2224
GRC_MANY_TO_MANY
@ GRC_MANY_TO_MANY
Many-to-many.
Definition: gdal.h:2226
GRC_ONE_TO_MANY
@ GRC_ONE_TO_MANY
One-to-many.
Definition: gdal.h:2222
GDALRIOResampleAlg
GDALRIOResampleAlg
RasterIO() resampling method.
Definition: gdal.h:128
GRIORA_Mode
@ GRIORA_Mode
Definition: gdal.h:137
GRIORA_Lanczos
@ GRIORA_Lanczos
Definition: gdal.h:133
GRIORA_Cubic
@ GRIORA_Cubic
Definition: gdal.h:131
GRIORA_CubicSpline
@ GRIORA_CubicSpline
Definition: gdal.h:132
GRIORA_Average
@ GRIORA_Average
Definition: gdal.h:134
GRIORA_RMS
@ GRIORA_RMS
RMS: Root Mean Square / Quadratic Mean.
Definition: gdal.h:148
GRIORA_NearestNeighbour
@ GRIORA_NearestNeighbour
Definition: gdal.h:129
GRIORA_Gauss
@ GRIORA_Gauss
Definition: gdal.h:138
GRIORA_Bilinear
@ GRIORA_Bilinear
Definition: gdal.h:130
GDALSetRasterUnitType
CPLErr GDALSetRasterUnitType(GDALRasterBandH hBand, const char *pszNewValue)
Set unit type.
Definition: gdalrasterband.cpp:3697
GDALExtendedDataTypeGetSubType
GDALExtendedDataTypeSubType GDALExtendedDataTypeGetSubType(GDALExtendedDataTypeH hEDT)
Return the subtype of a type.
Definition: gdalmultidim.cpp:10699
GDALDatasetAddRelationship
bool GDALDatasetAddRelationship(GDALDatasetH hDS, GDALRelationshipH hRelationship, char **ppszFailureReason)
Add a relationship to the dataset.
Definition: gdaldataset.cpp:9573
GDALEDTComponentGetType
GDALExtendedDataTypeH GDALEDTComponentGetType(GDALEDTComponentH hComp)
Return the data type of the component.
Definition: gdalmultidim.cpp:10829
GDALGetRasterCategoryNames
char ** GDALGetRasterCategoryNames(GDALRasterBandH)
Fetch the list of category names for this raster.
Definition: gdalrasterband.cpp:2227
GDALGroupOpenGroupFromFullname
GDALGroupH GDALGroupOpenGroupFromFullname(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a sub-group from its fully qualified name.
Definition: gdalmultidim.cpp:11079
GDALRelationshipSetLeftTableFields
void GDALRelationshipSetLeftTableFields(GDALRelationshipH, CSLConstList)
Sets the names of the participating fields from the left table in the relationship.
Definition: gdalrelationship.cpp:276
GDALWriteWorldFile
int GDALWriteWorldFile(const char *, const char *, double *)
Write ESRI world file.
Definition: gdal_misc.cpp:2677
GDALDataTypeIsInteger
int GDALDataTypeIsInteger(GDALDataType)
Is data type integer? (might be complex)
Definition: gdal_misc.cpp:575
GDALRATCreateColumn
CPLErr GDALRATCreateColumn(GDALRasterAttributeTableH, const char *, GDALRATFieldType, GDALRATFieldUsage)
Create new column.
Definition: gdal_rat.cpp:444
GDALDimensionSetIndexingVariable
int GDALDimensionSetIndexingVariable(GDALDimensionH hDim, GDALMDArrayH hArray)
Set the variable that is used to index the dimension.
Definition: gdalmultidim.cpp:13464
GDALDatasetDeleteRelationship
bool GDALDatasetDeleteRelationship(GDALDatasetH hDS, const char *pszName, char **ppszFailureReason)
Removes a relationship from the dataset.
Definition: gdaldataset.cpp:9642
GDALDatasetDeleteLayer
OGRErr GDALDatasetDeleteLayer(GDALDatasetH, int)
Delete the indicated layer from the datasource.
Definition: gdaldataset.cpp:4984
GDALDimensionRename
bool GDALDimensionRename(GDALDimensionH hDim, const char *pszNewName)
Rename the dimension.
Definition: gdalmultidim.cpp:13486
GDALMDArrayGetSpatialRef
OGRSpatialReferenceH GDALMDArrayGetSpatialRef(GDALMDArrayH hArray)
Return the spatial reference system object associated with the array.
Definition: gdalmultidim.cpp:12477
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:2914
GDALEDTComponentCreate
GDALEDTComponentH GDALEDTComponentCreate(const char *pszName, size_t nOffset, GDALExtendedDataTypeH hType)
Create a new GDALEDTComponent.
Definition: gdalmultidim.cpp:10768
GDALMDArrayGetAttribute
GDALAttributeH GDALMDArrayGetAttribute(GDALMDArrayH hArray, const char *pszName)
Return an attribute by its name.
Definition: gdalmultidim.cpp:11690
GDALAttributeReadAsStringArray
char ** GDALAttributeReadAsStringArray(GDALAttributeH hAttr)
Return the value of an attribute as an array of strings.
Definition: gdalmultidim.cpp:13023
GDALGetBandDataset
GDALDatasetH GDALGetBandDataset(GDALRasterBandH)
Fetch the owning dataset handle.
Definition: gdalrasterband.cpp:3855
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:3085
OGR_L_GetDataset
GDALDatasetH OGR_L_GetDataset(OGRLayerH hLayer)
Return the dataset associated with this layer.
Definition: ogrlayer.cpp:5809
GDALAttributeGetDataType
GDALExtendedDataTypeH GDALAttributeGetDataType(GDALAttributeH hAttr)
Return the data type.
Definition: gdalmultidim.cpp:12868
GDALRelationshipSetRelatedTableType
void GDALRelationshipSetRelatedTableType(GDALRelationshipH, const char *)
Sets the type string of the related table.
Definition: gdalrelationship.cpp:633
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:2165
GDALGetRasterBandYSize
int GDALGetRasterBandYSize(GDALRasterBandH)
Fetch YSize of raster.
Definition: gdalrasterband.cpp:3772
GDALARUnlockBuffer
void GDALARUnlockBuffer(GDALAsyncReaderH hARIO)
Unlock image buffer.
Definition: gdaldefaultasync.cpp:239
GDALSetRasterNoDataValue
CPLErr GDALSetRasterNoDataValue(GDALRasterBandH, double)
Set the no data value for this band.
Definition: gdalrasterband.cpp:2532
GDALExtendedDataTypeCanConvertTo
int GDALExtendedDataTypeCanConvertTo(GDALExtendedDataTypeH hSourceEDT, GDALExtendedDataTypeH hTargetEDT)
Return whether this data type can be converted to the other one.
Definition: gdalmultidim.cpp:10658
GDALRATGetValueAsInt
int GDALRATGetValueAsInt(GDALRasterAttributeTableH, int, int)
Fetch field value as a integer.
Definition: gdal_rat.cpp:1548
GDALDecToDMS
const char * GDALDecToDMS(double, const char *, int)
Translate a decimal degrees value to a DMS string with hemisphere.
Definition: gdal_misc.cpp:2938
GDALExtendedDataTypeGetNumericDataType
GDALDataType GDALExtendedDataTypeGetNumericDataType(GDALExtendedDataTypeH hEDT)
Return numeric data type (only valid when GetClass() == GEDTC_NUMERIC)
Definition: gdalmultidim.cpp:10610
GDALDeregisterDriver
void GDALDeregisterDriver(GDALDriverH)
Deregister the passed driver.
Definition: gdaldrivermanager.cpp:646
GDALCopyDatasetFiles
CPLErr GDALCopyDatasetFiles(GDALDriverH, const char *pszNewName, const char *pszOldName)
Copy the files of a dataset.
Definition: gdaldriver.cpp:1962
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:4675
GDALDatasetAbortSQL
OGRErr GDALDatasetAbortSQL(GDALDatasetH)
Abort any SQL statement running in the data store.
Definition: gdaldataset.cpp:5464
GDALDestroyRasterAttributeTable
void GDALDestroyRasterAttributeTable(GDALRasterAttributeTableH)
Destroys a RAT.
Definition: gdal_rat.cpp:1189
GDALCreateDatasetMaskBand
CPLErr GDALCreateDatasetMaskBand(GDALDatasetH hDS, int nFlags)
Adds a mask band to the dataset.
Definition: gdaldataset.cpp:3382
GDALAttributeWriteString
int GDALAttributeWriteString(GDALAttributeH hAttr, const char *)
Write an attribute from a string value.
Definition: gdalmultidim.cpp:13155
GDALMDArraySetScale
int GDALMDArraySetScale(GDALMDArrayH hArray, double dfScale)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:12017
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:1358
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:1000
GDALClose
CPLErr GDALClose(GDALDatasetH)
Close GDAL dataset.
Definition: gdaldataset.cpp:4194
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:4496
GDALRelationshipGetRightTableFields
char ** GDALRelationshipGetRightTableFields(GDALRelationshipH)
Get the names of the participating fields from the right table in the relationship.
Definition: gdalrelationship.cpp:248
GDALSetDefaultHistogramEx
CPLErr GDALSetDefaultHistogramEx(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, GUIntBig *panHistogram)
Set default histogram.
Definition: gdalrasterband.cpp:7499
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:5242
GDALAttributeGetFullName
const char * GDALAttributeGetFullName(GDALAttributeH hAttr)
Return the full name of the attribute.
Definition: gdalmultidim.cpp:12798
GDALDatasetGetRelationship
GDALRelationshipH GDALDatasetGetRelationship(GDALDatasetH hDS, const char *pszName)
Get a relationship from its name.
Definition: gdaldataset.cpp:9495
GDALRATFieldType
GDALRATFieldType
Field type of raster attribute table.
Definition: gdal.h:2098
GFT_Real
@ GFT_Real
Definition: gdal.h:2100
GFT_String
@ GFT_String
Definition: gdal.h:2101
GFT_Integer
@ GFT_Integer
Definition: gdal.h:2099
GDALDatasetResetReading
void GDALDatasetResetReading(GDALDatasetH)
Reset feature reading to start on the first feature.
Definition: gdaldataset.cpp:7646
GDALMDArrayH
struct GDALMDArrayHS * GDALMDArrayH
Opaque type for C++ GDALMDArray.
Definition: gdal.h:433
GDALMDArrayGetUnit
const char * GDALMDArrayGetUnit(GDALMDArrayH hArray)
Return the array unit.
Definition: gdalmultidim.cpp:12445
GDALAttributeWriteDoubleArray
int GDALAttributeWriteDoubleArray(GDALAttributeH hAttr, const double *, size_t)
Write an attribute from an array of double.
Definition: gdalmultidim.cpp:13316
GDALRelationshipH
void * GDALRelationshipH
Opaque type used for the C bindings of the C++ GDALRelationship class.
Definition: gdal.h:397
GDALGroupDeleteMDArray
bool GDALGroupDeleteMDArray(GDALGroupH hGroup, const char *pszName, CSLConstList papszOptions)
Delete an array from a group.
Definition: gdalmultidim.cpp:11334
GDALVRTProcessedDatasetFuncInit
CPLErr(* GDALVRTProcessedDatasetFuncInit)(const char *pszFuncName, void *pUserData, CSLConstList papszFunctionArgs, int nInBands, GDALDataType eInDT, double *padfInNoData, int *pnOutBands, GDALDataType *peOutDT, double **ppadfOutNoData, const char *pszVRTPath, VRTPDWorkingDataPtr *ppWorkingData)
Initialization function to pass to GDALVRTRegisterProcessedDatasetFunc.
Definition: gdal.h:1787
GDALSubdatasetInfoGetPathComponent
char * GDALSubdatasetInfoGetPathComponent(GDALSubdatasetInfoH hInfo)
Returns the file path component of a subdataset descriptor effectively stripping the information abou...
Definition: gdalsubdatasetinfo.cpp:69
GDALRasterAttributeTableH
void * GDALRasterAttributeTableH
Opaque type used for the C bindings of the C++ GDALRasterAttributeTable class.
Definition: gdal.h:389
GDALRATRemoveStatistics
void GDALRATRemoveStatistics(GDALRasterAttributeTableH)
Remove Statistics from RAT.
Definition: gdal_rat.cpp:2195
GDALDimensionGetName
const char * GDALDimensionGetName(GDALDimensionH hDim)
Return dimension name.
Definition: gdalmultidim.cpp:13367
GDALGetGCPProjection
const char * GDALGetGCPProjection(GDALDatasetH)
Get output projection for GCPs.
Definition: gdaldataset.cpp:1900
GDALDataTypeUnion
GDALDataType GDALDataTypeUnion(GDALDataType, GDALDataType)
Return the smallest data type that can fully express both input data types.
Definition: gdal_misc.cpp:124
GDALGetColorInterpretationByName
GDALColorInterp GDALGetColorInterpretationByName(const char *pszName)
Get color interpretation by symbolic name.
Definition: gdal_misc.cpp:1314
GDALGroupOpenVectorLayer
OGRLayerH GDALGroupOpenVectorLayer(GDALGroupH hGroup, const char *pszVectorLayerName, CSLConstList papszOptions)
Open and return a vector layer.
Definition: gdalmultidim.cpp:11057
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:11587
GDALGetColorEntryAsRGB
int GDALGetColorEntryAsRGB(GDALColorTableH, int, GDALColorEntry *)
Fetch a table entry in RGB format.
Definition: gdalcolortable.cpp:166
GDALGetFileList
char ** GDALGetFileList(GDALDatasetH)
Fetch files forming dataset.
Definition: gdaldataset.cpp:3308
GDALRelationshipGetRightTableName
const char * GDALRelationshipGetRightTableName(GDALRelationshipH)
Get the name of the right (or related/destination) table in the relationship.
Definition: gdalrelationship.cpp:150
GDALDatasetGetRelationshipNames
char ** GDALDatasetGetRelationshipNames(GDALDatasetH, CSLConstList)
Returns a list of the names of all relationships stored in the dataset.
Definition: gdaldataset.cpp:9452
GDALVersionInfo
const char * GDALVersionInfo(const char *)
Get runtime version information.
Definition: gdal_misc.cpp:2744
GDALAttributeWriteRaw
int GDALAttributeWriteRaw(GDALAttributeH hAttr, const void *, size_t)
Write an attribute from raw values expressed in GetDataType()
Definition: gdalmultidim.cpp:13133
GDALDatasetGetLayerCount
int GDALDatasetGetLayerCount(GDALDatasetH)
Get the number of layers in this dataset.
Definition: gdaldataset.cpp:4850
GDALSetMetadata
CPLErr GDALSetMetadata(GDALMajorObjectH, CSLConstList, const char *)
Set metadata.
Definition: gdalmajorobject.cpp:299
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:4828
GDALDatasetTestCapability
int GDALDatasetTestCapability(GDALDatasetH, const char *)
Test if capability is available.
Definition: gdaldataset.cpp:7978
GDALDimensionGetFullName
const char * GDALDimensionGetFullName(GDALDimensionH hDim)
Return dimension full name.
Definition: gdalmultidim.cpp:13381
GDALAsyncReaderH
void * GDALAsyncReaderH
Opaque type used for the C bindings of the C++ GDALAsyncReader class.
Definition: gdal.h:392
GDALGetThreadSafeDataset
GDALDatasetH GDALGetThreadSafeDataset(GDALDatasetH, int nScopeFlags, CSLConstList papszOptions)
Return a thread-safe dataset.
Definition: gdalthreadsafedataset.cpp:1262
GDALGetJPEG2000Structure
CPLXMLNode * GDALGetJPEG2000Structure(const char *pszFilename, CSLConstList papszOptions)
Dump the structure of a JPEG2000 file as a XML tree.
Definition: gdaljp2structure.cpp:2344
GDALAdjustValueToDataType
double GDALAdjustValueToDataType(GDALDataType eDT, double dfValue, int *pbClamped, int *pbRounded)
Adjust a value to the output data type.
Definition: gdal_misc.cpp:861
GDALEndAsyncReader
void GDALEndAsyncReader(GDALDatasetH hDS, GDALAsyncReaderH hAsynchReaderH)
End asynchronous request.
Definition: gdaldataset.cpp:4547
GDALCreateMaskBand
CPLErr GDALCreateMaskBand(GDALRasterBandH hBand, int nFlags)
Adds a mask band to the current band.
Definition: gdalrasterband.cpp:8108
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:11352
GDALDatasetIsLayerPrivate
int GDALDatasetIsLayerPrivate(GDALDatasetH, int)
Returns true if the layer at the specified index is deemed a private or system table,...
Definition: gdaldataset.cpp:4953
GDALGetDataTypeSizeBytes
int GDALGetDataTypeSizeBytes(GDALDataType)
Get data type size in bytes.
Definition: gdal_misc.cpp:402
GDALMDArrayGetCoordinateVariables
GDALMDArrayH * GDALMDArrayGetCoordinateVariables(GDALMDArrayH hArray, size_t *pnCount)
Return coordinate variables.
Definition: gdalmultidim.cpp:12581
GDALAttributeGetName
const char * GDALAttributeGetName(GDALAttributeH hAttr)
Return the name of the attribute.
Definition: gdalmultidim.cpp:12782
GDALDeleteDataset
CPLErr GDALDeleteDataset(GDALDriverH, const char *)
Delete named dataset.
Definition: gdaldriver.cpp:1696
GDALGetSubdatasetInfo
GDALSubdatasetInfoH GDALGetSubdatasetInfo(const char *pszFileName)
Returns a new GDALSubdatasetInfo object with methods to extract and manipulate subdataset information...
Definition: gdalsubdatasetinfo.cpp:22
GDALExtendedDataTypeGetName
const char * GDALExtendedDataTypeGetName(GDALExtendedDataTypeH hEDT)
Return type name.
Definition: gdalmultidim.cpp:10581
GDALExtendedDataTypeRelease
void GDALExtendedDataTypeRelease(GDALExtendedDataTypeH hEDT)
Release the GDAL in-memory object associated with a GDALExtendedDataTypeH.
Definition: gdalmultidim.cpp:10568
GDALGroupRename
bool GDALGroupRename(GDALGroupH hGroup, const char *pszNewName)
Rename the group.
Definition: gdalmultidim.cpp:11409
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:12300
GDALAttributeRename
bool GDALAttributeRename(GDALAttributeH hAttr, const char *pszNewName)
Rename the attribute.
Definition: gdalmultidim.cpp:13338
GDALRATGetValueAsDouble
double GDALRATGetValueAsDouble(GDALRasterAttributeTableH, int, int)
Fetch field value as a double.
Definition: gdal_rat.cpp:1606
GDALDatasetGetRootGroup
GDALGroupH GDALDatasetGetRootGroup(GDALDatasetH hDS)
Return the root GDALGroup of this dataset.
Definition: gdalmultidim.cpp:13507
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:3586
GDALGetDataTypeName
const char * GDALGetDataTypeName(GDALDataType)
Get name of data type.
Definition: gdal_misc.cpp:728
GDALAllRegister
void GDALAllRegister(void)
Register all known configured GDAL drivers.
Definition: gdalallregister.cpp:111
GDALRATGetTypeOfCol
GDALRATFieldType GDALRATGetTypeOfCol(GDALRasterAttributeTableH, int)
Fetch column type.
Definition: gdal_rat.cpp:1357
GDALMDArrayGetOffset
double GDALMDArrayGetOffset(GDALMDArrayH hArray, int *pbHasValue)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:12139
GDALReleaseArrays
void GDALReleaseArrays(GDALMDArrayH *arrays, size_t nCount)
Free the return of GDALMDArrayGetCoordinateVariables()
Definition: gdalmultidim.cpp:12709
GDALMDArrayGetMask
GDALMDArrayH GDALMDArrayGetMask(GDALMDArrayH hArray, CSLConstList papszOptions)
Return an array that is a mask for the current array.
Definition: gdalmultidim.cpp:12354
GDALGetDescription
const char * GDALGetDescription(GDALMajorObjectH)
Fetch object description.
Definition: gdalmajorobject.cpp:77
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:11428
GDALMDArrayGetMeshGrid
GDALMDArrayH * GDALMDArrayGetMeshGrid(const GDALMDArrayH *pahInputArrays, size_t nCountInputArrays, size_t *pnCountOutputArrays, CSLConstList papszOptions)
Return a list of multidimensional arrays from a list of one-dimensional arrays.
Definition: gdalmultidim.cpp:12676
GDALAttributeReadAsDoubleArray
double * GDALAttributeReadAsDoubleArray(GDALAttributeH hAttr, size_t *pnCount)
Return the value of an attribute as an array of doubles.
Definition: gdalmultidim.cpp:13098
GDALMDArrayGetNoDataValueAsUInt64
uint64_t GDALMDArrayGetNoDataValueAsUInt64(GDALMDArrayH hArray, int *pbHasNoDataValue)
Return the nodata value as a UInt64.
Definition: gdalmultidim.cpp:11883
GDALGetDriverCount
int GDALGetDriverCount(void)
Fetch the number of registered drivers.
Definition: gdaldrivermanager.cpp:384
GDALBuildOverviewsEx
CPLErr GDALBuildOverviewsEx(GDALDatasetH, const char *, int, const int *, int, const int *, GDALProgressFunc, void *, CSLConstList papszOptions)
Build raster overview(s)
Definition: gdaldataset.cpp:2210
GDALExtendedDataTypeSubType
GDALExtendedDataTypeSubType
Enumeration giving the subtype of a GDALExtendedDataType.
Definition: gdal.h:419
GEDTST_JSON
@ GEDTST_JSON
JSon.
Definition: gdal.h:423
GEDTST_NONE
@ GEDTST_NONE
None.
Definition: gdal.h:421
GDALExtendedDataTypeGetComponents
GDALEDTComponentH * GDALExtendedDataTypeGetComponents(GDALExtendedDataTypeH hEDT, size_t *pnCount)
Return the components of the data type (only valid when GetClass() == GEDTC_COMPOUND)
Definition: gdalmultidim.cpp:10723
GDALMDArrayResize
bool GDALMDArrayResize(GDALMDArrayH hArray, const GUInt64 *panNewDimSizes, CSLConstList papszOptions)
Resize an array to new dimensions.
Definition: gdalmultidim.cpp:11992
GDALDestroyColorTable
void GDALDestroyColorTable(GDALColorTableH)
Destroys a color table.
Definition: gdalcolortable.cpp:78
GDALLoadOziMapFile
int GDALLoadOziMapFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for OZI .map.
Definition: gdal_misc.cpp:1910
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:292
GDALDestroyRelationship
void GDALDestroyRelationship(GDALRelationshipH)
Destroys a relationship.
Definition: gdalrelationship.cpp:72
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:13564
GDALComputeRasterStatistics
CPLErr GDALComputeRasterStatistics(GDALRasterBandH, int bApproxOK, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GDALProgressFunc pfnProgress, void *pProgressData)
Compute image statistics.
Definition: gdalrasterband.cpp:6730
GDALAttributeReadAsIntArray
int * GDALAttributeReadAsIntArray(GDALAttributeH hAttr, size_t *pnCount)
Return the value of an attribute as an array of integers.
Definition: gdalmultidim.cpp:13041
GDALAttributeWriteStringArray
int GDALAttributeWriteStringArray(GDALAttributeH hAttr, CSLConstList)
Write an attribute from an array of strings.
Definition: gdalmultidim.cpp:13241
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:12496
GDALReadOziMapFile
int GDALReadOziMapFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for OZI .map.
Definition: gdal_misc.cpp:2119
GDALRATSetTableType
CPLErr GDALRATSetTableType(GDALRasterAttributeTableH hRAT, const GDALRATTableType eInTableType)
Set RAT Table Type.
Definition: gdal_rat.cpp:575
GDALDatasetExecuteSQL
OGRLayerH GDALDatasetExecuteSQL(GDALDatasetH, const char *, OGRGeometryH, const char *)
Execute an SQL statement against the data store.
Definition: gdaldataset.cpp:5419
GDALVRTRegisterProcessedDatasetFunc
CPLErr GDALVRTRegisterProcessedDatasetFunc(const char *pszFuncName, void *pUserData, const char *pszXMLMetadata, GDALDataType eRequestedInputDT, const GDALDataType *paeSupportedInputDT, size_t nSupportedInputDTSize, const int *panSupportedInputBandCount, size_t nSupportedInputBandCountSize, GDALVRTProcessedDatasetFuncInit pfnInit, GDALVRTProcessedDatasetFuncFree pfnFree, GDALVRTProcessedDatasetFuncProcess pfnProcess, CSLConstList papszOptions)
Register a function to be used by VRTProcessedDataset.
Definition: vrtprocesseddataset.cpp:1168
GDALSetRasterOffset
CPLErr GDALSetRasterOffset(GDALRasterBandH hBand, double dfNewOffset)
Set scaling offset.
Definition: gdalrasterband.cpp:3495
GDALMDArrayGetStructuralInfo
CSLConstList GDALMDArrayGetStructuralInfo(GDALMDArrayH hArray)
Return structural information on the array.
Definition: gdalmultidim.cpp:12264
GDALDeinitGCPs
void GDALDeinitGCPs(int, GDAL_GCP *)
De-initialize an array of GCPs (initialized with GDALInitGCPs())
Definition: gdal_misc.cpp:1768
GDALReadBlock
CPLErr GDALReadBlock(GDALRasterBandH, int, int, void *)
Read a block of image data efficiently.
Definition: gdalrasterband.cpp:1124
GDALVRTProcessedDatasetFuncProcess
CPLErr(* GDALVRTProcessedDatasetFuncProcess)(const char *pszFuncName, void *pUserData, VRTPDWorkingDataPtr pWorkingData, CSLConstList papszFunctionArgs, int nBufXSize, int nBufYSize, const void *pInBuffer, size_t nInBufferSize, GDALDataType eInDT, int nInBands, const double *padfInNoData, void *pOutBuffer, size_t nOutBufferSize, GDALDataType eOutDT, int nOutBands, const double *padfOutNoData, double dfSrcXOff, double dfSrcYOff, double dfSrcXSize, double dfSrcYSize, const double adfSrcGT[], const char *pszVRTPath, CSLConstList papszExtra)
Processing function to pass to GDALVRTRegisterProcessedDatasetFunc.
Definition: gdal.h:1835
GDALMDArrayGetName
const char * GDALMDArrayGetName(GDALMDArrayH hArray)
Return array name.
Definition: gdalmultidim.cpp:11463
GDALExtendedDataTypeCreateString
GDALExtendedDataTypeH GDALExtendedDataTypeCreateString(size_t nMaxStringLength)
Return a new GDALExtendedDataType of class GEDTC_STRING.
Definition: gdalmultidim.cpp:10496
GDALGetMetadataItem
const char * GDALGetMetadataItem(GDALMajorObjectH, const char *, const char *)
Fetch single metadata item.
Definition: gdalmajorobject.cpp:342
GDALMDArrayGetOffsetEx
double GDALMDArrayGetOffsetEx(GDALMDArrayH hArray, int *pbHasValue, GDALDataType *peStorageType)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:12162
GDALSetRasterColorInterpretation
CPLErr GDALSetRasterColorInterpretation(GDALRasterBandH, GDALColorInterp)
Set color interpretation of a band.
Definition: gdalrasterband.cpp:3023
GDALDropRasterCache
CPLErr GDALDropRasterCache(GDALRasterBandH hBand)
Drop raster data cache.
Definition: gdalrasterband.cpp:1723
GDALBuildOverviews
CPLErr GDALBuildOverviews(GDALDatasetH, const char *, int, const int *, int, const int *, GDALProgressFunc, void *)
Build raster overview(s)
Definition: gdaldataset.cpp:2183
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, const int *panBandCount, int nPixelSpace, int nLineSpace, int nBandSpace)
Read/write a region of image data from multiple bands.
Definition: gdaldataset.cpp:2848
GDALRegenerateOverviewsEx
CPLErr GDALRegenerateOverviewsEx(GDALRasterBandH hSrcBand, int nOverviewCount, GDALRasterBandH *pahOverviewBands, const char *pszResampling, GDALProgressFunc pfnProgress, void *pProgressData, CSLConstList papszOptions)
Generate downsampled overviews.
Definition: overview.cpp:4359
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:309
GDALLoadWorldFile
int GDALLoadWorldFile(const char *, double *)
Read ESRI world file.
Definition: gdal_misc.cpp:2418
GDALGetRasterColorTable
GDALColorTableH GDALGetRasterColorTable(GDALRasterBandH)
Fetch the color table associated with band.
Definition: gdalrasterband.cpp:3065
GDALComputeBandStats
CPLErr GDALComputeBandStats(GDALRasterBandH hBand, int nSampleStep, double *pdfMean, double *pdfStdDev, GDALProgressFunc pfnProgress, void *pProgressData)
Undocumented.
Definition: overview.cpp:5989
GDALMDArrayRename
bool GDALMDArrayRename(GDALMDArrayH hArray, const char *pszNewName)
Rename the array.
Definition: gdalmultidim.cpp:12751
GDALExtendedDataTypeGetClass
GDALExtendedDataTypeClass GDALExtendedDataTypeGetClass(GDALExtendedDataTypeH hEDT)
Return type class.
Definition: gdalmultidim.cpp:10596
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:208
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:11275
GDALDestroy
void GDALDestroy(void)
Finalize GDAL/OGR library.
Definition: gdaldllmain.cpp:59
GDALMDArraySetScaleEx
int GDALMDArraySetScaleEx(GDALMDArrayH hArray, double dfScale, GDALDataType eStorageType)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:12036
GDALGetDefaultRAT
GDALRasterAttributeTableH GDALGetDefaultRAT(GDALRasterBandH hBand)
Fetch default Raster Attribute Table.
Definition: gdalrasterband.cpp:7543
GDALRelationshipGetName
const char * GDALRelationshipGetName(GDALRelationshipH)
Get the name of the relationship.
Definition: gdalrelationship.cpp:90
GDALMDArrayGetAttributes
GDALAttributeH * GDALMDArrayGetAttributes(GDALMDArrayH hArray, size_t *pnCount, CSLConstList papszOptions)
Return the list of attributes contained in this array.
Definition: gdalmultidim.cpp:11719
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:12610
GDALRelationshipSetBackwardPathLabel
void GDALRelationshipSetBackwardPathLabel(GDALRelationshipH, const char *)
Sets the label of the backward path for the relationship.
Definition: gdalrelationship.cpp:577
GDALDatasetGetFieldDomain
OGRFieldDomainH GDALDatasetGetFieldDomain(GDALDatasetH hDS, const char *pszName)
Get a field domain from its name.
Definition: gdaldataset.cpp:9181
GDALRelationshipGetRelatedTableType
const char * GDALRelationshipGetRelatedTableType(GDALRelationshipH)
Get the type string of the related table.
Definition: gdalrelationship.cpp:603
GDALDereferenceDataset
int GDALDereferenceDataset(GDALDatasetH)
Subtract one from dataset reference count.
Definition: gdaldataset.cpp:1607
GDALMDArrayGetDimensions
GDALDimensionH * GDALMDArrayGetDimensions(GDALMDArrayH hArray, size_t *pnCount)
Return the dimensions of the array.
Definition: gdalmultidim.cpp:11529
GDALMDArrayGetScale
double GDALMDArrayGetScale(GDALMDArrayH hArray, int *pbHasValue)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:12093
GDALAttributeGetDimensionsSize
GUInt64 * GDALAttributeGetDimensionsSize(GDALAttributeH hAttr, size_t *pnCount)
Return the dimension sizes of the attribute.
Definition: gdalmultidim.cpp:12846
GDALRelationshipGetLeftMappingTableFields
char ** GDALRelationshipGetLeftMappingTableFields(GDALRelationshipH)
Get the names of the mapping table fields which correspond to the participating fields from the left ...
Definition: gdalrelationship.cpp:325
GDALGetCacheMax64
GIntBig GDALGetCacheMax64(void)
Get maximum cache memory.
Definition: gdalrasterblock.cpp:221
GDALDatasetReleaseResultSet
void GDALDatasetReleaseResultSet(GDALDatasetH, OGRLayerH)
Release results of ExecuteSQL().
Definition: gdaldataset.cpp:4821
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:882
GDALRATGetTableType
GDALRATTableType GDALRATGetTableType(GDALRasterAttributeTableH hRAT)
Get Rat Table Type.
Definition: gdal_rat.cpp:556
GDALGroupGetAttributes
GDALAttributeH * GDALGroupGetAttributes(GDALGroupH hGroup, size_t *pnCount, CSLConstList papszOptions)
Return the list of attributes contained in this group.
Definition: gdalmultidim.cpp:11167
GDALFillRaster
CPLErr GDALFillRaster(GDALRasterBandH hBand, double dfRealValue, double dfImaginaryValue)
Fill this band with a constant value.
Definition: gdalrasterband.cpp:2144
GDALDatasetGetStyleTable
OGRStyleTableH GDALDatasetGetStyleTable(GDALDatasetH)
Returns dataset style table.
Definition: gdaldataset.cpp:5487
GDALRegisterDriver
int GDALRegisterDriver(GDALDriverH)
Register a driver for use.
Definition: gdaldrivermanager.cpp:588
GDALSubdatasetInfoModifyPathComponent
char * GDALSubdatasetInfoModifyPathComponent(GDALSubdatasetInfoH hInfo, const char *pszNewPath)
Replaces the path component of a subdataset descriptor.
Definition: gdalsubdatasetinfo.cpp:79
GDALInitGCPs
void GDALInitGCPs(int, GDAL_GCP *)
Initialize an array of GCPs.
Definition: gdal_misc.cpp:1742
GDALExtendedDataTypeH
struct GDALExtendedDataTypeHS * GDALExtendedDataTypeH
Opaque type for C++ GDALExtendedDataType.
Definition: gdal.h:427
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:12236
GDALReferenceDataset
int GDALReferenceDataset(GDALDatasetH)
Add one to dataset reference count.
Definition: gdaldataset.cpp:1569
GDALRATGetColumnCount
int GDALRATGetColumnCount(GDALRasterAttributeTableH)
Fetch table column count.
Definition: gdal_rat.cpp:1237
GDALGetGCPCount
int GDALGetGCPCount(GDALDatasetH)
Get number of GCPs.
Definition: gdaldataset.cpp:1789
GDALRATClone
GDALRasterAttributeTableH GDALRATClone(const GDALRasterAttributeTableH)
Copy Raster Attribute Table.
Definition: gdal_rat.cpp:2157
GDALMDArraySetNoDataValueAsDouble
int GDALMDArraySetNoDataValueAsDouble(GDALMDArrayH hArray, double dfNoDataValue)
Set the nodata value as a double.
Definition: gdalmultidim.cpp:11924
GDALDataTypeIsFloating
int GDALDataTypeIsFloating(GDALDataType)
Is data type floating? (might be complex)
Definition: gdal_misc.cpp:534
GDALGetProjectionRef
const char * GDALGetProjectionRef(GDALDatasetH)
Fetch the projection definition string for this dataset.
Definition: gdaldataset.cpp:1232
GDALDataTypeIsConversionLossy
int GDALDataTypeIsConversionLossy(GDALDataType eTypeFrom, GDALDataType eTypeTo)
Is conversion from eTypeFrom to eTypeTo potentially lossy.
Definition: gdal_misc.cpp:658
GDALGetPaletteInterpretation
GDALPaletteInterp GDALGetPaletteInterpretation(GDALColorTableH)
Fetch palette interpretation.
Definition: gdalcolortable.cpp:337
GDALSetGCPs
CPLErr GDALSetGCPs(GDALDatasetH, int, const GDAL_GCP *, const char *)
Assign GCPs.
Definition: gdaldataset.cpp:2050
GCI_SAR_Start
#define GCI_SAR_Start
Value indicating the start of the range for color interpretations belonging to the Synthetic Aperture...
Definition: gdal.h:233
GDALRATGetRowCount
int GDALRATGetRowCount(GDALRasterAttributeTableH)
Fetch row count.
Definition: gdal_rat.cpp:1425
GDALMDArrayDeleteAttribute
bool GDALMDArrayDeleteAttribute(GDALMDArrayH hArray, const char *pszName, CSLConstList papszOptions)
Delete an attribute from an array.
Definition: gdalmultidim.cpp:11780
GDALMDArrayGetDataType
GDALExtendedDataTypeH GDALMDArrayGetDataType(GDALMDArrayH hArray)
Return the data type.
Definition: gdalmultidim.cpp:11570
GDALMajorObjectH
void * GDALMajorObjectH
Opaque type used for the C bindings of the C++ GDALMajorObject class.
Definition: gdal.h:373
GDALColorInterp
GDALColorInterp
Types of color interpretation for raster bands.
Definition: gdal.h:257
GCI_NIRBand
@ GCI_NIRBand
Definition: gdal.h:285
GCI_SAR_S_Band
@ GCI_SAR_S_Band
Definition: gdal.h:317
GCI_SAR_L_Band
@ GCI_SAR_L_Band
Definition: gdal.h:319
GCI_YCbCr_YBand
@ GCI_YCbCr_YBand
Definition: gdal.h:276
GCI_SAR_Reserved_2
@ GCI_SAR_Reserved_2
Definition: gdal.h:325
GCI_Undefined
@ GCI_Undefined
Definition: gdal.h:258
GCI_SAR_K_Band
@ GCI_SAR_K_Band
Definition: gdal.h:309
GCI_SaturationBand
@ GCI_SaturationBand
Definition: gdal.h:269
GCI_LightnessBand
@ GCI_LightnessBand
Definition: gdal.h:270
GCI_SAR_Ku_Band
@ GCI_SAR_Ku_Band
Definition: gdal.h:311
GCI_HueBand
@ GCI_HueBand
Definition: gdal.h:268
GCI_LWIRBand
@ GCI_LWIRBand
Definition: gdal.h:291
GCI_CyanBand
@ GCI_CyanBand
Definition: gdal.h:271
GCI_IR_Reserved_3
@ GCI_IR_Reserved_3
Definition: gdal.h:302
GCI_SAR_Ka_Band
@ GCI_SAR_Ka_Band
Definition: gdal.h:307
GCI_MagentaBand
@ GCI_MagentaBand
Definition: gdal.h:272
GCI_GrayIndex
@ GCI_GrayIndex
Definition: gdal.h:259
GCI_IR_Reserved_4
@ GCI_IR_Reserved_4
Definition: gdal.h:304
GCI_SAR_X_Band
@ GCI_SAR_X_Band
Definition: gdal.h:313
GCI_SAR_P_Band
@ GCI_SAR_P_Band
Definition: gdal.h:321
GCI_BlueBand
@ GCI_BlueBand
Definition: gdal.h:266
GCI_PaletteIndex
@ GCI_PaletteIndex
Definition: gdal.h:260
GCI_SAR_Reserved_1
@ GCI_SAR_Reserved_1
Definition: gdal.h:323
GCI_RedBand
@ GCI_RedBand
Definition: gdal.h:262
GCI_AlphaBand
@ GCI_AlphaBand
Definition: gdal.h:267
GCI_Max
@ GCI_Max
Definition: gdal.h:329
GCI_YCbCr_CrBand
@ GCI_YCbCr_CrBand
Definition: gdal.h:278
GCI_TIRBand
@ GCI_TIRBand
Definition: gdal.h:293
GCI_MWIRBand
@ GCI_MWIRBand
Definition: gdal.h:289
GCI_SAR_C_Band
@ GCI_SAR_C_Band
Definition: gdal.h:315
GCI_GreenBand
@ GCI_GreenBand
Definition: gdal.h:264
GCI_YellowBand
@ GCI_YellowBand
Definition: gdal.h:274
GCI_OtherIRBand
@ GCI_OtherIRBand
Definition: gdal.h:295
GCI_IR_Reserved_2
@ GCI_IR_Reserved_2
Definition: gdal.h:300
GCI_BlackBand
@ GCI_BlackBand
Definition: gdal.h:275
GCI_IR_Reserved_1
@ GCI_IR_Reserved_1
Definition: gdal.h:298
GCI_RedEdgeBand
@ GCI_RedEdgeBand
Definition: gdal.h:283
GCI_SWIRBand
@ GCI_SWIRBand
Definition: gdal.h:287
GCI_YCbCr_CbBand
@ GCI_YCbCr_CbBand
Definition: gdal.h:277
GCI_CoastalBand
@ GCI_CoastalBand
Definition: gdal.h:282
GCI_PanBand
@ GCI_PanBand
Definition: gdal.h:281
GDALGroupH
struct GDALGroupHS * GDALGroupH
Opaque type for C++ GDALGroup.
Definition: gdal.h:431
GDALDatasetCreateLayerFromGeomFieldDefn
OGRLayerH GDALDatasetCreateLayerFromGeomFieldDefn(GDALDatasetH, const char *, OGRGeomFieldDefnH, CSLConstList)
This function attempts to create a new layer on the dataset with the indicated name and geometry fiel...
Definition: gdaldataset.cpp:5317
GDALARLockBuffer
int GDALARLockBuffer(GDALAsyncReaderH hARIO, double dfTimeout)
Lock image buffer.
Definition: gdaldefaultasync.cpp:204
GDALAttributeReadAsInt64Array
int64_t * GDALAttributeReadAsInt64Array(GDALAttributeH hAttr, size_t *pnCount)
Return the value of an attribute as an array of int64_t.
Definition: gdalmultidim.cpp:13069
GDALGetRasterUnitType
const char * GDALGetRasterUnitType(GDALRasterBandH)
Return raster unit type.
Definition: gdalrasterband.cpp:3644
GDALFlushRasterCache
CPLErr GDALFlushRasterCache(GDALRasterBandH hBand)
Flush raster data cache.
Definition: gdalrasterband.cpp:1659
GDALRelationshipType
GDALRelationshipType
Type of relationship.
Definition: gdal.h:2234
GRT_AGGREGATION
@ GRT_AGGREGATION
Aggregation relationship.
Definition: gdal.h:2240
GRT_ASSOCIATION
@ GRT_ASSOCIATION
Association relationship.
Definition: gdal.h:2238
GRT_COMPOSITE
@ GRT_COMPOSITE
Composite relationship.
Definition: gdal.h:2236
GDALGetRasterSampleOverview
GDALRasterBandH GDALGetRasterSampleOverview(GDALRasterBandH, int)
Fetch best sampling overview.
Definition: gdalrasterband.cpp:3319
GDALPackedDMSToDec
double GDALPackedDMSToDec(double)
Convert a packed DMS value (DDDMMMSSS.SS) into decimal degrees.
Definition: gdal_misc.cpp:2955
GDALExtendedDataTypeEquals
int GDALExtendedDataTypeEquals(GDALExtendedDataTypeH hFirstEDT, GDALExtendedDataTypeH hSecondEDT)
Return whether this data type is equal to another one.
Definition: gdalmultidim.cpp:10678
GDALRATTranslateToColorTable
GDALColorTableH GDALRATTranslateToColorTable(GDALRasterAttributeTableH, int nEntryCount)
Translate to a color table.
Definition: gdal_rat.cpp:1075
GDALDatasetCopyLayer
OGRLayerH GDALDatasetCopyLayer(GDALDatasetH, OGRLayerH, const char *, CSLConstList)
Duplicate an existing layer.
Definition: gdaldataset.cpp:5364
GDALMDArrayAdviseRead
int GDALMDArrayAdviseRead(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count)
Advise driver of upcoming read requests.
Definition: gdalmultidim.cpp:11654
GDALRATGetNameOfCol
const char * GDALRATGetNameOfCol(GDALRasterAttributeTableH, int)
Fetch name of indicated column.
Definition: gdal_rat.cpp:1275
GDALDataTypeUnionWithValue
GDALDataType GDALDataTypeUnionWithValue(GDALDataType eDT, double dValue, int bComplex)
Union a data type with the one found for a value.
Definition: gdal_misc.cpp:168
GDALAsyncStatusType
GDALAsyncStatusType
status of the asynchronous stream
Definition: gdal.h:96
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:2314
GDALRelationshipGetType
GDALRelationshipType GDALRelationshipGetType(GDALRelationshipH)
Get the type of the relationship.
Definition: gdalrelationship.cpp:426
GDALReleaseAttributes
void GDALReleaseAttributes(GDALAttributeH *attributes, size_t nCount)
Free the return of GDALGroupGetAttributes() or GDALMDArrayGetAttributes()
Definition: gdalmultidim.cpp:11211
GDALFlushCache
CPLErr GDALFlushCache(GDALDatasetH hDS)
Flush all write cached data to disk.
Definition: gdaldataset.cpp:600
GDALAttributeReadAsInt64
int64_t GDALAttributeReadAsInt64(GDALAttributeH hAttr)
Return the value of an attribute as a int64_t.
Definition: gdalmultidim.cpp:12987
GDALSetDefaultRAT
CPLErr GDALSetDefaultRAT(GDALRasterBandH, GDALRasterAttributeTableH)
Set default Raster Attribute Table.
Definition: gdalrasterband.cpp:7598
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:3278
GDALReadWorldFile
int GDALReadWorldFile(const char *, const char *, double *)
Read ESRI world file.
Definition: gdal_misc.cpp:2513
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:11300
GDALReleaseDataset
int GDALReleaseDataset(GDALDatasetH)
Drop a reference to this object, and destroy if no longer referenced.
Definition: gdaldataset.cpp:1648
GDALMDArrayGetBlockSize
GUInt64 * GDALMDArrayGetBlockSize(GDALMDArrayH hArray, size_t *pnCount)
Return the "natural" block size of the array along all dimensions.
Definition: gdalmultidim.cpp:12199
GDALGetDataTypeSize
int GDALGetDataTypeSize(GDALDataType)
Get data type size in bits.
Definition: gdal_misc.cpp:474
GDALDataTypeIsSigned
int GDALDataTypeIsSigned(GDALDataType)
Is data type signed?
Definition: gdal_misc.cpp:616
GDALSetRasterColorTable
CPLErr GDALSetRasterColorTable(GDALRasterBandH, GDALColorTableH)
Set the raster color table.
Definition: gdalrasterband.cpp:3117
GDALGetGeoTransform
CPLErr GDALGetGeoTransform(GDALDatasetH, double *)
Fetch the affine transformation coefficients.
Definition: gdaldataset.cpp:1406
GDALSetCacheMax
void GDALSetCacheMax(int nBytes)
Set maximum cache memory.
Definition: gdalrasterblock.cpp:104
GDALDriverH
void * GDALDriverH
Opaque type used for the C bindings of the C++ GDALDriver class.
Definition: gdal.h:382
GDALAttributeWriteInt
int GDALAttributeWriteInt(GDALAttributeH hAttr, int)
Write an attribute from a integer value.
Definition: gdalmultidim.cpp:13176
GDALFlushCacheBlock
int GDALFlushCacheBlock(void)
Try to flush one cached raster block.
Definition: gdalrasterblock.cpp:359
GDALAttributeReadAsDouble
double GDALAttributeReadAsDouble(GDALAttributeH hAttr)
Return the value of an attribute as a double.
Definition: gdalmultidim.cpp:13007
GDALGetRasterYSize
int GDALGetRasterYSize(GDALDatasetH)
Fetch raster height in pixels.
Definition: gdaldataset.cpp:985
GDALEDTComponentRelease
void GDALEDTComponentRelease(GDALEDTComponentH hComp)
Release the GDAL in-memory object associated with a GDALEDTComponentH.
Definition: gdalmultidim.cpp:10786
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:250
GDALRATGetColOfUsage
int GDALRATGetColOfUsage(GDALRasterAttributeTableH, GDALRATFieldUsage)
Fetch column index for given usage.
Definition: gdal_rat.cpp:1397
GDALGetOpenDatasets
void GDALGetOpenDatasets(GDALDatasetH **hDS, int *pnCount)
Fetch all open GDAL dataset handles.
Definition: gdaldataset.cpp:2946
GDALGetBandNumber
int GDALGetBandNumber(GDALRasterBandH)
Fetch the band number.
Definition: gdalrasterband.cpp:3814
GDALCreateMultiDimensional
GDALDatasetH GDALCreateMultiDimensional(GDALDriverH hDriver, const char *pszName, CSLConstList papszRootGroupOptions, CSLConstList papszOptions)
Create a new multidimensional dataset with this driver.
Definition: gdaldriver.cpp:412
GDALRelationshipGetRightMappingTableFields
char ** GDALRelationshipGetRightMappingTableFields(GDALRelationshipH)
Get the names of the mapping table fields which correspond to the participating fields from the right...
Definition: gdalrelationship.cpp:352
GDALRWFlag
GDALRWFlag
Definition: gdal.h:117
GF_Write
@ GF_Write
Definition: gdal.h:119
GF_Read
@ GF_Read
Definition: gdal.h:118
GDALGCPsToGeoTransform
int GDALGCPsToGeoTransform(int nGCPCount, const GDAL_GCP *pasGCPs, double *padfGeoTransform, int bApproxOK)
Generate Geotransform from GCPs.
Definition: gdal_misc.cpp:3012
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:3346
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:144
GDALMDArrayRelease
void GDALMDArrayRelease(GDALMDArrayH hMDArray)
Release the GDAL in-memory object associated with a GDALMDArray.
Definition: gdalmultidim.cpp:11450
GDALDestroySubdatasetInfo
void GDALDestroySubdatasetInfo(GDALSubdatasetInfoH hInfo)
Destroys a GDALSubdatasetInfo object.
Definition: gdalsubdatasetinfo.cpp:63
GDALMDArraySetSpatialRef
int GDALMDArraySetSpatialRef(GDALMDArrayH, OGRSpatialReferenceH)
Assign a spatial reference system object to the array.
Definition: gdalmultidim.cpp:12460
GDALVRTProcessedDatasetFuncFree
void(* GDALVRTProcessedDatasetFuncFree)(const char *pszFuncName, void *pUserData, VRTPDWorkingDataPtr pWorkingData)
Free function to pass to GDALVRTRegisterProcessedDatasetFunc.
Definition: gdal.h:1802
GDALGetDriverByName
GDALDriverH GDALGetDriverByName(const char *)
Fetch a driver based on the short name.
Definition: gdaldrivermanager.cpp:696
GDALSetGeoTransform
CPLErr GDALSetGeoTransform(GDALDatasetH, double *)
Set the affine transformation coefficients.
Definition: gdaldataset.cpp:1454
GDALOpen
GDALDatasetH GDALOpen(const char *pszFilename, GDALAccess eAccess)
Open a raster file as a GDALDataset.
Definition: gdaldataset.cpp:3433
GDALRelationshipGetLeftTableName
const char * GDALRelationshipGetLeftTableName(GDALRelationshipH)
Get the name of the left (or base/origin) table in the relationship.
Definition: gdalrelationship.cpp:127
GDALRATGetValueAsString
const char * GDALRATGetValueAsString(GDALRasterAttributeTableH, int, int)
Fetch field value as a string.
Definition: gdal_rat.cpp:1491
GDALGetRasterColorInterpretation
GDALColorInterp GDALGetRasterColorInterpretation(GDALRasterBandH)
How should this band be interpreted as color?
Definition: gdalrasterband.cpp:2977
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:1567
GDALDatasetUpdateRelationship
bool GDALDatasetUpdateRelationship(GDALDatasetH hDS, GDALRelationshipH hRelationship, char **ppszFailureReason)
Updates an existing relationship by replacing its definition.
Definition: gdaldataset.cpp:9713
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:12522
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:4483
GDALRasterBandH
void * GDALRasterBandH
Opaque type used for the C bindings of the C++ GDALRasterBand class.
Definition: gdal.h:379
GDALCreateDriver
GDALDriverH GDALCreateDriver(void)
Create a GDALDriver.
Definition: gdaldriver.cpp:62
GDALGroupGetVectorLayerNames
char ** GDALGroupGetVectorLayerNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of layer names contained in this group.
Definition: gdalmultidim.cpp:11029
GDALMDArrayGetScaleEx
double GDALMDArrayGetScaleEx(GDALMDArrayH hArray, int *pbHasValue, GDALDataType *peStorageType)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:12116
GDALColorTableH
void * GDALColorTableH
Opaque type used for the C bindings of the C++ GDALColorTable class.
Definition: gdal.h:385
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:457
GDALGetRasterNoDataValueAsInt64
int64_t GDALGetRasterNoDataValueAsInt64(GDALRasterBandH, int *)
Fetch the no data value for this band.
Definition: gdalrasterband.cpp:2394
GDALCreateCopy
GDALDatasetH GDALCreateCopy(GDALDriverH, const char *, GDALDatasetH, int, CSLConstList, GDALProgressFunc, void *)
Create a copy of a dataset.
Definition: gdaldriver.cpp:1400
GDALGroupGetName
const char * GDALGroupGetName(GDALGroupH hGroup)
Return the name of the group.
Definition: gdalmultidim.cpp:10860
GDALMDArraySetOffset
int GDALMDArraySetOffset(GDALMDArrayH hArray, double dfOffset)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:12055
GDALRelationshipSetRightTableFields
void GDALRelationshipSetRightTableFields(GDALRelationshipH, CSLConstList)
Sets the names of the participating fields from the right table in the relationship.
Definition: gdalrelationship.cpp:301
GDALRegenerateOverviews
CPLErr GDALRegenerateOverviews(GDALRasterBandH hSrcBand, int nOverviewCount, GDALRasterBandH *pahOverviewBands, const char *pszResampling, GDALProgressFunc pfnProgress, void *pProgressData)
Generate downsampled overviews.
Definition: overview.cpp:4309
GDALCreateRasterAttributeTable
GDALRasterAttributeTableH GDALCreateRasterAttributeTable(void)
Construct empty table.
Definition: gdal_rat.cpp:1165
GDALGetCacheMax
int GDALGetCacheMax(void)
Get maximum cache memory.
Definition: gdalrasterblock.cpp:182
GDALComposeGeoTransforms
void GDALComposeGeoTransforms(const double *padfGeoTransform1, const double *padfGeoTransform2, double *padfGeoTransformOut)
Compose two geotransforms.
Definition: gdal_misc.cpp:3307
GDALMDArrayAdviseReadEx
int GDALMDArrayAdviseReadEx(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count, CSLConstList papszOptions)
Advise driver of upcoming read requests.
Definition: gdalmultidim.cpp:11672
GDALSetRasterNoDataValueAsUInt64
CPLErr GDALSetRasterNoDataValueAsUInt64(GDALRasterBandH, uint64_t)
Set the no data value for this band.
Definition: gdalrasterband.cpp:2676
GDALDatasetSetStyleTable
void GDALDatasetSetStyleTable(GDALDatasetH, OGRStyleTableH)
Set dataset style table.
Definition: gdaldataset.cpp:5545
GDALGetInternalHandle
void * GDALGetInternalHandle(GDALDatasetH, const char *)
Fetch a format specific internally meaningful handle.
Definition: gdaldataset.cpp:1494
GDALSetSpatialRef
CPLErr GDALSetSpatialRef(GDALDatasetH, OGRSpatialReferenceH)
Set the spatial reference system for this dataset.
Definition: gdaldataset.cpp:1321
GDALDestroyDriver
void GDALDestroyDriver(GDALDriverH)
Destroy a GDALDriver.
Definition: gdaldriver.cpp:81
GCI_IR_Start
#define GCI_IR_Start
Value indicating the start of the range for color interpretations belonging to the InfraRed (IR) doma...
Definition: gdal.h:216
GDALEDTComponentGetOffset
size_t GDALEDTComponentGetOffset(GDALEDTComponentH hComp)
Return the offset (in bytes) of the component in the compound data type.
Definition: gdalmultidim.cpp:10815
GDALTileOrganization
GDALTileOrganization
! Enumeration to describe the tile organization
Definition: gdal.h:2317
GTO_BIT
@ GTO_BIT
Definition: gdal.h:2324
GTO_BSQ
@ GTO_BSQ
Definition: gdal.h:2327
GTO_TIP
@ GTO_TIP
Definition: gdal.h:2320
GDALCreateColorRamp
void GDALCreateColorRamp(GDALColorTableH hTable, int nStartIndex, const GDALColorEntry *psStartColor, int nEndIndex, const GDALColorEntry *psEndColor)
Create color ramp.
Definition: gdalcolortable.cpp:426
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:10542
GDALSubdatasetInfoGetSubdatasetComponent
char * GDALSubdatasetInfoGetSubdatasetComponent(GDALSubdatasetInfoH hInfo)
Returns the subdataset component of a subdataset descriptor descriptor.
Definition: gdalsubdatasetinfo.cpp:74
GDALMDArrayGetUnscaled
GDALMDArrayH GDALMDArrayGetUnscaled(GDALMDArrayH hArray)
Return an array that is the unscaled version of the current one.
Definition: gdalmultidim.cpp:12332
GDALSetRasterStatistics
CPLErr GDALSetRasterStatistics(GDALRasterBandH hBand, double dfMin, double dfMax, double dfMean, double dfStdDev)
Set statistics on band.
Definition: gdalrasterband.cpp:6805
GDALDropCache
CPLErr GDALDropCache(GDALDatasetH hDS)
Drop all write cached data.
Definition: gdaldataset.cpp:653
GDALMDArrayGetNoDataValueAsDouble
double GDALMDArrayGetNoDataValueAsDouble(GDALMDArrayH hArray, int *pbHasNoDataValue)
Return the nodata value as a double.
Definition: gdalmultidim.cpp:11831
GDALDecToPackedDMS
double GDALDecToPackedDMS(double)
Convert decimal degrees into packed DMS value (DDDMMMSSS.SS).
Definition: gdal_misc.cpp:2971
GDALGetDataTypeByName
GDALDataType GDALGetDataTypeByName(const char *)
Get data type by symbolic name.
Definition: gdal_misc.cpp:799
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:3572
GDALDatasetSetQueryLoggerFunc
bool GDALDatasetSetQueryLoggerFunc(GDALDatasetH hDS, GDALQueryLoggerFunc pfnQueryLoggerFunc, void *poQueryLoggerArg)
Sets the SQL query logger callback.
Definition: gdaldataset.cpp:9752
ogr_api.h
C API and defines for OGRFeature, OGRGeometry, and OGRDataSource related classes.
OGRGeometryH
void * OGRGeometryH
Opaque type for a geometry.
Definition: ogr_api.h:50
OGRSpatialReferenceH
void * OGRSpatialReferenceH
Opaque type for a spatial reference system.
Definition: ogr_api.h:65
OGRLayerH
void * OGRLayerH
Opaque type for a layer (OGRLayer)
Definition: ogr_api.h:676
OGRFeatureH
void * OGRFeatureH
Opaque type for a feature (OGRFeature)
Definition: ogr_api.h:410
OGRFieldDomainH
struct OGRFieldDomainHS * OGRFieldDomainH
Opaque type for a field domain definition (OGRFieldDomain)
Definition: ogr_api.h:418
OGRGeomFieldDefnH
struct OGRGeomFieldDefnHS * OGRGeomFieldDefnH
Opaque type for a geometry field definition (OGRGeomFieldDefn)
Definition: ogr_api.h:415
OGRStyleTableH
void * OGRStyleTableH
Opaque type for a style table (OGRStyleTable)
Definition: ogr_api.h:412
OGRwkbGeometryType
OGRwkbGeometryType
List of well known binary geometry types.
Definition: ogr_core.h:407
OGRErr
int OGRErr
Type for a OGR error.
Definition: ogr_core.h:371
CPLXMLNode
Document node structure.
Definition: cpl_minixml.h:55
GDALColorEntry
Color tuple.
Definition: gdal.h:2059
GDALColorEntry::c4
short c4
Definition: gdal.h:2070
GDALColorEntry::c2
short c2
Definition: gdal.h:2064
GDALColorEntry::c3
short c3
Definition: gdal.h:2067
GDALColorEntry::c1
short c1
Definition: gdal.h:2061
GDALRPCInfoV2
Structure to store Rational Polynomial Coefficients / Rigorous Projection Model.
Definition: gdal.h:2019
GDALRPCInfoV2::dfLAT_OFF
double dfLAT_OFF
Definition: gdal.h:2022
GDALRPCInfoV2::dfLONG_SCALE
double dfLONG_SCALE
Definition: gdal.h:2029
GDALRPCInfoV2::dfHEIGHT_OFF
double dfHEIGHT_OFF
Definition: gdal.h:2024
GDALRPCInfoV2::dfMAX_LAT
double dfMAX_LAT
Definition: gdal.h:2040
GDALRPCInfoV2::dfMIN_LAT
double dfMIN_LAT
Definition: gdal.h:2038
GDALRPCInfoV2::dfLINE_OFF
double dfLINE_OFF
Definition: gdal.h:2020
GDALRPCInfoV2::dfLONG_OFF
double dfLONG_OFF
Definition: gdal.h:2023
GDALRPCInfoV2::dfSAMP_SCALE
double dfSAMP_SCALE
Definition: gdal.h:2027
GDALRPCInfoV2::dfMAX_LONG
double dfMAX_LONG
Definition: gdal.h:2039
GDALRPCInfoV2::dfERR_BIAS
double dfERR_BIAS
Definition: gdal.h:2044
GDALRPCInfoV2::dfERR_RAND
double dfERR_RAND
Definition: gdal.h:2045
GDALRPCInfoV2::dfLINE_SCALE
double dfLINE_SCALE
Definition: gdal.h:2026
GDALRPCInfoV2::dfHEIGHT_SCALE
double dfHEIGHT_SCALE
Definition: gdal.h:2030
GDALRPCInfoV2::dfMIN_LONG
double dfMIN_LONG
Definition: gdal.h:2037
GDALRPCInfoV2::dfLAT_SCALE
double dfLAT_SCALE
Definition: gdal.h:2028
GDALRPCInfoV2::dfSAMP_OFF
double dfSAMP_OFF
Definition: gdal.h:2021
GDALRasterIOExtraArg
Structure to pass extra arguments to RasterIO() method, must be initialized with INIT_RASTERIO_EXTRA_...
Definition: gdal.h:161
GDALRasterIOExtraArg::pProgressData
void * pProgressData
Definition: gdal.h:171
GDALRasterIOExtraArg::eResampleAlg
GDALRIOResampleAlg eResampleAlg
Definition: gdal.h:166
GDALRasterIOExtraArg::dfXOff
double dfXOff
Definition: gdal.h:181
GDALRasterIOExtraArg::nVersion
int nVersion
Definition: gdal.h:163
GDALRasterIOExtraArg::dfYSize
double dfYSize
Definition: gdal.h:190
GDALRasterIOExtraArg::dfYOff
double dfYOff
Definition: gdal.h:184
GDALRasterIOExtraArg::dfXSize
double dfXSize
Definition: gdal.h:187
GDALRasterIOExtraArg::pfnProgress
GDALProgressFunc pfnProgress
Definition: gdal.h:169
GDALRasterIOExtraArg::bFloatingPointWindowValidity
int bFloatingPointWindowValidity
Definition: gdal.h:178
GDALSubdatasetInfo
The GDALSubdatasetInfo abstract class provides methods to extract and manipulate subdataset informati...
Definition: gdalsubdatasetinfo.h:27
GDAL_GCP
Ground Control Point.
Definition: gdal.h:1168
GDAL_GCP::dfGCPLine
double dfGCPLine
Line (y) location of GCP on raster.
Definition: gdal.h:1178
GDAL_GCP::dfGCPX
double dfGCPX
X position of GCP in georeferenced space.
Definition: gdal.h:1181
GDAL_GCP::pszId
char * pszId
Unique identifier, often numeric.
Definition: gdal.h:1170
GDAL_GCP::pszInfo
char * pszInfo
Informational message or "".
Definition: gdal.h:1173
GDAL_GCP::dfGCPPixel
double dfGCPPixel
Pixel (x) location of GCP on raster.
Definition: gdal.h:1176
GDAL_GCP::dfGCPY
double dfGCPY
Y position of GCP in georeferenced space.
Definition: gdal.h:1184
GDAL_GCP::dfGCPZ
double dfGCPZ
Elevation of GCP, or zero if not known.
Definition: gdal.h:1187