GDAL

- Main Page
- Related Pages
- Classes
- Files
- Download
- Issue Tracker

- File List
- File Members

gdal.h
Go to the documentation of this file.
1 /******************************************************************************
2 * $Id$
3 *
4 * Project: GDAL Core
5 * Purpose: GDAL Core C/Public declarations.
6 * Author: Frank Warmerdam, warmerdam@pobox.com
7 *
8 ******************************************************************************
9 * Copyright (c) 1998, 2002 Frank Warmerdam
10 * Copyright (c) 2007-2014, Even Rouault <even dot rouault at spatialys.com>
11 *
12 * Permission is hereby granted, free of charge, to any person obtaining a
13 * copy of this software and associated documentation files (the "Software"),
14 * to deal in the Software without restriction, including without limitation
15 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
16 * and/or sell copies of the Software, and to permit persons to whom the
17 * Software is furnished to do so, subject to the following conditions:
18 *
19 * The above copyright notice and this permission notice shall be included
20 * in all copies or substantial portions of the Software.
21 *
22 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
23 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
28 * DEALINGS IN THE SOFTWARE.
29 ****************************************************************************/
30
31 #ifndef GDAL_H_INCLUDED
32 #define GDAL_H_INCLUDED
33
40 #ifndef DOXYGEN_SKIP
41 #if defined(GDAL_COMPILATION)
42 #define DO_NOT_DEFINE_GDAL_RELEASE_DATE_AND_GDAL_RELEASE_NAME
43 #endif
44 #include "gdal_version.h"
45 #include "cpl_port.h"
46 #include "cpl_error.h"
47 #include "cpl_progress.h"
48 #include "cpl_virtualmem.h"
49 #include "cpl_minixml.h"
50 #include "ogr_api.h"
51 #endif
52
53 /* -------------------------------------------------------------------- */
54 /* Significant constants. */
55 /* -------------------------------------------------------------------- */
56
57 CPL_C_START
58
60 typedef enum { GDT_Unknown = 0, GDT_Byte = 1, GDT_UInt16 = 2, GDT_Int16 = 3, GDT_UInt32 = 4, GDT_Int32 = 5,
67 /* TODO?(#6879): GDT_UInt64 */
68 /* TODO?(#6879): GDT_Int64 */ GDT_Float32 = 6, GDT_Float64 = 7, GDT_CInt16 = 8, GDT_CInt32 = 9,
73 /* TODO?(#6879): GDT_CInt64 */ GDT_CFloat32 = 10, GDT_CFloat64 = 11,
76 GDT_TypeCount = 12 /* maximum type # + 1 */
77 } GDALDataType;
78
79 int CPL_DLL CPL_STDCALL GDALGetDataTypeSize( GDALDataType ); // Deprecated.
80 int CPL_DLL CPL_STDCALL GDALGetDataTypeSizeBits( GDALDataType eDataType );
81 int CPL_DLL CPL_STDCALL GDALGetDataTypeSizeBytes( GDALDataType );
82 int CPL_DLL CPL_STDCALL GDALDataTypeIsComplex( GDALDataType );
83 int CPL_DLL CPL_STDCALL GDALDataTypeIsInteger( GDALDataType );
84 int CPL_DLL CPL_STDCALL GDALDataTypeIsFloating( GDALDataType );
85 int CPL_DLL CPL_STDCALL GDALDataTypeIsSigned( GDALDataType );
86 const char CPL_DLL * CPL_STDCALL GDALGetDataTypeName( GDALDataType );
87 GDALDataType CPL_DLL CPL_STDCALL GDALGetDataTypeByName( const char * );
88 GDALDataType CPL_DLL CPL_STDCALL GDALDataTypeUnion( GDALDataType, GDALDataType );
89 GDALDataType CPL_DLL CPL_STDCALL GDALDataTypeUnionWithValue( GDALDataType eDT, double dValue, int bComplex );
90 GDALDataType CPL_DLL CPL_STDCALL GDALFindDataType( int nBits, int bSigned, int bFloating, int bComplex );
91 GDALDataType CPL_DLL CPL_STDCALL GDALFindDataTypeForValue( double dValue, int bComplex );
92 double CPL_DLL GDALAdjustValueToDataType( GDALDataType eDT, double dfValue, int* pbClamped, int* pbRounded );
93 GDALDataType CPL_DLL CPL_STDCALL GDALGetNonComplexDataType( GDALDataType );
94 int CPL_DLL CPL_STDCALL GDALDataTypeIsConversionLossy( GDALDataType eTypeFrom,
95 GDALDataType eTypeTo );
96
100 typedef enum
101 {
102 GARIO_PENDING = 0,
103 GARIO_UPDATE = 1,
104 GARIO_ERROR = 2,
105 GARIO_COMPLETE = 3,
106 GARIO_TypeCount = 4
107 } GDALAsyncStatusType;
108
109 const char CPL_DLL * CPL_STDCALL GDALGetAsyncStatusTypeName( GDALAsyncStatusType );
110 GDALAsyncStatusType CPL_DLL CPL_STDCALL GDALGetAsyncStatusTypeByName( const char * );
111
113 typedef enum { GA_ReadOnly = 0, GA_Update = 1
116 } GDALAccess;
117
119 typedef enum { GF_Read = 0, GF_Write = 1
122 } GDALRWFlag;
123
124 /* NOTE: values are selected to be consistent with GDALResampleAlg of alg/gdalwarper.h */
128 typedef enum
129 { 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 12 are reserved for max,min,med,Q1,Q3 */
140 } GDALRIOResampleAlg;
141
142 /* NOTE to developers: only add members, and if so edit INIT_RASTERIO_EXTRA_ARG */
143 /* and INIT_RASTERIO_EXTRA_ARG */
147 typedef struct
148 {
150 int nVersion;
151
153 GDALRIOResampleAlg eResampleAlg;
154
156 GDALProgressFunc pfnProgress;
158 void *pProgressData;
159
164 int bFloatingPointWindowValidity;
166 double dfXOff;
168 double dfYOff;
170 double dfXSize;
172 double dfYSize;
173 } GDALRasterIOExtraArg;
174
175 #ifndef DOXYGEN_SKIP
176 #define RASTERIO_EXTRA_ARG_CURRENT_VERSION 1
177 #endif
178
182 #define INIT_RASTERIO_EXTRA_ARG(s) \
183 do { (s).nVersion = RASTERIO_EXTRA_ARG_CURRENT_VERSION; \
184 (s).eResampleAlg = GRIORA_NearestNeighbour; \
185 (s).pfnProgress = CPL_NULLPTR; \
186 (s).pProgressData = CPL_NULLPTR; \
187 (s).bFloatingPointWindowValidity = FALSE; } while(0)
188
190 typedef enum
191 { GCI_Undefined=0, GCI_GrayIndex=1, GCI_PaletteIndex=2, GCI_RedBand=3, GCI_GreenBand=4, GCI_BlueBand=5, GCI_AlphaBand=6, GCI_HueBand=7, GCI_SaturationBand=8, GCI_LightnessBand=9, GCI_CyanBand=10, GCI_MagentaBand=11, GCI_YellowBand=12, GCI_BlackBand=13, GCI_YCbCr_YBand=14, GCI_YCbCr_CbBand=15, GCI_YCbCr_CrBand=16, GCI_Max=16
210 } GDALColorInterp;
211
212 const char CPL_DLL *GDALGetColorInterpretationName( GDALColorInterp );
213 GDALColorInterp CPL_DLL GDALGetColorInterpretationByName( const char *pszName );
214
216 typedef enum
217 { GPI_Gray=0, GPI_RGB=1, GPI_CMYK=2, GPI_HLS=3
222 } GDALPaletteInterp;
223
224 const char CPL_DLL *GDALGetPaletteInterpretationName( GDALPaletteInterp );
225
226 /* "well known" metadata items. */
227
230 #define GDALMD_AREA_OR_POINT "AREA_OR_POINT"
231
233 # define GDALMD_AOP_AREA "Area"
234
236 # define GDALMD_AOP_POINT "Point"
237
238 /* -------------------------------------------------------------------- */
239 /* GDAL Specific error codes. */
240 /* */
241 /* error codes 100 to 299 reserved for GDAL. */
242 /* -------------------------------------------------------------------- */
243 #ifndef DOXYGEN_SKIP
244 #define CPLE_WrongFormat CPL_STATIC_CAST(CPLErrorNum, 200)
245 #endif
246
247 /* -------------------------------------------------------------------- */
248 /* Define handle types related to various internal classes. */
249 /* -------------------------------------------------------------------- */
250
252 typedef void *GDALMajorObjectH;
253
255 typedef void *GDALDatasetH;
256
258 typedef void *GDALRasterBandH;
259
261 typedef void *GDALDriverH;
262
264 typedef void *GDALColorTableH;
265
267 typedef void *GDALRasterAttributeTableH;
268
270 typedef void *GDALAsyncReaderH;
271
273 typedef GIntBig GSpacing;
274
278 typedef enum {
280 GEDTC_NUMERIC,
282 GEDTC_STRING,
284 GEDTC_COMPOUND
285 } GDALExtendedDataTypeClass;
286
288 typedef struct GDALExtendedDataTypeHS* GDALExtendedDataTypeH;
290 typedef struct GDALEDTComponentHS* GDALEDTComponentH;
292 typedef struct GDALGroupHS* GDALGroupH;
294 typedef struct GDALMDArrayHS* GDALMDArrayH;
296 typedef struct GDALAttributeHS* GDALAttributeH;
298 typedef struct GDALDimensionHS* GDALDimensionH;
299
300 /* ==================================================================== */
301 /* Registration/driver related. */
302 /* ==================================================================== */
303
305 #define GDAL_DMD_LONGNAME "DMD_LONGNAME"
306
308 #define GDAL_DMD_HELPTOPIC "DMD_HELPTOPIC"
309
311 #define GDAL_DMD_MIMETYPE "DMD_MIMETYPE"
312
314 #define GDAL_DMD_EXTENSION "DMD_EXTENSION"
315
320 #define GDAL_DMD_CONNECTION_PREFIX "DMD_CONNECTION_PREFIX"
321
325 #define GDAL_DMD_EXTENSIONS "DMD_EXTENSIONS"
326
328 #define GDAL_DMD_CREATIONOPTIONLIST "DMD_CREATIONOPTIONLIST"
329
333 #define GDAL_DMD_MULTIDIM_DATASET_CREATIONOPTIONLIST "DMD_MULTIDIM_DATASET_CREATIONOPTIONLIST"
334
338 #define GDAL_DMD_MULTIDIM_GROUP_CREATIONOPTIONLIST "DMD_MULTIDIM_GROUP_CREATIONOPTIONLIST"
339
343 #define GDAL_DMD_MULTIDIM_DIMENSION_CREATIONOPTIONLIST "DMD_MULTIDIM_DIMENSION_CREATIONOPTIONLIST"
344
348 #define GDAL_DMD_MULTIDIM_ARRAY_CREATIONOPTIONLIST "DMD_MULTIDIM_ARRAY_CREATIONOPTIONLIST"
349
353 #define GDAL_DMD_MULTIDIM_ATTRIBUTE_CREATIONOPTIONLIST "DMD_MULTIDIM_ATTRIBUTE_CREATIONOPTIONLIST"
354
358 #define GDAL_DMD_OPENOPTIONLIST "DMD_OPENOPTIONLIST"
359
361 #define GDAL_DMD_CREATIONDATATYPES "DMD_CREATIONDATATYPES"
362
366 #define GDAL_DMD_CREATIONFIELDDATATYPES "DMD_CREATIONFIELDDATATYPES"
367
371 #define GDAL_DMD_CREATIONFIELDDATASUBTYPES "DMD_CREATIONFIELDDATASUBTYPES"
372
374 #define GDAL_DMD_SUBDATASETS "DMD_SUBDATASETS"
375
377 #define GDAL_DCAP_OPEN "DCAP_OPEN"
378
387 #define GDAL_DCAP_CREATE "DCAP_CREATE"
388
393 #define GDAL_DCAP_CREATE_MULTIDIMENSIONAL "DCAP_CREATE_MULTIDIMENSIONAL"
394
403 #define GDAL_DCAP_CREATECOPY "DCAP_CREATECOPY"
404
410 #define GDAL_DCAP_CREATECOPY_MULTIDIMENSIONAL "DCAP_CREATECOPY_MULTIDIMENSIONAL"
411
415 #define GDAL_DCAP_MULTIDIM_RASTER "DCAP_MULTIDIM_RASTER"
416
418 #define GDAL_DCAP_SUBCREATECOPY "DCAP_SUBCREATECOPY"
419
421 #define GDAL_DCAP_VIRTUALIO "DCAP_VIRTUALIO"
422
426 #define GDAL_DCAP_RASTER "DCAP_RASTER"
427
431 #define GDAL_DCAP_VECTOR "DCAP_VECTOR"
432
436 #define GDAL_DCAP_GNM "DCAP_GNM"
437
441 #define GDAL_DCAP_NOTNULL_FIELDS "DCAP_NOTNULL_FIELDS"
442
446 #define GDAL_DCAP_DEFAULT_FIELDS "DCAP_DEFAULT_FIELDS"
447
451 #define GDAL_DCAP_NOTNULL_GEOMFIELDS "DCAP_NOTNULL_GEOMFIELDS"
452
458 #define GDAL_DCAP_NONSPATIAL "DCAP_NONSPATIAL"
459
463 #define GDAL_DCAP_FEATURE_STYLES "DCAP_FEATURE_STYLES"
464
468 #define GDAL_DIM_TYPE_HORIZONTAL_X "HORIZONTAL_X"
469
473 #define GDAL_DIM_TYPE_HORIZONTAL_Y "HORIZONTAL_Y"
474
478 #define GDAL_DIM_TYPE_VERTICAL "VERTICAL"
479
483 #define GDAL_DIM_TYPE_TEMPORAL "TEMPORAL"
484
488 #define GDAL_DIM_TYPE_PARAMETRIC "PARAMETRIC"
489
490
491 void CPL_DLL CPL_STDCALL GDALAllRegister( void );
492
493 GDALDatasetH CPL_DLL CPL_STDCALL GDALCreate( GDALDriverH hDriver,
494 const char *, int, int, int, GDALDataType,
495 CSLConstList ) CPL_WARN_UNUSED_RESULT;
496 GDALDatasetH CPL_DLL CPL_STDCALL
497 GDALCreateCopy( GDALDriverH, const char *, GDALDatasetH,
498 int, CSLConstList, GDALProgressFunc, void * ) CPL_WARN_UNUSED_RESULT;
499
500 GDALDriverH CPL_DLL CPL_STDCALL GDALIdentifyDriver( const char * pszFilename,
501 CSLConstList papszFileList );
502
503 GDALDriverH CPL_DLL CPL_STDCALL GDALIdentifyDriverEx(
504 const char *pszFilename, unsigned int nIdentifyFlags,
505 const char *const *papszAllowedDrivers, const char *const *papszFileList);
506
507 GDALDatasetH CPL_DLL CPL_STDCALL
508 GDALOpen( const char *pszFilename, GDALAccess eAccess ) CPL_WARN_UNUSED_RESULT;
509 GDALDatasetH CPL_DLL CPL_STDCALL GDALOpenShared( const char *, GDALAccess ) CPL_WARN_UNUSED_RESULT;
510
511 /* Note: we define GDAL_OF_READONLY and GDAL_OF_UPDATE to be on purpose */
512 /* equals to GA_ReadOnly and GA_Update */
513
518 #define GDAL_OF_READONLY 0x00
519
524 #define GDAL_OF_UPDATE 0x01
525
530 #define GDAL_OF_ALL 0x00
531
536 #define GDAL_OF_RASTER 0x02
537
542 #define GDAL_OF_VECTOR 0x04
543
548 #define GDAL_OF_GNM 0x08
549
554 #define GDAL_OF_MULTIDIM_RASTER 0x10
555
556 #ifndef DOXYGEN_SKIP
557 #define GDAL_OF_KIND_MASK 0x1E
558 #endif
559
564 #define GDAL_OF_SHARED 0x20
565
570 #define GDAL_OF_VERBOSE_ERROR 0x40
571
578 #define GDAL_OF_INTERNAL 0x80
579
589 #define GDAL_OF_DEFAULT_BLOCK_ACCESS 0
590
599 #define GDAL_OF_ARRAY_BLOCK_ACCESS 0x100
600
609 #define GDAL_OF_HASHSET_BLOCK_ACCESS 0x200
610
611 #ifndef DOXYGEN_SKIP
612 /* Reserved for a potential future alternative to GDAL_OF_ARRAY_BLOCK_ACCESS
613 * and GDAL_OF_HASHSET_BLOCK_ACCESS */
614 #define GDAL_OF_RESERVED_1 0x300
615
617 #define GDAL_OF_BLOCK_ACCESS_MASK 0x300
618 #endif
619
620 GDALDatasetH CPL_DLL CPL_STDCALL GDALOpenEx( const char* pszFilename,
621 unsigned int nOpenFlags,
622 const char* const* papszAllowedDrivers,
623 const char* const* papszOpenOptions,
624 const char* const* papszSiblingFiles ) CPL_WARN_UNUSED_RESULT;
625
626 int CPL_DLL CPL_STDCALL GDALDumpOpenDatasets( FILE * );
627
628 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDriverByName( const char * );
629 int CPL_DLL CPL_STDCALL GDALGetDriverCount( void );
630 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDriver( int );
631 GDALDriverH CPL_DLL CPL_STDCALL GDALCreateDriver( void );
632 void CPL_DLL CPL_STDCALL GDALDestroyDriver( GDALDriverH );
633 int CPL_DLL CPL_STDCALL GDALRegisterDriver( GDALDriverH );
634 void CPL_DLL CPL_STDCALL GDALDeregisterDriver( GDALDriverH );
635 void CPL_DLL CPL_STDCALL GDALDestroyDriverManager( void );
636 #ifndef DOXYGEN_SKIP
637 void CPL_DLL GDALDestroy( void );
638 #endif
639 CPLErr CPL_DLL CPL_STDCALL GDALDeleteDataset( GDALDriverH, const char * );
640 CPLErr CPL_DLL CPL_STDCALL GDALRenameDataset( GDALDriverH,
641 const char * pszNewName,
642 const char * pszOldName );
643 CPLErr CPL_DLL CPL_STDCALL GDALCopyDatasetFiles( GDALDriverH,
644 const char * pszNewName,
645 const char * pszOldName);
646 int CPL_DLL CPL_STDCALL GDALValidateCreationOptions( GDALDriverH,
647 CSLConstList papszCreationOptions);
648
649 /* The following are deprecated */
650 const char CPL_DLL * CPL_STDCALL GDALGetDriverShortName( GDALDriverH );
651 const char CPL_DLL * CPL_STDCALL GDALGetDriverLongName( GDALDriverH );
652 const char CPL_DLL * CPL_STDCALL GDALGetDriverHelpTopic( GDALDriverH );
653 const char CPL_DLL * CPL_STDCALL GDALGetDriverCreationOptionList( GDALDriverH );
654
655 /* ==================================================================== */
656 /* GDAL_GCP */
657 /* ==================================================================== */
658
660 typedef struct
661 {
663 char *pszId;
664
666 char *pszInfo;
667
669 double dfGCPPixel;
671 double dfGCPLine;
672
674 double dfGCPX;
675
677 double dfGCPY;
678
680 double dfGCPZ;
681 } GDAL_GCP;
682
683 void CPL_DLL CPL_STDCALL GDALInitGCPs( int, GDAL_GCP * );
684 void CPL_DLL CPL_STDCALL GDALDeinitGCPs( int, GDAL_GCP * );
685 GDAL_GCP CPL_DLL * CPL_STDCALL GDALDuplicateGCPs( int, const GDAL_GCP * );
686
687 int CPL_DLL CPL_STDCALL
688 GDALGCPsToGeoTransform( int nGCPCount, const GDAL_GCP *pasGCPs,
689 double *padfGeoTransform, int bApproxOK ) CPL_WARN_UNUSED_RESULT;
690 int CPL_DLL CPL_STDCALL
691 GDALInvGeoTransform( double *padfGeoTransformIn,
692 double *padfInvGeoTransformOut ) CPL_WARN_UNUSED_RESULT;
693 void CPL_DLL CPL_STDCALL GDALApplyGeoTransform( double *, double, double,
694 double *, double * );
695 void CPL_DLL GDALComposeGeoTransforms(const double *padfGeoTransform1,
696 const double *padfGeoTransform2,
697 double *padfGeoTransformOut);
698
699 /* ==================================================================== */
700 /* major objects (dataset, and, driver, drivermanager). */
701 /* ==================================================================== */
702
703 char CPL_DLL ** CPL_STDCALL GDALGetMetadataDomainList( GDALMajorObjectH hObject );
704 char CPL_DLL ** CPL_STDCALL GDALGetMetadata( GDALMajorObjectH, const char * );
705 CPLErr CPL_DLL CPL_STDCALL GDALSetMetadata( GDALMajorObjectH, CSLConstList,
706 const char * );
707 const char CPL_DLL * CPL_STDCALL
708 GDALGetMetadataItem( GDALMajorObjectH, const char *, const char * );
709 CPLErr CPL_DLL CPL_STDCALL
710 GDALSetMetadataItem( GDALMajorObjectH, const char *, const char *,
711 const char * );
712 const char CPL_DLL * CPL_STDCALL GDALGetDescription( GDALMajorObjectH );
713 void CPL_DLL CPL_STDCALL GDALSetDescription( GDALMajorObjectH, const char * );
714
715 /* ==================================================================== */
716 /* GDALDataset class ... normally this represents one file. */
717 /* ==================================================================== */
718
720 #define GDAL_DS_LAYER_CREATIONOPTIONLIST "DS_LAYER_CREATIONOPTIONLIST"
721
722 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDatasetDriver( GDALDatasetH );
723 char CPL_DLL ** CPL_STDCALL GDALGetFileList( GDALDatasetH );
724 void CPL_DLL CPL_STDCALL GDALClose( GDALDatasetH );
725 int CPL_DLL CPL_STDCALL GDALGetRasterXSize( GDALDatasetH );
726 int CPL_DLL CPL_STDCALL GDALGetRasterYSize( GDALDatasetH );
727 int CPL_DLL CPL_STDCALL GDALGetRasterCount( GDALDatasetH );
728 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetRasterBand( GDALDatasetH, int );
729
730 CPLErr CPL_DLL CPL_STDCALL GDALAddBand( GDALDatasetH hDS, GDALDataType eType,
731 CSLConstList papszOptions );
732
733 GDALAsyncReaderH CPL_DLL CPL_STDCALL
734 GDALBeginAsyncReader(GDALDatasetH hDS, int nXOff, int nYOff,
735 int nXSize, int nYSize,
736 void *pBuf, int nBufXSize, int nBufYSize,
737 GDALDataType eBufType, int nBandCount, int* panBandMap,
738 int nPixelSpace, int nLineSpace, int nBandSpace,
739 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
740
741 void CPL_DLL CPL_STDCALL
742 GDALEndAsyncReader(GDALDatasetH hDS, GDALAsyncReaderH hAsynchReaderH);
743
744 CPLErr CPL_DLL CPL_STDCALL GDALDatasetRasterIO(
745 GDALDatasetH hDS, GDALRWFlag eRWFlag,
746 int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
747 void * pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType,
748 int nBandCount, int *panBandCount,
749 int nPixelSpace, int nLineSpace, int nBandSpace) CPL_WARN_UNUSED_RESULT;
750
751 CPLErr CPL_DLL CPL_STDCALL GDALDatasetRasterIOEx(
752 GDALDatasetH hDS, GDALRWFlag eRWFlag,
753 int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
754 void * pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType,
755 int nBandCount, int *panBandCount,
756 GSpacing nPixelSpace, GSpacing nLineSpace, GSpacing nBandSpace,
757 GDALRasterIOExtraArg* psExtraArg) CPL_WARN_UNUSED_RESULT;
758
759 CPLErr CPL_DLL CPL_STDCALL GDALDatasetAdviseRead( GDALDatasetH hDS,
760 int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
761 int nBXSize, int nBYSize, GDALDataType eBDataType,
762 int nBandCount, int *panBandCount, CSLConstList papszOptions );
763
764 const char CPL_DLL * CPL_STDCALL GDALGetProjectionRef( GDALDatasetH );
765 OGRSpatialReferenceH CPL_DLL GDALGetSpatialRef( GDALDatasetH );
766 CPLErr CPL_DLL CPL_STDCALL GDALSetProjection( GDALDatasetH, const char * );
767 CPLErr CPL_DLL GDALSetSpatialRef( GDALDatasetH, OGRSpatialReferenceH );
768 CPLErr CPL_DLL CPL_STDCALL GDALGetGeoTransform( GDALDatasetH, double * );
769 CPLErr CPL_DLL CPL_STDCALL GDALSetGeoTransform( GDALDatasetH, double * );
770
771 int CPL_DLL CPL_STDCALL GDALGetGCPCount( GDALDatasetH );
772 const char CPL_DLL * CPL_STDCALL GDALGetGCPProjection( GDALDatasetH );
773 OGRSpatialReferenceH CPL_DLL GDALGetGCPSpatialRef( GDALDatasetH );
774 const GDAL_GCP CPL_DLL * CPL_STDCALL GDALGetGCPs( GDALDatasetH );
775 CPLErr CPL_DLL CPL_STDCALL GDALSetGCPs( GDALDatasetH, int, const GDAL_GCP *,
776 const char * );
777 CPLErr CPL_DLL GDALSetGCPs2( GDALDatasetH, int, const GDAL_GCP *,
778 OGRSpatialReferenceH );
779
780 void CPL_DLL * CPL_STDCALL GDALGetInternalHandle( GDALDatasetH, const char * );
781 int CPL_DLL CPL_STDCALL GDALReferenceDataset( GDALDatasetH );
782 int CPL_DLL CPL_STDCALL GDALDereferenceDataset( GDALDatasetH );
783 int CPL_DLL CPL_STDCALL GDALReleaseDataset( GDALDatasetH );
784
785 CPLErr CPL_DLL CPL_STDCALL
786 GDALBuildOverviews( GDALDatasetH, const char *, int, int *,
787 int, int *, GDALProgressFunc, void * ) CPL_WARN_UNUSED_RESULT;
788 void CPL_DLL CPL_STDCALL GDALGetOpenDatasets( GDALDatasetH **hDS, int *pnCount );
789 int CPL_DLL CPL_STDCALL GDALGetAccess( GDALDatasetH hDS );
790 void CPL_DLL CPL_STDCALL GDALFlushCache( GDALDatasetH hDS );
791
792 CPLErr CPL_DLL CPL_STDCALL
793 GDALCreateDatasetMaskBand( GDALDatasetH hDS, int nFlags );
794
795 CPLErr CPL_DLL CPL_STDCALL GDALDatasetCopyWholeRaster(
796 GDALDatasetH hSrcDS, GDALDatasetH hDstDS, CSLConstList papszOptions,
797 GDALProgressFunc pfnProgress, void *pProgressData ) CPL_WARN_UNUSED_RESULT;
798
799 CPLErr CPL_DLL CPL_STDCALL GDALRasterBandCopyWholeRaster(
800 GDALRasterBandH hSrcBand, GDALRasterBandH hDstBand,
801 const char * const * constpapszOptions,
802 GDALProgressFunc pfnProgress, void *pProgressData ) CPL_WARN_UNUSED_RESULT;
803
804 CPLErr CPL_DLL
805 GDALRegenerateOverviews( GDALRasterBandH hSrcBand,
806 int nOverviewCount, GDALRasterBandH *pahOverviewBands,
807 const char *pszResampling,
808 GDALProgressFunc pfnProgress, void *pProgressData );
809
810 int CPL_DLL GDALDatasetGetLayerCount( GDALDatasetH );
811 OGRLayerH CPL_DLL GDALDatasetGetLayer( GDALDatasetH, int );
812 OGRLayerH CPL_DLL GDALDatasetGetLayerByName( GDALDatasetH, const char * );
813 OGRErr CPL_DLL GDALDatasetDeleteLayer( GDALDatasetH, int );
814 OGRLayerH CPL_DLL GDALDatasetCreateLayer( GDALDatasetH, const char *,
815 OGRSpatialReferenceH, OGRwkbGeometryType,
816 CSLConstList );
817 OGRLayerH CPL_DLL GDALDatasetCopyLayer( GDALDatasetH, OGRLayerH, const char *,
818 CSLConstList );
819 void CPL_DLL GDALDatasetResetReading( GDALDatasetH );
820 OGRFeatureH CPL_DLL GDALDatasetGetNextFeature( GDALDatasetH hDS,
821 OGRLayerH* phBelongingLayer,
822 double* pdfProgressPct,
823 GDALProgressFunc pfnProgress,
824 void* pProgressData );
825 int CPL_DLL GDALDatasetTestCapability( GDALDatasetH, const char * );
826 OGRLayerH CPL_DLL GDALDatasetExecuteSQL( GDALDatasetH, const char *,
827 OGRGeometryH, const char * );
828 void CPL_DLL GDALDatasetReleaseResultSet( GDALDatasetH, OGRLayerH );
829 OGRStyleTableH CPL_DLL GDALDatasetGetStyleTable( GDALDatasetH );
830 void CPL_DLL GDALDatasetSetStyleTableDirectly( GDALDatasetH, OGRStyleTableH );
831 void CPL_DLL GDALDatasetSetStyleTable( GDALDatasetH, OGRStyleTableH );
832 OGRErr CPL_DLL GDALDatasetStartTransaction(GDALDatasetH hDS, int bForce);
833 OGRErr CPL_DLL GDALDatasetCommitTransaction(GDALDatasetH hDS);
834 OGRErr CPL_DLL GDALDatasetRollbackTransaction(GDALDatasetH hDS);
835
836 /* ==================================================================== */
837 /* GDALRasterBand ... one band/channel in a dataset. */
838 /* ==================================================================== */
839
844 #define SRCVAL(papoSource, eSrcType, ii) \
845 (eSrcType == GDT_Byte ? \
846 CPL_REINTERPRET_CAST(const GByte*,papoSource)[ii] : \
847 (eSrcType == GDT_Float32 ? \
848 CPL_REINTERPRET_CAST(const float*,papoSource)[ii] : \
849 (eSrcType == GDT_Float64 ? \
850 CPL_REINTERPRET_CAST(const double*,papoSource)[ii] : \
851 (eSrcType == GDT_Int32 ? \
852 CPL_REINTERPRET_CAST(const GInt32*,papoSource)[ii] : \
853 (eSrcType == GDT_UInt16 ? \
854 CPL_REINTERPRET_CAST(const GUInt16*,papoSource)[ii] : \
855 (eSrcType == GDT_Int16 ? \
856 CPL_REINTERPRET_CAST(const GInt16*,papoSource)[ii] : \
857 (eSrcType == GDT_UInt32 ? \
858 CPL_REINTERPRET_CAST(const GUInt32*,papoSource)[ii] : \
859 (eSrcType == GDT_CInt16 ? \
860 CPL_REINTERPRET_CAST(const GInt16*,papoSource)[(ii) * 2] : \
861 (eSrcType == GDT_CInt32 ? \
862 CPL_REINTERPRET_CAST(const GInt32*,papoSource)[(ii) * 2] : \
863 (eSrcType == GDT_CFloat32 ? \
864 CPL_REINTERPRET_CAST(const float*,papoSource)[(ii) * 2] : \
865 (eSrcType == GDT_CFloat64 ? \
866 CPL_REINTERPRET_CAST(const double*,papoSource)[(ii) * 2] : 0)))))))))))
867
870 typedef CPLErr
871 (*GDALDerivedPixelFunc)(void **papoSources, int nSources, void *pData,
872 int nBufXSize, int nBufYSize,
873 GDALDataType eSrcType, GDALDataType eBufType,
874 int nPixelSpace, int nLineSpace);
875
876 GDALDataType CPL_DLL CPL_STDCALL GDALGetRasterDataType( GDALRasterBandH );
877 void CPL_DLL CPL_STDCALL
878 GDALGetBlockSize( GDALRasterBandH, int * pnXSize, int * pnYSize );
879
880 CPLErr CPL_DLL CPL_STDCALL
881 GDALGetActualBlockSize( GDALRasterBandH, int nXBlockOff, int nYBlockOff,
882 int *pnXValid, int *pnYValid );
883
884 CPLErr CPL_DLL CPL_STDCALL GDALRasterAdviseRead( GDALRasterBandH hRB,
885 int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
886 int nBXSize, int nBYSize, GDALDataType eBDataType, CSLConstList papszOptions );
887
888 CPLErr CPL_DLL CPL_STDCALL
889 GDALRasterIO( GDALRasterBandH hRBand, GDALRWFlag eRWFlag,
890 int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
891 void * pBuffer, int nBXSize, int nBYSize,GDALDataType eBDataType,
892 int nPixelSpace, int nLineSpace ) CPL_WARN_UNUSED_RESULT;
893 CPLErr CPL_DLL CPL_STDCALL
894 GDALRasterIOEx( GDALRasterBandH hRBand, GDALRWFlag eRWFlag,
895 int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
896 void * pBuffer, int nBXSize, int nBYSize,GDALDataType eBDataType,
897 GSpacing nPixelSpace, GSpacing nLineSpace,
898 GDALRasterIOExtraArg* psExtraArg ) CPL_WARN_UNUSED_RESULT;
899 CPLErr CPL_DLL CPL_STDCALL GDALReadBlock( GDALRasterBandH, int, int, void * ) CPL_WARN_UNUSED_RESULT;
900 CPLErr CPL_DLL CPL_STDCALL GDALWriteBlock( GDALRasterBandH, int, int, void * ) CPL_WARN_UNUSED_RESULT;
901 int CPL_DLL CPL_STDCALL GDALGetRasterBandXSize( GDALRasterBandH );
902 int CPL_DLL CPL_STDCALL GDALGetRasterBandYSize( GDALRasterBandH );
903 GDALAccess CPL_DLL CPL_STDCALL GDALGetRasterAccess( GDALRasterBandH );
904 int CPL_DLL CPL_STDCALL GDALGetBandNumber( GDALRasterBandH );
905 GDALDatasetH CPL_DLL CPL_STDCALL GDALGetBandDataset( GDALRasterBandH );
906
907 GDALColorInterp CPL_DLL CPL_STDCALL
908 GDALGetRasterColorInterpretation( GDALRasterBandH );
909 CPLErr CPL_DLL CPL_STDCALL
910 GDALSetRasterColorInterpretation( GDALRasterBandH, GDALColorInterp );
911 GDALColorTableH CPL_DLL CPL_STDCALL GDALGetRasterColorTable( GDALRasterBandH );
912 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterColorTable( GDALRasterBandH, GDALColorTableH );
913 int CPL_DLL CPL_STDCALL GDALHasArbitraryOverviews( GDALRasterBandH );
914 int CPL_DLL CPL_STDCALL GDALGetOverviewCount( GDALRasterBandH );
915 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetOverview( GDALRasterBandH, int );
916 double CPL_DLL CPL_STDCALL GDALGetRasterNoDataValue( GDALRasterBandH, int * );
917 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterNoDataValue( GDALRasterBandH, double );
918 CPLErr CPL_DLL CPL_STDCALL GDALDeleteRasterNoDataValue( GDALRasterBandH );
919 char CPL_DLL ** CPL_STDCALL GDALGetRasterCategoryNames( GDALRasterBandH );
920 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterCategoryNames( GDALRasterBandH, CSLConstList );
921 double CPL_DLL CPL_STDCALL GDALGetRasterMinimum( GDALRasterBandH, int *pbSuccess );
922 double CPL_DLL CPL_STDCALL GDALGetRasterMaximum( GDALRasterBandH, int *pbSuccess );
923 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterStatistics(
924 GDALRasterBandH, int bApproxOK, int bForce,
925 double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev );
926 CPLErr CPL_DLL CPL_STDCALL GDALComputeRasterStatistics(
927 GDALRasterBandH, int bApproxOK,
928 double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev,
929 GDALProgressFunc pfnProgress, void *pProgressData );
930 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterStatistics(
931 GDALRasterBandH hBand,
932 double dfMin, double dfMax, double dfMean, double dfStdDev );
933
934 GDALMDArrayH CPL_DLL GDALRasterBandAsMDArray(GDALRasterBandH) CPL_WARN_UNUSED_RESULT;
935
936 const char CPL_DLL * CPL_STDCALL GDALGetRasterUnitType( GDALRasterBandH );
937 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterUnitType( GDALRasterBandH hBand, const char *pszNewValue );
938 double CPL_DLL CPL_STDCALL GDALGetRasterOffset( GDALRasterBandH, int *pbSuccess );
939 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterOffset( GDALRasterBandH hBand, double dfNewOffset);
940 double CPL_DLL CPL_STDCALL GDALGetRasterScale( GDALRasterBandH, int *pbSuccess );
941 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterScale( GDALRasterBandH hBand, double dfNewOffset );
942 void CPL_DLL CPL_STDCALL
943 GDALComputeRasterMinMax( GDALRasterBandH hBand, int bApproxOK,
944 double adfMinMax[2] );
945 CPLErr CPL_DLL CPL_STDCALL GDALFlushRasterCache( GDALRasterBandH hBand );
946 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterHistogram( GDALRasterBandH hBand,
947 double dfMin, double dfMax,
948 int nBuckets, int *panHistogram,
949 int bIncludeOutOfRange, int bApproxOK,
950 GDALProgressFunc pfnProgress,
951 void * pProgressData ) CPL_WARN_DEPRECATED("Use GDALGetRasterHistogramEx() instead");
952 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterHistogramEx( GDALRasterBandH hBand,
953 double dfMin, double dfMax,
954 int nBuckets, GUIntBig *panHistogram,
955 int bIncludeOutOfRange, int bApproxOK,
956 GDALProgressFunc pfnProgress,
957 void * pProgressData );
958 CPLErr CPL_DLL CPL_STDCALL GDALGetDefaultHistogram( GDALRasterBandH hBand,
959 double *pdfMin, double *pdfMax,
960 int *pnBuckets, int **ppanHistogram,
961 int bForce,
962 GDALProgressFunc pfnProgress,
963 void * pProgressData ) CPL_WARN_DEPRECATED("Use GDALGetDefaultHistogramEx() instead");
964 CPLErr CPL_DLL CPL_STDCALL GDALGetDefaultHistogramEx( GDALRasterBandH hBand,
965 double *pdfMin, double *pdfMax,
966 int *pnBuckets, GUIntBig **ppanHistogram,
967 int bForce,
968 GDALProgressFunc pfnProgress,
969 void * pProgressData );
970 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultHistogram( GDALRasterBandH hBand,
971 double dfMin, double dfMax,
972 int nBuckets, int *panHistogram ) CPL_WARN_DEPRECATED("Use GDALSetDefaultHistogramEx() instead");
973 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultHistogramEx( GDALRasterBandH hBand,
974 double dfMin, double dfMax,
975 int nBuckets, GUIntBig *panHistogram );
976 int CPL_DLL CPL_STDCALL
977 GDALGetRandomRasterSample( GDALRasterBandH, int, float * );
978 GDALRasterBandH CPL_DLL CPL_STDCALL
979 GDALGetRasterSampleOverview( GDALRasterBandH, int );
980 GDALRasterBandH CPL_DLL CPL_STDCALL
981 GDALGetRasterSampleOverviewEx( GDALRasterBandH, GUIntBig );
982 CPLErr CPL_DLL CPL_STDCALL GDALFillRaster( GDALRasterBandH hBand,
983 double dfRealValue, double dfImaginaryValue );
984 CPLErr CPL_DLL CPL_STDCALL
985 GDALComputeBandStats( GDALRasterBandH hBand, int nSampleStep,
986 double *pdfMean, double *pdfStdDev,
987 GDALProgressFunc pfnProgress,
988 void *pProgressData );
989 CPLErr CPL_DLL GDALOverviewMagnitudeCorrection( GDALRasterBandH hBaseBand,
990 int nOverviewCount,
991 GDALRasterBandH *pahOverviews,
992 GDALProgressFunc pfnProgress,
993 void *pProgressData );
994
995 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL GDALGetDefaultRAT(
996 GDALRasterBandH hBand );
997 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultRAT( GDALRasterBandH,
998 GDALRasterAttributeTableH );
999 CPLErr CPL_DLL CPL_STDCALL GDALAddDerivedBandPixelFunc( const char *pszName,
1000 GDALDerivedPixelFunc pfnPixelFunc );
1001
1002 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetMaskBand( GDALRasterBandH hBand );
1003 int CPL_DLL CPL_STDCALL GDALGetMaskFlags( GDALRasterBandH hBand );
1004 CPLErr CPL_DLL CPL_STDCALL
1005 GDALCreateMaskBand( GDALRasterBandH hBand, int nFlags );
1006
1008 #define GMF_ALL_VALID 0x01
1009
1011 #define GMF_PER_DATASET 0x02
1012
1014 #define GMF_ALPHA 0x04
1015
1017 #define GMF_NODATA 0x08
1018
1022 #define GDAL_DATA_COVERAGE_STATUS_UNIMPLEMENTED 0x01
1023
1028 #define GDAL_DATA_COVERAGE_STATUS_DATA 0x02
1029
1035 #define GDAL_DATA_COVERAGE_STATUS_EMPTY 0x04
1036
1037 int CPL_DLL CPL_STDCALL GDALGetDataCoverageStatus( GDALRasterBandH hBand,
1038 int nXOff, int nYOff,
1039 int nXSize, int nYSize,
1040 int nMaskFlagStop,
1041 double* pdfDataPct );
1042
1043 /* ==================================================================== */
1044 /* GDALAsyncReader */
1045 /* ==================================================================== */
1046
1047 GDALAsyncStatusType CPL_DLL CPL_STDCALL
1048 GDALARGetNextUpdatedRegion(GDALAsyncReaderH hARIO, double dfTimeout,
1049 int* pnXBufOff, int* pnYBufOff,
1050 int* pnXBufSize, int* pnYBufSize );
1051 int CPL_DLL CPL_STDCALL GDALARLockBuffer(GDALAsyncReaderH hARIO,
1052 double dfTimeout);
1053 void CPL_DLL CPL_STDCALL GDALARUnlockBuffer(GDALAsyncReaderH hARIO);
1054
1055 /* -------------------------------------------------------------------- */
1056 /* Helper functions. */
1057 /* -------------------------------------------------------------------- */
1058 int CPL_DLL CPL_STDCALL GDALGeneralCmdLineProcessor( int nArgc, char ***ppapszArgv,
1059 int nOptions );
1060 void CPL_DLL CPL_STDCALL GDALSwapWords( void *pData, int nWordSize, int nWordCount,
1061 int nWordSkip );
1062 void CPL_DLL CPL_STDCALL GDALSwapWordsEx( void *pData, int nWordSize, size_t nWordCount,
1063 int nWordSkip );
1064
1065 void CPL_DLL CPL_STDCALL
1066 GDALCopyWords( const void * CPL_RESTRICT pSrcData,
1067 GDALDataType eSrcType, int nSrcPixelOffset,
1068 void * CPL_RESTRICT pDstData,
1069 GDALDataType eDstType, int nDstPixelOffset,
1070 int nWordCount );
1071
1072 void CPL_DLL CPL_STDCALL
1073 GDALCopyWords64( const void * CPL_RESTRICT pSrcData,
1074 GDALDataType eSrcType, int nSrcPixelOffset,
1075 void * CPL_RESTRICT pDstData,
1076 GDALDataType eDstType, int nDstPixelOffset,
1077 GPtrDiff_t nWordCount );
1078
1079 void CPL_DLL
1080 GDALCopyBits( const GByte *pabySrcData, int nSrcOffset, int nSrcStep,
1081 GByte *pabyDstData, int nDstOffset, int nDstStep,
1082 int nBitCount, int nStepCount );
1083
1084 int CPL_DLL CPL_STDCALL GDALLoadWorldFile( const char *, double * );
1085 int CPL_DLL CPL_STDCALL GDALReadWorldFile( const char *, const char *,
1086 double * );
1087 int CPL_DLL CPL_STDCALL GDALWriteWorldFile( const char *, const char *,
1088 double * );
1089 int CPL_DLL CPL_STDCALL GDALLoadTabFile( const char *, double *, char **,
1090 int *, GDAL_GCP ** );
1091 int CPL_DLL CPL_STDCALL GDALReadTabFile( const char *, double *, char **,
1092 int *, GDAL_GCP ** );
1093 int CPL_DLL CPL_STDCALL GDALLoadOziMapFile( const char *, double *, char **,
1094 int *, GDAL_GCP ** );
1095 int CPL_DLL CPL_STDCALL GDALReadOziMapFile( const char *, double *,
1096 char **, int *, GDAL_GCP ** );
1097
1098 const char CPL_DLL * CPL_STDCALL GDALDecToDMS( double, const char *, int );
1099 double CPL_DLL CPL_STDCALL GDALPackedDMSToDec( double );
1100 double CPL_DLL CPL_STDCALL GDALDecToPackedDMS( double );
1101
1102 /* Note to developers : please keep this section in sync with ogr_core.h */
1103
1104 #ifndef GDAL_VERSION_INFO_DEFINED
1105 #ifndef DOXYGEN_SKIP
1106 #define GDAL_VERSION_INFO_DEFINED
1107 #endif
1108 const char CPL_DLL * CPL_STDCALL GDALVersionInfo( const char * );
1109 #endif
1110
1111 #ifndef GDAL_CHECK_VERSION
1112
1113 int CPL_DLL CPL_STDCALL GDALCheckVersion( int nVersionMajor, int nVersionMinor,
1114 const char* pszCallingComponentName);
1115
1119 #define GDAL_CHECK_VERSION(pszCallingComponentName) \
1120 GDALCheckVersion(GDAL_VERSION_MAJOR, GDAL_VERSION_MINOR, pszCallingComponentName)
1121
1122 #endif
1123
1126 typedef struct
1127 {
1128 double dfLINE_OFF;
1129 double dfSAMP_OFF;
1130 double dfLAT_OFF;
1131 double dfLONG_OFF;
1132 double dfHEIGHT_OFF;
1134 double dfLINE_SCALE;
1135 double dfSAMP_SCALE;
1136 double dfLAT_SCALE;
1137 double dfLONG_SCALE;
1138 double dfHEIGHT_SCALE;
1140 double adfLINE_NUM_COEFF[20];
1141 double adfLINE_DEN_COEFF[20];
1142 double adfSAMP_NUM_COEFF[20];
1143 double adfSAMP_DEN_COEFF[20];
1145 double dfMIN_LONG;
1146 double dfMIN_LAT;
1147 double dfMAX_LONG;
1148 double dfMAX_LAT;
1149 } GDALRPCInfo;
1150
1151 int CPL_DLL CPL_STDCALL GDALExtractRPCInfo( CSLConstList, GDALRPCInfo * );
1152
1153 /* ==================================================================== */
1154 /* Color tables. */
1155 /* ==================================================================== */
1156
1158 typedef struct
1159 {
1161 short c1;
1162
1164 short c2;
1165
1167 short c3;
1168
1170 short c4;
1171 } GDALColorEntry;
1172
1173 GDALColorTableH CPL_DLL CPL_STDCALL GDALCreateColorTable( GDALPaletteInterp ) CPL_WARN_UNUSED_RESULT;
1174 void CPL_DLL CPL_STDCALL GDALDestroyColorTable( GDALColorTableH );
1175 GDALColorTableH CPL_DLL CPL_STDCALL GDALCloneColorTable( GDALColorTableH );
1176 GDALPaletteInterp CPL_DLL CPL_STDCALL GDALGetPaletteInterpretation( GDALColorTableH );
1177 int CPL_DLL CPL_STDCALL GDALGetColorEntryCount( GDALColorTableH );
1178 const GDALColorEntry CPL_DLL * CPL_STDCALL GDALGetColorEntry( GDALColorTableH, int );
1179 int CPL_DLL CPL_STDCALL GDALGetColorEntryAsRGB( GDALColorTableH, int, GDALColorEntry *);
1180 void CPL_DLL CPL_STDCALL GDALSetColorEntry( GDALColorTableH, int, const GDALColorEntry * );
1181 void CPL_DLL CPL_STDCALL GDALCreateColorRamp( GDALColorTableH hTable,
1182 int nStartIndex, const GDALColorEntry *psStartColor,
1183 int nEndIndex, const GDALColorEntry *psEndColor );
1184
1185 /* ==================================================================== */
1186 /* Raster Attribute Table */
1187 /* ==================================================================== */
1188
1190 typedef enum { GFT_Integer, GFT_Real, GFT_String
1194 } GDALRATFieldType;
1195
1197 typedef enum { GFU_Generic = 0, GFU_PixelCount = 1, GFU_Name = 2, GFU_Min = 3, GFU_Max = 4, GFU_MinMax = 5, GFU_Red = 6, GFU_Green = 7, GFU_Blue = 8, GFU_Alpha = 9, GFU_RedMin = 10, GFU_GreenMin = 11, GFU_BlueMin = 12, GFU_AlphaMin = 13, GFU_RedMax = 14, GFU_GreenMax = 15, GFU_BlueMax = 16, GFU_AlphaMax = 17, GFU_MaxCount
1217 } GDALRATFieldUsage;
1218
1222 typedef enum { GRTT_THEMATIC, GRTT_ATHEMATIC
1225 } GDALRATTableType;
1226
1227 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL
1228 GDALCreateRasterAttributeTable(void) CPL_WARN_UNUSED_RESULT;
1229
1230 void CPL_DLL CPL_STDCALL GDALDestroyRasterAttributeTable(
1231 GDALRasterAttributeTableH );
1232
1233 int CPL_DLL CPL_STDCALL GDALRATGetColumnCount( GDALRasterAttributeTableH );
1234
1235 const char CPL_DLL * CPL_STDCALL GDALRATGetNameOfCol(
1236 GDALRasterAttributeTableH, int );
1237 GDALRATFieldUsage CPL_DLL CPL_STDCALL GDALRATGetUsageOfCol(
1238 GDALRasterAttributeTableH, int );
1239 GDALRATFieldType CPL_DLL CPL_STDCALL GDALRATGetTypeOfCol(
1240 GDALRasterAttributeTableH, int );
1241
1242 int CPL_DLL CPL_STDCALL GDALRATGetColOfUsage( GDALRasterAttributeTableH,
1243 GDALRATFieldUsage );
1244 int CPL_DLL CPL_STDCALL GDALRATGetRowCount( GDALRasterAttributeTableH );
1245
1246 const char CPL_DLL * CPL_STDCALL GDALRATGetValueAsString(
1247 GDALRasterAttributeTableH, int, int);
1248 int CPL_DLL CPL_STDCALL GDALRATGetValueAsInt(
1249 GDALRasterAttributeTableH, int, int);
1250 double CPL_DLL CPL_STDCALL GDALRATGetValueAsDouble(
1251 GDALRasterAttributeTableH, int, int);
1252
1253 void CPL_DLL CPL_STDCALL GDALRATSetValueAsString( GDALRasterAttributeTableH, int, int,
1254 const char * );
1255 void CPL_DLL CPL_STDCALL GDALRATSetValueAsInt( GDALRasterAttributeTableH, int, int,
1256 int );
1257 void CPL_DLL CPL_STDCALL GDALRATSetValueAsDouble( GDALRasterAttributeTableH, int, int,
1258 double );
1259
1260 int CPL_DLL CPL_STDCALL GDALRATChangesAreWrittenToFile( GDALRasterAttributeTableH hRAT );
1261
1262 CPLErr CPL_DLL CPL_STDCALL GDALRATValuesIOAsDouble( GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag,
1263 int iField, int iStartRow, int iLength, double *pdfData );
1264 CPLErr CPL_DLL CPL_STDCALL GDALRATValuesIOAsInteger( GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag,
1265 int iField, int iStartRow, int iLength, int *pnData);
1266 CPLErr CPL_DLL CPL_STDCALL GDALRATValuesIOAsString( GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag,
1267 int iField, int iStartRow, int iLength, CSLConstList papszStrList);
1268
1269 void CPL_DLL CPL_STDCALL GDALRATSetRowCount( GDALRasterAttributeTableH,
1270 int );
1271 CPLErr CPL_DLL CPL_STDCALL GDALRATCreateColumn( GDALRasterAttributeTableH,
1272 const char *,
1273 GDALRATFieldType,
1274 GDALRATFieldUsage );
1275 CPLErr CPL_DLL CPL_STDCALL GDALRATSetLinearBinning( GDALRasterAttributeTableH,
1276 double, double );
1277 int CPL_DLL CPL_STDCALL GDALRATGetLinearBinning( GDALRasterAttributeTableH,
1278 double *, double * );
1279 CPLErr CPL_DLL CPL_STDCALL GDALRATSetTableType( GDALRasterAttributeTableH hRAT,
1280 const GDALRATTableType eInTableType );
1281 GDALRATTableType CPL_DLL CPL_STDCALL GDALRATGetTableType( GDALRasterAttributeTableH hRAT);
1282 CPLErr CPL_DLL CPL_STDCALL GDALRATInitializeFromColorTable(
1283 GDALRasterAttributeTableH, GDALColorTableH );
1284 GDALColorTableH CPL_DLL CPL_STDCALL GDALRATTranslateToColorTable(
1285 GDALRasterAttributeTableH, int nEntryCount );
1286 void CPL_DLL CPL_STDCALL GDALRATDumpReadable( GDALRasterAttributeTableH,
1287 FILE * );
1288 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL
1289 GDALRATClone( const GDALRasterAttributeTableH );
1290
1291 void CPL_DLL* CPL_STDCALL
1292 GDALRATSerializeJSON( GDALRasterAttributeTableH ) CPL_WARN_UNUSED_RESULT;
1293
1294 int CPL_DLL CPL_STDCALL GDALRATGetRowOfValue( GDALRasterAttributeTableH, double );
1295 void CPL_DLL CPL_STDCALL GDALRATRemoveStatistics( GDALRasterAttributeTableH );
1296
1297 /* ==================================================================== */
1298 /* GDAL Cache Management */
1299 /* ==================================================================== */
1300
1301 void CPL_DLL CPL_STDCALL GDALSetCacheMax( int nBytes );
1302 int CPL_DLL CPL_STDCALL GDALGetCacheMax(void);
1303 int CPL_DLL CPL_STDCALL GDALGetCacheUsed(void);
1304 void CPL_DLL CPL_STDCALL GDALSetCacheMax64( GIntBig nBytes );
1305 GIntBig CPL_DLL CPL_STDCALL GDALGetCacheMax64(void);
1306 GIntBig CPL_DLL CPL_STDCALL GDALGetCacheUsed64(void);
1307
1308 int CPL_DLL CPL_STDCALL GDALFlushCacheBlock(void);
1309
1310 /* ==================================================================== */
1311 /* GDAL virtual memory */
1312 /* ==================================================================== */
1313
1314 CPLVirtualMem CPL_DLL* GDALDatasetGetVirtualMem( GDALDatasetH hDS,
1315 GDALRWFlag eRWFlag,
1316 int nXOff, int nYOff,
1317 int nXSize, int nYSize,
1318 int nBufXSize, int nBufYSize,
1319 GDALDataType eBufType,
1320 int nBandCount, int* panBandMap,
1321 int nPixelSpace,
1322 GIntBig nLineSpace,
1323 GIntBig nBandSpace,
1324 size_t nCacheSize,
1325 size_t nPageSizeHint,
1326 int bSingleThreadUsage,
1327 CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1328
1329 CPLVirtualMem CPL_DLL* GDALRasterBandGetVirtualMem( GDALRasterBandH hBand,
1330 GDALRWFlag eRWFlag,
1331 int nXOff, int nYOff,
1332 int nXSize, int nYSize,
1333 int nBufXSize, int nBufYSize,
1334 GDALDataType eBufType,
1335 int nPixelSpace,
1336 GIntBig nLineSpace,
1337 size_t nCacheSize,
1338 size_t nPageSizeHint,
1339 int bSingleThreadUsage,
1340 CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1341
1342 CPLVirtualMem CPL_DLL* GDALGetVirtualMemAuto( GDALRasterBandH hBand,
1343 GDALRWFlag eRWFlag,
1344 int *pnPixelSpace,
1345 GIntBig *pnLineSpace,
1346 CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1347
1349 typedef enum
1350 {
1352 GTO_TIP,
1354 GTO_BIT,
1356 GTO_BSQ
1357 } GDALTileOrganization;
1358
1359 CPLVirtualMem CPL_DLL* GDALDatasetGetTiledVirtualMem( GDALDatasetH hDS,
1360 GDALRWFlag eRWFlag,
1361 int nXOff, int nYOff,
1362 int nXSize, int nYSize,
1363 int nTileXSize, int nTileYSize,
1364 GDALDataType eBufType,
1365 int nBandCount, int* panBandMap,
1366 GDALTileOrganization eTileOrganization,
1367 size_t nCacheSize,
1368 int bSingleThreadUsage,
1369 CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1370
1371 CPLVirtualMem CPL_DLL* GDALRasterBandGetTiledVirtualMem( GDALRasterBandH hBand,
1372 GDALRWFlag eRWFlag,
1373 int nXOff, int nYOff,
1374 int nXSize, int nYSize,
1375 int nTileXSize, int nTileYSize,
1376 GDALDataType eBufType,
1377 size_t nCacheSize,
1378 int bSingleThreadUsage,
1379 CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1380
1381 /* ==================================================================== */
1382 /* VRTPansharpenedDataset class. */
1383 /* ==================================================================== */
1384
1385 GDALDatasetH CPL_DLL GDALCreatePansharpenedVRT( const char* pszXML,
1386 GDALRasterBandH hPanchroBand,
1387 int nInputSpectralBands,
1388 GDALRasterBandH* pahInputSpectralBands ) CPL_WARN_UNUSED_RESULT;
1389
1390 /* =================================================================== */
1391 /* Misc API */
1392 /* ==================================================================== */
1393
1394 CPLXMLNode CPL_DLL* GDALGetJPEG2000Structure(const char* pszFilename,
1395 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1396
1397 /* ==================================================================== */
1398 /* Multidimensionnal API_api */
1399 /* ==================================================================== */
1400
1401 GDALDatasetH CPL_DLL GDALCreateMultiDimensional( GDALDriverH hDriver,
1402 const char * pszName,
1403 CSLConstList papszRootGroupOptions,
1404 CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1405
1406 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreate(GDALDataType eType) CPL_WARN_UNUSED_RESULT;
1407 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreateString(size_t nMaxStringLength) CPL_WARN_UNUSED_RESULT;
1408 GDALExtendedDataTypeH CPL_DLL GDALExtendedDataTypeCreateCompound(
1409 const char* pszName, size_t nTotalSize,
1410 size_t nComponents, const GDALEDTComponentH* comps) CPL_WARN_UNUSED_RESULT;
1411 void CPL_DLL GDALExtendedDataTypeRelease(GDALExtendedDataTypeH hEDT);
1412 const char CPL_DLL* GDALExtendedDataTypeGetName(GDALExtendedDataTypeH hEDT);
1413 GDALExtendedDataTypeClass CPL_DLL GDALExtendedDataTypeGetClass(GDALExtendedDataTypeH hEDT);
1414 GDALDataType CPL_DLL GDALExtendedDataTypeGetNumericDataType(GDALExtendedDataTypeH hEDT);
1415 size_t CPL_DLL GDALExtendedDataTypeGetSize(GDALExtendedDataTypeH hEDT);
1416 size_t CPL_DLL GDALExtendedDataTypeGetMaxStringLength(GDALExtendedDataTypeH hEDT);
1417 GDALEDTComponentH CPL_DLL *GDALExtendedDataTypeGetComponents(GDALExtendedDataTypeH hEDT, size_t* pnCount) CPL_WARN_UNUSED_RESULT;
1418 void CPL_DLL GDALExtendedDataTypeFreeComponents(GDALEDTComponentH* components, size_t nCount);
1419 int CPL_DLL GDALExtendedDataTypeCanConvertTo(GDALExtendedDataTypeH hSourceEDT,
1420 GDALExtendedDataTypeH hTargetEDT);
1421 int CPL_DLL GDALExtendedDataTypeEquals(GDALExtendedDataTypeH hFirstEDT,
1422 GDALExtendedDataTypeH hSecondEDT);
1423
1424 GDALEDTComponentH CPL_DLL GDALEDTComponentCreate(const char* pszName, size_t nOffset, GDALExtendedDataTypeH hType) CPL_WARN_UNUSED_RESULT;
1425 void CPL_DLL GDALEDTComponentRelease(GDALEDTComponentH hComp);
1426 const char CPL_DLL* GDALEDTComponentGetName(GDALEDTComponentH hComp);
1427 size_t CPL_DLL GDALEDTComponentGetOffset(GDALEDTComponentH hComp);
1428 GDALExtendedDataTypeH CPL_DLL GDALEDTComponentGetType(GDALEDTComponentH hComp) CPL_WARN_UNUSED_RESULT;
1429
1430 GDALGroupH CPL_DLL GDALDatasetGetRootGroup(GDALDatasetH hDS) CPL_WARN_UNUSED_RESULT;
1431 void CPL_DLL GDALGroupRelease(GDALGroupH hGroup);
1432 const char CPL_DLL *GDALGroupGetName(GDALGroupH hGroup);
1433 const char CPL_DLL *GDALGroupGetFullName(GDALGroupH hGroup);
1434 char CPL_DLL **GDALGroupGetMDArrayNames(GDALGroupH hGroup, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1435 GDALMDArrayH CPL_DLL GDALGroupOpenMDArray(GDALGroupH hGroup, const char* pszMDArrayName, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1436 char CPL_DLL **GDALGroupGetGroupNames(GDALGroupH hGroup, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1437 GDALGroupH CPL_DLL GDALGroupOpenGroup(GDALGroupH hGroup, const char* pszSubGroupName, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1438 GDALDimensionH CPL_DLL *GDALGroupGetDimensions(GDALGroupH hGroup, size_t* pnCount, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1439 GDALAttributeH CPL_DLL GDALGroupGetAttribute(GDALGroupH hGroup, const char* pszName) CPL_WARN_UNUSED_RESULT;
1440 GDALAttributeH CPL_DLL *GDALGroupGetAttributes(GDALGroupH hGroup, size_t* pnCount, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1441 CSLConstList CPL_DLL GDALGroupGetStructuralInfo(GDALGroupH hGroup);
1442 GDALGroupH CPL_DLL GDALGroupCreateGroup(GDALGroupH hGroup,
1443 const char* pszSubGroupName,
1444 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1445 GDALDimensionH CPL_DLL GDALGroupCreateDimension(GDALGroupH hGroup,
1446 const char* pszName,
1447 const char* pszType,
1448 const char* pszDirection,
1449 GUInt64 nSize,
1450 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1451 GDALMDArrayH CPL_DLL GDALGroupCreateMDArray(GDALGroupH hGroup,
1452 const char* pszName,
1453 size_t nDimensions,
1454 GDALDimensionH* pahDimensions,
1455 GDALExtendedDataTypeH hEDT,
1456 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1457 GDALAttributeH CPL_DLL GDALGroupCreateAttribute(GDALGroupH hGroup,
1458 const char* pszName,
1459 size_t nDimensions,
1460 const GUInt64* panDimensions,
1461 GDALExtendedDataTypeH hEDT,
1462 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1463
1464 void CPL_DLL GDALMDArrayRelease(GDALMDArrayH hMDArray);
1465 const char CPL_DLL* GDALMDArrayGetName(GDALMDArrayH hArray);
1466 const char CPL_DLL* GDALMDArrayGetFullName(GDALMDArrayH hArray);
1467 GUInt64 CPL_DLL GDALMDArrayGetTotalElementsCount(GDALMDArrayH hArray);
1468 size_t CPL_DLL GDALMDArrayGetDimensionCount(GDALMDArrayH hArray);
1469 GDALDimensionH CPL_DLL* GDALMDArrayGetDimensions(GDALMDArrayH hArray, size_t *pnCount) CPL_WARN_UNUSED_RESULT;
1470 GDALExtendedDataTypeH CPL_DLL GDALMDArrayGetDataType(GDALMDArrayH hArray) CPL_WARN_UNUSED_RESULT;
1471 int CPL_DLL GDALMDArrayRead(GDALMDArrayH hArray,
1472 const GUInt64* arrayStartIdx,
1473 const size_t* count,
1474 const GInt64* arrayStep,
1475 const GPtrDiff_t* bufferStride,
1476 GDALExtendedDataTypeH bufferDatatype,
1477 void* pDstBuffer,
1478 const void* pDstBufferAllocStart,
1479 size_t nDstBufferllocSize);
1480 int CPL_DLL GDALMDArrayWrite(GDALMDArrayH hArray,
1481 const GUInt64* arrayStartIdx,
1482 const size_t* count,
1483 const GInt64* arrayStep,
1484 const GPtrDiff_t* bufferStride,
1485 GDALExtendedDataTypeH bufferDatatype,
1486 const void* pSrcBuffer,
1487 const void* psrcBufferAllocStart,
1488 size_t nSrcBufferllocSize);
1489 GDALAttributeH CPL_DLL GDALMDArrayGetAttribute(GDALMDArrayH hArray, const char* pszName) CPL_WARN_UNUSED_RESULT;
1490 GDALAttributeH CPL_DLL *GDALMDArrayGetAttributes(GDALMDArrayH hArray, size_t* pnCount, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1491 GDALAttributeH CPL_DLL GDALMDArrayCreateAttribute(GDALMDArrayH hArray,
1492 const char* pszName,
1493 size_t nDimensions,
1494 const GUInt64* panDimensions,
1495 GDALExtendedDataTypeH hEDT,
1496 CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1497 const void CPL_DLL *GDALMDArrayGetRawNoDataValue(GDALMDArrayH hArray);
1498 double CPL_DLL GDALMDArrayGetNoDataValueAsDouble(GDALMDArrayH hArray,
1499 int* pbHasNoDataValue);
1500 int CPL_DLL GDALMDArraySetRawNoDataValue(GDALMDArrayH hArray, const void*);
1501 int CPL_DLL GDALMDArraySetNoDataValueAsDouble(GDALMDArrayH hArray,
1502 double dfNoDataValue);
1503 int CPL_DLL GDALMDArraySetScale(GDALMDArrayH hArray, double dfScale);
1504 double CPL_DLL GDALMDArrayGetScale(GDALMDArrayH hArray, int *pbHasValue);
1505 int CPL_DLL GDALMDArraySetOffset(GDALMDArrayH hArray, double dfOffset);
1506 double CPL_DLL GDALMDArrayGetOffset(GDALMDArrayH hArray, int *pbHasValue);
1507 GUInt64 CPL_DLL *GDALMDArrayGetBlockSize(GDALMDArrayH hArray, size_t *pnCount);
1508 int CPL_DLL GDALMDArraySetUnit(GDALMDArrayH hArray, const char*);
1509 const char CPL_DLL *GDALMDArrayGetUnit(GDALMDArrayH hArray);
1510 int CPL_DLL GDALMDArraySetSpatialRef( GDALMDArrayH, OGRSpatialReferenceH );
1511 OGRSpatialReferenceH CPL_DLL GDALMDArrayGetSpatialRef(GDALMDArrayH hArray);
1512 size_t CPL_DLL *GDALMDArrayGetProcessingChunkSize(GDALMDArrayH hArray, size_t *pnCount,
1513 size_t nMaxChunkMemory);
1514 CSLConstList CPL_DLL GDALMDArrayGetStructuralInfo(GDALMDArrayH hArray);
1515 GDALMDArrayH CPL_DLL GDALMDArrayGetView(GDALMDArrayH hArray, const char* pszViewExpr);
1516 GDALMDArrayH CPL_DLL GDALMDArrayTranspose(GDALMDArrayH hArray,
1517 size_t nNewAxisCount,
1518 const int *panMapNewAxisToOldAxis);
1519 GDALMDArrayH CPL_DLL GDALMDArrayGetUnscaled(GDALMDArrayH hArray);
1520 GDALMDArrayH CPL_DLL GDALMDArrayGetMask(GDALMDArrayH hArray, CSLConstList papszOptions);
1521 GDALDatasetH CPL_DLL GDALMDArrayAsClassicDataset(GDALMDArrayH hArray,
1522 size_t iXDim, size_t iYDim);
1523
1524 void CPL_DLL GDALAttributeRelease(GDALAttributeH hAttr);
1525 void CPL_DLL GDALReleaseAttributes(GDALAttributeH* attributes, size_t nCount);
1526 const char CPL_DLL* GDALAttributeGetName(GDALAttributeH hAttr);
1527 const char CPL_DLL* GDALAttributeGetFullName(GDALAttributeH hAttr);
1528 GUInt64 CPL_DLL GDALAttributeGetTotalElementsCount(GDALAttributeH hAttr);
1529 size_t CPL_DLL GDALAttributeGetDimensionCount(GDALAttributeH hAttr);
1530 GUInt64 CPL_DLL* GDALAttributeGetDimensionsSize(GDALAttributeH hAttr, size_t *pnCount) CPL_WARN_UNUSED_RESULT;
1531 GDALExtendedDataTypeH CPL_DLL GDALAttributeGetDataType(GDALAttributeH hAttr) CPL_WARN_UNUSED_RESULT;
1532 GByte CPL_DLL *GDALAttributeReadAsRaw(GDALAttributeH hAttr, size_t *pnSize) CPL_WARN_UNUSED_RESULT;
1533 void CPL_DLL GDALAttributeFreeRawResult(GDALAttributeH hAttr, GByte* raw, size_t nSize);
1534 const char CPL_DLL* GDALAttributeReadAsString(GDALAttributeH hAttr);
1535 int CPL_DLL GDALAttributeReadAsInt(GDALAttributeH hAttr);
1536 double CPL_DLL GDALAttributeReadAsDouble(GDALAttributeH hAttr);
1537 char CPL_DLL **GDALAttributeReadAsStringArray(GDALAttributeH hAttr) CPL_WARN_UNUSED_RESULT;
1538 int CPL_DLL *GDALAttributeReadAsIntArray(GDALAttributeH hAttr, size_t* pnCount) CPL_WARN_UNUSED_RESULT;
1539 double CPL_DLL *GDALAttributeReadAsDoubleArray(GDALAttributeH hAttr, size_t* pnCount) CPL_WARN_UNUSED_RESULT;
1540 int CPL_DLL GDALAttributeWriteRaw(GDALAttributeH hAttr, const void*, size_t);
1541 int CPL_DLL GDALAttributeWriteString(GDALAttributeH hAttr, const char*);
1542 int CPL_DLL GDALAttributeWriteStringArray(GDALAttributeH hAttr, CSLConstList);
1543 int CPL_DLL GDALAttributeWriteInt(GDALAttributeH hAttr, int);
1544 int CPL_DLL GDALAttributeWriteDouble(GDALAttributeH hAttr, double);
1545 int CPL_DLL GDALAttributeWriteDoubleArray(GDALAttributeH hAttr, const double*, size_t);
1546
1547 void CPL_DLL GDALDimensionRelease(GDALDimensionH hDim);
1548 void CPL_DLL GDALReleaseDimensions(GDALDimensionH* dims, size_t nCount);
1549 const char CPL_DLL *GDALDimensionGetName(GDALDimensionH hDim);
1550 const char CPL_DLL *GDALDimensionGetFullName(GDALDimensionH hDim);
1551 const char CPL_DLL *GDALDimensionGetType(GDALDimensionH hDim);
1552 const char CPL_DLL *GDALDimensionGetDirection(GDALDimensionH hDim);
1553 GUInt64 CPL_DLL GDALDimensionGetSize(GDALDimensionH hDim);
1554 GDALMDArrayH CPL_DLL GDALDimensionGetIndexingVariable(GDALDimensionH hDim) CPL_WARN_UNUSED_RESULT;
1555 int CPL_DLL GDALDimensionSetIndexingVariable(GDALDimensionH hDim, GDALMDArrayH hArray);
1556
1557 CPL_C_END
1558
1559 #endif /* ndef GDAL_H_INCLUDED */
GDALRATGetValueAsDouble
double GDALRATGetValueAsDouble(GDALRasterAttributeTableH, int, int)
Fetch field value as a double.
Definition: gdal_rat.cpp:1652
GDALAttributeReadAsString
const char * GDALAttributeReadAsString(GDALAttributeH hAttr)
Return the value of an attribute as a string.
Definition: gdalmultidim.cpp:7057
GDALMDArraySetRawNoDataValue
int GDALMDArraySetRawNoDataValue(GDALMDArrayH hArray, const void *)
Set the nodata value as a "raw" value.
Definition: gdalmultidim.cpp:6490
GDALRATGetColOfUsage
int GDALRATGetColOfUsage(GDALRasterAttributeTableH, GDALRATFieldUsage)
Fetch column index for given usage.
Definition: gdal_rat.cpp:1438
GDALGroupCreateAttribute
GDALAttributeH GDALGroupCreateAttribute(GDALGroupH hGroup, const char *pszName, size_t nDimensions, const GUInt64 *panDimensions, GDALExtendedDataTypeH hEDT, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Create a attribute within a group.
Definition: gdalmultidim.cpp:6098
GDALGetRasterStatistics
CPLErr GDALGetRasterStatistics(GDALRasterBandH, int bApproxOK, int bForce, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev)
Fetch image statistics.
Definition: gdalrasterband.cpp:3837
GCI_SaturationBand
Definition: gdal.h:200
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:3098
OGRLayerH
void * OGRLayerH
Opaque type for a layer (OGRLayer)
Definition: ogr_api.h:521
GDALOpenEx
GDALDatasetH GDALOpenEx(const char *pszFilename, unsigned int nOpenFlags, const char *const *papszAllowedDrivers, const char *const *papszOpenOptions, const char *const *papszSiblingFiles) CPL_WARN_UNUSED_RESULT
Open a raster or vector file as a GDALDataset.
Definition: gdaldataset.cpp:3217
GDALMDArraySetOffset
int GDALMDArraySetOffset(GDALMDArrayH hArray, double dfOffset)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:6546
GA_Update
Definition: gdal.h:115
GDALAttributeFreeRawResult
void GDALAttributeFreeRawResult(GDALAttributeH hAttr, GByte *raw, size_t nSize)
Free the return of GDALAttributeAsRaw()
Definition: gdalmultidim.cpp:7021
GDALAttributeGetName
const char * GDALAttributeGetName(GDALAttributeH hAttr)
Return the name of the attribute.
Definition: gdalmultidim.cpp:6892
GDALMDArrayGetMask
GDALMDArrayH GDALMDArrayGetMask(GDALMDArrayH hArray, CSLConstList papszOptions)
Return an array that is a mask for the current array.
Definition: gdalmultidim.cpp:6774
GDALSetProjection
CPLErr GDALSetProjection(GDALDatasetH, const char *)
Set the projection reference string for this dataset.
Definition: gdaldataset.cpp:1118
GDALRPCInfo::dfMIN_LAT
double dfMIN_LAT
Definition: gdal.h:1146
GFU_Red
Definition: gdal.h:1204
GDALGetColorInterpretationByName
GDALColorInterp GDALGetColorInterpretationByName(const char *pszName)
Get color interpretation by symbolic name.
Definition: gdal_misc.cpp:983
GDALReadBlock
CPLErr GDALReadBlock(GDALRasterBandH, int, int, void *) CPL_WARN_UNUSED_RESULT
Read a block of image data efficiently.
Definition: gdalrasterband.cpp:566
GDALDataType
GDALDataType
Definition: gdal.h:60
GDALDimensionH
struct GDALDimensionHS * GDALDimensionH
Opaque type for C++ GDALDimension.
Definition: gdal.h:298
GDALComputeRasterStatistics
CPLErr GDALComputeRasterStatistics(GDALRasterBandH, int bApproxOK, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GDALProgressFunc pfnProgress, void *pProgressData)
Compute image statistics.
Definition: gdalrasterband.cpp:5360
GFU_Generic
Definition: gdal.h:1198
GDALGetOverviewCount
int GDALGetOverviewCount(GDALRasterBandH)
Return the number of overview layers available.
Definition: gdalrasterband.cpp:2203
GDT_CInt32
Definition: gdal.h:72
GDAL_GCP::pszInfo
char * pszInfo
Informational message or "".
Definition: gdal.h:666
GFU_MaxCount
Definition: gdal.h:1216
GDALWriteBlock
CPLErr GDALWriteBlock(GDALRasterBandH, int, int, void *) CPL_WARN_UNUSED_RESULT
Write a block of image data efficiently.
Definition: gdalrasterband.cpp:722
CPLXMLNode
Document node structure.
Definition: cpl_minixml.h:69
GDALExtendedDataTypeCanConvertTo
int GDALExtendedDataTypeCanConvertTo(GDALExtendedDataTypeH hSourceEDT, GDALExtendedDataTypeH hTargetEDT)
Return whether this data type can be converted to the other one.
Definition: gdalmultidim.cpp:5589
GDALDimensionGetType
const char * GDALDimensionGetType(GDALDimensionH hDim)
Return dimension type.
Definition: gdalmultidim.cpp:7362
GFU_Blue
Definition: gdal.h:1206
GDALDatasetReleaseResultSet
void GDALDatasetReleaseResultSet(GDALDatasetH, OGRLayerH)
Release results of ExecuteSQL().
Definition: gdaldataset.cpp:4189
GDALExtendedDataTypeH
struct GDALExtendedDataTypeHS * GDALExtendedDataTypeH
Opaque type for C++ GDALExtendedDataType.
Definition: gdal.h:288
GDALRATValuesIOAsString
CPLErr GDALRATValuesIOAsString(GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag, int iField, int iStartRow, int iLength, CSLConstList papszStrList)
Read or Write a block of strings to/from the Attribute Table.
Definition: gdal_rat.cpp:288
cpl_minixml.h
Definitions for CPL mini XML Parser/Serializer.
GDAL_GCP::dfGCPPixel
double dfGCPPixel
Pixel (x) location of GCP on raster.
Definition: gdal.h:669
GDALPackedDMSToDec
double GDALPackedDMSToDec(double)
Convert a packed DMS value (DDDMMMSSS.SS) into decimal degrees.
Definition: gdal_misc.cpp:2349
GFU_BlueMin
Definition: gdal.h:1210
GTO_BSQ
Definition: gdal.h:1356
GDALMDArrayGetDataType
GDALExtendedDataTypeH GDALMDArrayGetDataType(GDALMDArrayH hArray) CPL_WARN_UNUSED_RESULT
Return the data type.
Definition: gdalmultidim.cpp:6248
GDALGroupCreateMDArray
GDALMDArrayH GDALGroupCreateMDArray(GDALGroupH hGroup, const char *pszName, size_t nDimensions, GDALDimensionH *pahDimensions, GDALExtendedDataTypeH hEDT, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Create a multidimensional array within a group.
Definition: gdalmultidim.cpp:6065
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:2805
GDALDataTypeUnion
GDALDataType GDALDataTypeUnion(GDALDataType, GDALDataType)
Return the smallest data type that can fully express both input data types.
Definition: gdal_misc.cpp:130
GDALEDTComponentCreate
GDALEDTComponentH GDALEDTComponentCreate(const char *pszName, size_t nOffset, GDALExtendedDataTypeH hType) CPL_WARN_UNUSED_RESULT
Create a new GDALEDTComponent.
Definition: gdalmultidim.cpp:5677
GFT_Real
Definition: gdal.h:1192
GCI_LightnessBand
Definition: gdal.h:201
GDALGroupCreateGroup
GDALGroupH GDALGroupCreateGroup(GDALGroupH hGroup, const char *pszSubGroupName, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Create a sub-group within a group.
Definition: gdalmultidim.cpp:6013
GDT_Byte
Definition: gdal.h:62
GDALCreateDatasetMaskBand
CPLErr GDALCreateDatasetMaskBand(GDALDatasetH hDS, int nFlags)
Adds a mask band to the dataset.
Definition: gdaldataset.cpp:3064
GDALCreateCopy
GDALDatasetH GDALCreateCopy(GDALDriverH, const char *, GDALDatasetH, int, CSLConstList, GDALProgressFunc, void *) CPL_WARN_UNUSED_RESULT
Create a copy of a dataset.
Definition: gdaldriver.cpp:1135
GEDTC_COMPOUND
Compound data type.
Definition: gdal.h:284
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:7510
GPI_RGB
Definition: gdal.h:219
GDALDecToDMS
const char * GDALDecToDMS(double, const char *, int)
Translate a decimal degrees value to a DMS string with hemisphere.
Definition: gdal_misc.cpp:2332
GDALGetDriver
GDALDriverH GDALGetDriver(int)
Fetch driver by index.
Definition: gdaldrivermanager.cpp:398
GDALSetRasterOffset
CPLErr GDALSetRasterOffset(GDALRasterBandH hBand, double dfNewOffset)
Set scaling offset.
Definition: gdalrasterband.cpp:2494
GDALAdjustValueToDataType
double GDALAdjustValueToDataType(GDALDataType eDT, double dfValue, int *pbClamped, int *pbRounded)
Adjust a value to the output data type.
Definition: gdal_misc.cpp:685
GDALGetColorEntryAsRGB
int GDALGetColorEntryAsRGB(GDALColorTableH, int, GDALColorEntry *)
Fetch a table entry in RGB format.
Definition: gdalcolortable.cpp:184
GDALSetDefaultHistogramEx
CPLErr GDALSetDefaultHistogramEx(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, GUIntBig *panHistogram)
Set default histogram.
Definition: gdalrasterband.cpp:5794
GDALMDArraySetScale
int GDALMDArraySetScale(GDALMDArrayH hArray, double dfScale)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:6528
GDALCloneColorTable
GDALColorTableH GDALCloneColorTable(GDALColorTableH)
Make a copy of a color table.
Definition: gdalcolortable.cpp:280
cpl_port.h
Core portability definitions for CPL.
GDALGetColorEntry
const GDALColorEntry * GDALGetColorEntry(GDALColorTableH, int)
Fetch a color entry from table.
Definition: gdalcolortable.cpp:135
GDALAsyncReaderH
void * GDALAsyncReaderH
Opaque type used for the C bindings of the C++ GDALAsyncReader class.
Definition: gdal.h:270
CPL_C_START
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:337
GDALRasterIOExtraArg::bFloatingPointWindowValidity
int bFloatingPointWindowValidity
Definition: gdal.h:164
GDALDimensionGetName
const char * GDALDimensionGetName(GDALDimensionH hDim)
Return dimension name.
Definition: gdalmultidim.cpp:7334
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:1761
GDALDatasetCopyWholeRaster
CPLErr GDALDatasetCopyWholeRaster(GDALDatasetH hSrcDS, GDALDatasetH hDstDS, CSLConstList papszOptions, GDALProgressFunc pfnProgress, void *pProgressData) CPL_WARN_UNUSED_RESULT
Copy all dataset raster data.
Definition: rasterio.cpp:4393
GDALRATGetColumnCount
int GDALRATGetColumnCount(GDALRasterAttributeTableH)
Fetch table column count.
Definition: gdal_rat.cpp:1276
GCI_YCbCr_YBand
Definition: gdal.h:206
GDALRATTranslateToColorTable
GDALColorTableH GDALRATTranslateToColorTable(GDALRasterAttributeTableH, int nEntryCount)
Translate to a color table.
Definition: gdal_rat.cpp:1107
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) CPL_WARN_UNUSED_RESULT
Sets up an asynchronous data request.
Definition: gdaldataset.cpp:3900
GDALGetColorEntryCount
int GDALGetColorEntryCount(GDALColorTableH)
Get number of color entries in table.
Definition: gdalcolortable.cpp:317
GDALAttributeWriteInt
int GDALAttributeWriteInt(GDALAttributeH hAttr, int)
Write an attribute from a integer value.
Definition: gdalmultidim.cpp:7237
GDALIdentifyDriverEx
GDALDriverH GDALIdentifyDriverEx(const char *pszFilename, unsigned int nIdentifyFlags, const char *const *papszAllowedDrivers, const char *const *papszFileList)
Identify the driver that can open a raster file.
Definition: gdaldriver.cpp:2191
GDALAttributeReadAsRaw
GByte * GDALAttributeReadAsRaw(GDALAttributeH hAttr, size_t *pnSize) CPL_WARN_UNUSED_RESULT
Return the raw value of an attribute.
Definition: gdalmultidim.cpp:7000
GDALAllRegister
void GDALAllRegister(void)
Register all known configured GDAL drivers.
Definition: gdalallregister.cpp:62
GCI_AlphaBand
Definition: gdal.h:198
GDALGCPsToGeoTransform
int GDALGCPsToGeoTransform(int nGCPCount, const GDAL_GCP *pasGCPs, double *padfGeoTransform, int bApproxOK) CPL_WARN_UNUSED_RESULT
Generate Geotransform from GCPs.
Definition: gdal_misc.cpp:2407
GDALSetRasterUnitType
CPLErr GDALSetRasterUnitType(GDALRasterBandH hBand, const char *pszNewValue)
Set unit type.
Definition: gdalrasterband.cpp:2696
GDALGetAsyncStatusTypeByName
GDALAsyncStatusType GDALGetAsyncStatusTypeByName(const char *)
Get AsyncStatusType by symbolic name.
Definition: gdal_misc.cpp:790
GDALCreatePansharpenedVRT
GDALDatasetH GDALCreatePansharpenedVRT(const char *pszXML, GDALRasterBandH hPanchroBand, int nInputSpectralBands, GDALRasterBandH *pahInputSpectralBands) CPL_WARN_UNUSED_RESULT
Create a virtual pansharpened dataset.
Definition: vrtpansharpened.cpp:93
GDALRATSerializeJSON
void * GDALRATSerializeJSON(GDALRasterAttributeTableH) CPL_WARN_UNUSED_RESULT
Serialize Raster Attribute Table in Json format.
Definition: gdal_rat.cpp:2231
GDALGroupGetAttribute
GDALAttributeH GDALGroupGetAttribute(GDALGroupH hGroup, const char *pszName) CPL_WARN_UNUSED_RESULT
Return an attribute by its name.
Definition: gdalmultidim.cpp:5921
GDALBuildOverviews
CPLErr GDALBuildOverviews(GDALDatasetH, const char *, int, int *, int, int *, GDALProgressFunc, void *) CPL_WARN_UNUSED_RESULT
Build raster overview(s)
Definition: gdaldataset.cpp:1968
GF_Write
Definition: gdal.h:121
GDALSetMetadata
CPLErr GDALSetMetadata(GDALMajorObjectH, CSLConstList, const char *)
Set metadata.
Definition: gdalmajorobject.cpp:318
GFU_RedMin
Definition: gdal.h:1208
GDALSetSpatialRef
CPLErr GDALSetSpatialRef(GDALDatasetH, OGRSpatialReferenceH)
Set the spatial reference system for this dataset.
Definition: gdaldataset.cpp:1060
CPL_RESTRICT
#define CPL_RESTRICT
restrict keyword to declare that pointers do not alias
Definition: cpl_port.h:983
GDALGetRasterHistogram
CPLErr GDALGetRasterHistogram(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, int *panHistogram, int bIncludeOutOfRange, int bApproxOK, GDALProgressFunc pfnProgress, void *pProgressData) CPL_WARN_DEPRECATED("Use GDALGetRasterHistogramEx() instead")
Compute raster histogram.
Definition: gdalrasterband.cpp:3352
GDALMDArrayGetFullName
const char * GDALMDArrayGetFullName(GDALMDArrayH hArray)
Return array full name.
Definition: gdalmultidim.cpp:6156
GDALSetGCPs
CPLErr GDALSetGCPs(GDALDatasetH, int, const GDAL_GCP *, const char *)
Assign GCPs.
Definition: gdaldataset.cpp:1849
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) CPL_WARN_UNUSED_RESULT
Read/write a region of image data for this band.
Definition: gdalrasterband.cpp:395
GDALRATFieldType
GDALRATFieldType
Field type of raster attribute table.
Definition: gdal.h:1190
GDALExtendedDataTypeGetMaxStringLength
size_t GDALExtendedDataTypeGetMaxStringLength(GDALExtendedDataTypeH hEDT)
Return the maximum length of a string in bytes.
Definition: gdalmultidim.cpp:5571
GDT_UInt16
Definition: gdal.h:63
GDT_Int32
Definition: gdal.h:66
GDALGetDriverHelpTopic
const char * GDALGetDriverHelpTopic(GDALDriverH)
Return the URL to the help that describes the driver.
Definition: gdaldriver.cpp:1655
GDALDeregisterDriver
void GDALDeregisterDriver(GDALDriverH)
Deregister the passed driver.
Definition: gdaldrivermanager.cpp:575
GDALGetProjectionRef
const char * GDALGetProjectionRef(GDALDatasetH)
Fetch the projection definition string for this dataset.
Definition: gdaldataset.cpp:971
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:248
GDALDatasetSetStyleTable
void GDALDatasetSetStyleTable(GDALDatasetH, OGRStyleTableH)
Set dataset style table.
Definition: gdaldataset.cpp:4650
GDALOpenShared
GDALDatasetH GDALOpenShared(const char *, GDALAccess) CPL_WARN_UNUSED_RESULT
Open a raster file as a GDALDataset.
Definition: gdaldataset.cpp:3593
GFU_Min
Definition: gdal.h:1201
GFU_BlueMax
Definition: gdal.h:1214
GDALSetRasterScale
CPLErr GDALSetRasterScale(GDALRasterBandH hBand, double dfNewOffset)
Set scaling ratio.
Definition: gdalrasterband.cpp:2601
GDALDatasetGetLayerByName
OGRLayerH GDALDatasetGetLayerByName(GDALDatasetH, const char *)
Fetch a layer by name.
Definition: gdaldataset.cpp:4270
GDALRPCInfo::dfLONG_SCALE
double dfLONG_SCALE
Definition: gdal.h:1137
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:2308
GDALMDArrayGetDimensions
GDALDimensionH * GDALMDArrayGetDimensions(GDALMDArrayH hArray, size_t *pnCount) CPL_WARN_UNUSED_RESULT
Return the dimensions of the array.
Definition: gdalmultidim.cpp:6207
GDALRATGetValueAsInt
int GDALRATGetValueAsInt(GDALRasterAttributeTableH, int, int)
Fetch field value as a integer.
Definition: gdal_rat.cpp:1593
GDALHasArbitraryOverviews
int GDALHasArbitraryOverviews(GDALRasterBandH)
Check for arbitrary overviews.
Definition: gdalrasterband.cpp:2163
GDALGetDefaultRAT
GDALRasterAttributeTableH GDALGetDefaultRAT(GDALRasterBandH hBand)
Fetch default Raster Attribute Table.
Definition: gdalrasterband.cpp:5838
GDALComputeRasterMinMax
void GDALComputeRasterMinMax(GDALRasterBandH hBand, int bApproxOK, double adfMinMax[2])
Compute the min/max values for a band.
Definition: gdalrasterband.cpp:5702
GDALSetRasterColorInterpretation
CPLErr GDALSetRasterColorInterpretation(GDALRasterBandH, GDALColorInterp)
Set color interpretation of a band.
Definition: gdalrasterband.cpp:2024
GDALGetDriverByName
GDALDriverH GDALGetDriverByName(const char *)
Fetch a driver based on the short name.
Definition: gdaldrivermanager.cpp:619
GDALMDArrayGetSpatialRef
OGRSpatialReferenceH GDALMDArrayGetSpatialRef(GDALMDArrayH hArray)
Return the spatial reference system object associated with the array.
Definition: gdalmultidim.cpp:6861
GDALGroupH
struct GDALGroupHS * GDALGroupH
Opaque type for C++ GDALGroup.
Definition: gdal.h:292
GDALGetDataTypeSize
int GDALGetDataTypeSize(GDALDataType)
Get data type size in bits.
Definition: gdal_misc.cpp:372
GDALAttributeWriteStringArray
int GDALAttributeWriteStringArray(GDALAttributeH hAttr, CSLConstList)
Write an attribute from an array of strings.
Definition: gdalmultidim.cpp:7281
GFU_RedMax
Definition: gdal.h:1212
GDALRIOResampleAlg
GDALRIOResampleAlg
RasterIO() resampling method.
Definition: gdal.h:128
GDALDataTypeIsConversionLossy
int GDALDataTypeIsConversionLossy(GDALDataType eTypeFrom, GDALDataType eTypeTo)
Is conversion from eTypeFrom to eTypeTo potentially lossy.
Definition: gdal_misc.cpp:502
GDALGetDriverCreationOptionList
const char * GDALGetDriverCreationOptionList(GDALDriverH)
Return the list of creation options of the driver.
Definition: gdaldriver.cpp:1680
GDALExtractRPCInfo
int GDALExtractRPCInfo(CSLConstList, GDALRPCInfo *)
Extract RPC info from metadata, and apply to an RPCInfo structure.
Definition: gdal_misc.cpp:3418
GDALRWFlag
GDALRWFlag
Definition: gdal.h:119
GDALRPCInfo::dfMIN_LONG
double dfMIN_LONG
Definition: gdal.h:1145
GDALRasterIOExtraArg::nVersion
int nVersion
Definition: gdal.h:150
GDALDimensionSetIndexingVariable
int GDALDimensionSetIndexingVariable(GDALDimensionH hDim, GDALMDArrayH hArray)
Set the variable that is used to index the dimension.
Definition: gdalmultidim.cpp:7431
GDALGeneralCmdLineProcessor
int GDALGeneralCmdLineProcessor(int nArgc, char ***ppapszArgv, int nOptions)
General utility option processing.
Definition: gdal_misc.cpp:2862
GDALDatasetH
void * GDALDatasetH
Opaque type used for the C bindings of the C++ GDALDataset class.
Definition: gdal.h:255
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:797
GDALExtendedDataTypeFreeComponents
void GDALExtendedDataTypeFreeComponents(GDALEDTComponentH *components, size_t nCount)
Free the return of GDALExtendedDataTypeGetComponents().
Definition: gdalmultidim.cpp:5658
GByte
unsigned char GByte
Unsigned byte type.
Definition: cpl_port.h:215
GDALAddBand
CPLErr GDALAddBand(GDALDatasetH hDS, GDALDataType eType, CSLConstList papszOptions)
Add a band to a dataset.
Definition: gdaldataset.cpp:590
GDALColorEntry
Color tuple.
Definition: gdal.h:1158
GDALDatasetStartTransaction
OGRErr GDALDatasetStartTransaction(GDALDatasetH hDS, int bForce)
For datasources which support transactions, StartTransaction creates a transaction.
Definition: gdaldataset.cpp:7130
GCI_YellowBand
Definition: gdal.h:204
GDALDestroyDriverManager
void GDALDestroyDriverManager(void)
Destroy the driver manager.
Definition: gdaldrivermanager.cpp:898
GDALEDTComponentH
struct GDALEDTComponentHS * GDALEDTComponentH
Opaque type for C++ GDALEDTComponent.
Definition: gdal.h:290
GDALRATGetValueAsString
const char * GDALRATGetValueAsString(GDALRasterAttributeTableH, int, int)
Fetch field value as a string.
Definition: gdal_rat.cpp:1534
GDALExtendedDataTypeCreate
GDALExtendedDataTypeH GDALExtendedDataTypeCreate(GDALDataType eType) CPL_WARN_UNUSED_RESULT
Return a new GDALExtendedDataType of class GEDTC_NUMERIC.
Definition: gdalmultidim.cpp:5431
GDALRPCInfo
Structure to store Rational Polynomial Coefficients / Rigorous Projection Model.
Definition: gdal.h:1126
GDALRATSetValueAsString
void GDALRATSetValueAsString(GDALRasterAttributeTableH, int, int, const char *)
Set field value from string.
Definition: gdal_rat.cpp:1758
GDALDataTypeIsComplex
int GDALDataTypeIsComplex(GDALDataType)
Is data type complex?
Definition: gdal_misc.cpp:390
GDALReleaseAttributes
void GDALReleaseAttributes(GDALAttributeH *attributes, size_t nCount)
Free the return of GDALGroupGetAttributes() or GDALMDArrayGetAttributes()
Definition: gdalmultidim.cpp:5994
GDALEDTComponentGetOffset
size_t GDALEDTComponentGetOffset(GDALEDTComponentH hComp)
Return the offset (in bytes) of the component in the compound data type.
Definition: gdalmultidim.cpp:5722
GDALGetDriverLongName
const char * GDALGetDriverLongName(GDALDriverH)
Return the long name of a driver.
Definition: gdaldriver.cpp:1624
GDALExtendedDataTypeGetNumericDataType
GDALDataType GDALExtendedDataTypeGetNumericDataType(GDALExtendedDataTypeH hEDT)
Return numeric data type (only valid when GetClass() == GEDTC_NUMERIC)
Definition: gdalmultidim.cpp:5541
GDALRasterBandH
void * GDALRasterBandH
Opaque type used for the C bindings of the C++ GDALRasterBand class.
Definition: gdal.h:258
GDALGetRasterCategoryNames
char ** GDALGetRasterCategoryNames(GDALRasterBandH)
Fetch the list of category names for this raster.
Definition: gdalrasterband.cpp:1531
GDALGetPaletteInterpretationName
const char * GDALGetPaletteInterpretationName(GDALPaletteInterp)
Get name of palette interpretation.
Definition: gdal_misc.cpp:864
GDALDatasetCreateLayer
OGRLayerH GDALDatasetCreateLayer(GDALDatasetH, const char *, OGRSpatialReferenceH, OGRwkbGeometryType, CSLConstList)
This function attempts to create a new layer on the dataset with the indicated name, coordinate system, geometry type.
Definition: gdaldataset.cpp:4460
GDALRasterBandCopyWholeRaster
CPLErr GDALRasterBandCopyWholeRaster(GDALRasterBandH hSrcBand, GDALRasterBandH hDstBand, const char *const *constpapszOptions, GDALProgressFunc pfnProgress, void *pProgressData) CPL_WARN_UNUSED_RESULT
Copy a whole raster band.
Definition: rasterio.cpp:4720
GDALMDArrayGetRawNoDataValue
const void * GDALMDArrayGetRawNoDataValue(GDALMDArrayH hArray)
Return the nodata value as a "raw" value.
Definition: gdalmultidim.cpp:6439
GDT_Unknown
Definition: gdal.h:61
GDALMDArrayGetName
const char * GDALMDArrayGetName(GDALMDArrayH hArray)
Return array name.
Definition: gdalmultidim.cpp:6142
GFU_MinMax
Definition: gdal.h:1203
GDALGroupGetFullName
const char * GDALGroupGetFullName(GDALGroupH hGroup)
Return the full name of the group.
Definition: gdalmultidim.cpp:5783
GFU_PixelCount
Definition: gdal.h:1199
GDALRPCInfo::dfHEIGHT_SCALE
double dfHEIGHT_SCALE
Definition: gdal.h:1138
GDALRATInitializeFromColorTable
CPLErr GDALRATInitializeFromColorTable(GDALRasterAttributeTableH, GDALColorTableH)
Initialize from color table.
Definition: gdal_rat.cpp:999
GDALRPCInfo::dfMAX_LAT
double dfMAX_LAT
Definition: gdal.h:1148
GDALFlushCache
void GDALFlushCache(GDALDatasetH hDS)
Flush all write cached data to disk.
Definition: gdaldataset.cpp:460
GDALRATTableType
GDALRATTableType
RAT table type (thematic or athematic)
Definition: gdal.h:1222
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) CPL_WARN_UNUSED_RESULT
Create a CPLVirtualMem object from a GDAL raster band object.
Definition: gdalvirtualmem.cpp:1086
GDALGetInternalHandle
void * GDALGetInternalHandle(GDALDatasetH, const char *)
Fetch a format specific internally meaningful handle.
Definition: gdaldataset.cpp:1275
GDALGetRasterCount
int GDALGetRasterCount(GDALDatasetH)
Fetch the number of raster bands on this dataset.
Definition: gdaldataset.cpp:816
GDALMDArrayGetView
GDALMDArrayH GDALMDArrayGetView(GDALMDArrayH hArray, const char *pszViewExpr)
Return a view of the array using slicing or field access.
Definition: gdalmultidim.cpp:6702
GDALGetDescription
const char * GDALGetDescription(GDALMajorObjectH)
Fetch object description.
Definition: gdalmajorobject.cpp:95
cpl_virtualmem.h
Virtual memory management.
GDALGetMaskBand
GDALRasterBandH GDALGetMaskBand(GDALRasterBandH hBand)
Return the mask band associated with the band.
Definition: gdalrasterband.cpp:6152
GCI_GreenBand
Definition: gdal.h:196
GDALRATChangesAreWrittenToFile
int GDALRATChangesAreWrittenToFile(GDALRasterAttributeTableH hRAT)
Determine whether changes made to this RAT are reflected directly in the dataset. ...
Definition: gdal_rat.cpp:1929
GDALRATGetUsageOfCol
GDALRATFieldUsage GDALRATGetUsageOfCol(GDALRasterAttributeTableH, int)
Fetch column usage value.
Definition: gdal_rat.cpp:1357
GTO_TIP
Definition: gdal.h:1352
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:871
GDALMDArrayGetAttribute
GDALAttributeH GDALMDArrayGetAttribute(GDALMDArrayH hArray, const char *pszName) CPL_WARN_UNUSED_RESULT
Return an attribute by its name.
Definition: gdalmultidim.cpp:6345
GDALRasterBandAsMDArray
GDALMDArrayH GDALRasterBandAsMDArray(GDALRasterBandH) CPL_WARN_UNUSED_RESULT
Return a view of this raster band as a 2D multidimensional GDALMDArray.
Definition: gdalmultidim.cpp:7480
GDALColorEntry::c1
short c1
Definition: gdal.h:1161
GRIORA_Lanczos
Definition: gdal.h:134
GDALGetCacheMax64
GIntBig GDALGetCacheMax64(void)
Get maximum cache memory.
Definition: gdalrasterblock.cpp:239
GDALSetCacheMax
void GDALSetCacheMax(int nBytes)
Set maximum cache memory.
Definition: gdalrasterblock.cpp:120
GDALColorEntry::c3
short c3
Definition: gdal.h:1167
CPLVirtualMem
struct CPLVirtualMem CPLVirtualMem
Opaque type that represents a virtual memory mapping.
Definition: cpl_virtualmem.h:62
GDALApplyGeoTransform
void GDALApplyGeoTransform(double *, double, double, double *, double *)
Apply GeoTransform to x/y coordinate.
Definition: gdaltransformer.cpp:3761
GDALReleaseDimensions
void GDALReleaseDimensions(GDALDimensionH *dims, size_t nCount)
Free the return of GDALGroupGetDimensions() or GDALMDArrayGetDimensions()
Definition: gdalmultidim.cpp:6231
GDALRegisterDriver
int GDALRegisterDriver(GDALDriverH)
Register a driver for use.
Definition: gdaldrivermanager.cpp:517
GDT_CFloat64
Definition: gdal.h:75
GDALAttributeReadAsInt
int GDALAttributeReadAsInt(GDALAttributeH hAttr)
Return the value of an attribute as a integer.
Definition: gdalmultidim.cpp:7077
GDALSetMetadataItem
CPLErr GDALSetMetadataItem(GDALMajorObjectH, const char *, const char *, const char *)
Set single metadata item.
Definition: gdalmajorobject.cpp:415
GDALAttributeGetTotalElementsCount
GUInt64 GDALAttributeGetTotalElementsCount(GDALAttributeH hAttr)
Return the total number of values in the attribute.
Definition: gdalmultidim.cpp:6922
GDALGetOpenDatasets
void GDALGetOpenDatasets(GDALDatasetH **hDS, int *pnCount)
Fetch all open GDAL dataset handles.
Definition: gdaldataset.cpp:2664
GDALGetRasterColorInterpretation
GDALColorInterp GDALGetRasterColorInterpretation(GDALRasterBandH)
How should this band be interpreted as color?
Definition: gdalrasterband.cpp:1975
GDALRPCInfo::dfLAT_OFF
double dfLAT_OFF
Definition: gdal.h:1130
GDALGetAsyncStatusTypeName
const char * GDALGetAsyncStatusTypeName(GDALAsyncStatusType)
Get name of AsyncStatus data type.
Definition: gdal_misc.cpp:825
GDALVersionInfo
const char * GDALVersionInfo(const char *)
Get runtime version information.
Definition: gdal_misc.cpp:2186
GDALDataTypeIsFloating
int GDALDataTypeIsFloating(GDALDataType)
Is data type floating? (might be complex)
Definition: gdal_misc.cpp:418
GDAL_GCP::dfGCPY
double dfGCPY
Y position of GCP in georeferenced space.
Definition: gdal.h:677
GDALGroupGetStructuralInfo
CSLConstList GDALGroupGetStructuralInfo(GDALGroupH hGroup)
Return structural information on the group.
Definition: gdalmultidim.cpp:5979
GRIORA_Mode
Definition: gdal.h:137
GDALRATGetLinearBinning
int GDALRATGetLinearBinning(GDALRasterAttributeTableH, double *, double *)
Get linear binning information.
Definition: gdal_rat.cpp:549
GDALCreateColorRamp
void GDALCreateColorRamp(GDALColorTableH hTable, int nStartIndex, const GDALColorEntry *psStartColor, int nEndIndex, const GDALColorEntry *psEndColor)
Create color ramp.
Definition: gdalcolortable.cpp:447
GDALInitGCPs
void GDALInitGCPs(int, GDAL_GCP *)
Initialize an array of GCPs.
Definition: gdal_misc.cpp:1191
GDALMDArrayCreateAttribute
GDALAttributeH GDALMDArrayCreateAttribute(GDALMDArrayH hArray, const char *pszName, size_t nDimensions, const GUInt64 *panDimensions, GDALExtendedDataTypeH hEDT, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Create a attribute within an array.
Definition: gdalmultidim.cpp:6400
GDALGetRasterBand
GDALRasterBandH GDALGetRasterBand(GDALDatasetH, int)
Fetch a band object for a dataset.
Definition: gdaldataset.cpp:783
GDALGetGCPs
const GDAL_GCP * GDALGetGCPs(GDALDatasetH)
Fetch GCPs.
Definition: gdaldataset.cpp:1690
GDALDatasetGetLayerCount
int GDALDatasetGetLayerCount(GDALDatasetH)
Get the number of layers in this dataset.
Definition: gdaldataset.cpp:4213
GDALGetNonComplexDataType
GDALDataType GDALGetNonComplexDataType(GDALDataType)
Return the base data type for the specified input.
Definition: gdal_misc.cpp:760
GDALSwapWordsEx
void GDALSwapWordsEx(void *pData, int nWordSize, size_t nWordCount, int nWordSkip)
Byte swap words in-place.
Definition: rasterio.cpp:1907
GDALIdentifyDriver
GDALDriverH GDALIdentifyDriver(const char *pszFilename, CSLConstList papszFileList)
Identify the driver that can open a raster file.
Definition: gdaldriver.cpp:2142
GDALColorEntry::c2
short c2
Definition: gdal.h:1164
GDALDatasetGetStyleTable
OGRStyleTableH GDALDatasetGetStyleTable(GDALDatasetH)
Returns dataset style table.
Definition: gdaldataset.cpp:4592
GDALMDArraySetSpatialRef
int GDALMDArraySetSpatialRef(GDALMDArrayH, OGRSpatialReferenceH)
Assign a spatial reference system object to the the array.
Definition: gdalmultidim.cpp:6844
GDALAttributeReadAsDoubleArray
double * GDALAttributeReadAsDoubleArray(GDALAttributeH hAttr, size_t *pnCount) CPL_WARN_UNUSED_RESULT
Return the value of an attribute as an array of doubles.
Definition: gdalmultidim.cpp:7160
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:3158
GDALRasterIOExtraArg::dfXOff
double dfXOff
Definition: gdal.h:166
GDALGetVirtualMemAuto
CPLVirtualMem * GDALGetVirtualMemAuto(GDALRasterBandH hBand, GDALRWFlag eRWFlag, int *pnPixelSpace, GIntBig *pnLineSpace, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Create a CPLVirtualMem object from a GDAL raster band object.
Definition: gdalrasterband.cpp:6687
GDALGetRasterAccess
GDALAccess GDALGetRasterAccess(GDALRasterBandH)
Find out if we have update permission for this band.
Definition: gdalrasterband.cpp:1485
GSpacing
GIntBig GSpacing
Type to express pixel, line or band spacing.
Definition: gdal.h:273
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:3418
GDALGetMetadataDomainList
char ** GDALGetMetadataDomainList(GDALMajorObjectH hObject)
Fetch list of metadata domains.
Definition: gdalmajorobject.cpp:219
GDALGetAccess
int GDALGetAccess(GDALDatasetH hDS)
Return access flag.
Definition: gdaldataset.cpp:2698
GDALRPCInfo::dfHEIGHT_OFF
double dfHEIGHT_OFF
Definition: gdal.h:1132
GDALGetDataTypeName
const char * GDALGetDataTypeName(GDALDataType)
Get name of data type.
Definition: gdal_misc.cpp:565
GFU_GreenMin
Definition: gdal.h:1209
GDALExtendedDataTypeEquals
int GDALExtendedDataTypeEquals(GDALExtendedDataTypeH hFirstEDT, GDALExtendedDataTypeH hSecondEDT)
Return whether this data type is equal to another one.
Definition: gdalmultidim.cpp:5609
GDALGetDriverCount
int GDALGetDriverCount(void)
Fetch the number of registered drivers.
Definition: gdaldrivermanager.cpp:360
GCI_CyanBand
Definition: gdal.h:202
GCI_YCbCr_CrBand
Definition: gdal.h:208
GUInt64
GUIntBig GUInt64
Unsigned 64 bit integer type.
Definition: cpl_port.h:269
GDT_UInt32
Definition: gdal.h:65
GDALCreateMaskBand
CPLErr GDALCreateMaskBand(GDALRasterBandH hBand, int nFlags)
Adds a mask band to the current band.
Definition: gdalrasterband.cpp:6331
GRIORA_Gauss
Definition: gdal.h:138
GPtrDiff_t
GIntBig GPtrDiff_t
Integer type large enough to hold the difference between 2 addresses.
Definition: cpl_port.h:286
GRTT_ATHEMATIC
Definition: gdal.h:1224
GDALRATGetRowCount
int GDALRATGetRowCount(GDALRasterAttributeTableH)
Fetch row count.
Definition: gdal_rat.cpp:1467
GDALDatasetGetRootGroup
GDALGroupH GDALDatasetGetRootGroup(GDALDatasetH hDS) CPL_WARN_UNUSED_RESULT
Return the root GDALGroup of this dataset.
Definition: gdalmultidim.cpp:7451
GDALAttributeGetDimensionCount
size_t GDALAttributeGetDimensionCount(GDALAttributeH hAttr)
Return the number of dimensions.
Definition: gdalmultidim.cpp:6936
GDALOverviewMagnitudeCorrection
CPLErr GDALOverviewMagnitudeCorrection(GDALRasterBandH hBaseBand, int nOverviewCount, GDALRasterBandH *pahOverviews, GDALProgressFunc pfnProgress, void *pProgressData)
Undocumented.
Definition: overview.cpp:4095
GDALDataTypeUnionWithValue
GDALDataType GDALDataTypeUnionWithValue(GDALDataType eDT, double dValue, int bComplex)
Union a data type with the one found for a value.
Definition: gdal_misc.cpp:175
OGRwkbGeometryType
OGRwkbGeometryType
List of well known binary geometry types.
Definition: ogr_core.h:345
GDALRasterIOExtraArg::pProgressData
void * pProgressData
Definition: gdal.h:158
GCI_PaletteIndex
Definition: gdal.h:194
GDALRATGetRowOfValue
int GDALRATGetRowOfValue(GDALRasterAttributeTableH, double)
Get row for pixel value.
Definition: gdal_rat.cpp:378
GDALRegenerateOverviews
CPLErr GDALRegenerateOverviews(GDALRasterBandH hSrcBand, int nOverviewCount, GDALRasterBandH *pahOverviewBands, const char *pszResampling, GDALProgressFunc pfnProgress, void *pProgressData)
Generate downsampled overviews.
Definition: overview.cpp:3093
GDALSetRasterCategoryNames
CPLErr GDALSetRasterCategoryNames(GDALRasterBandH, CSLConstList)
Set the category names for this band.
Definition: gdalrasterband.cpp:1583
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) CPL_WARN_UNUSED_RESULT
Create a CPLVirtualMem object from a GDAL dataset object.
Definition: gdalvirtualmem.cpp:959
GDALGroupGetAttributes
GDALAttributeH * GDALGroupGetAttributes(GDALGroupH hGroup, size_t *pnCount, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Return the list of attributes contained in this group.
Definition: gdalmultidim.cpp:5950
GDALAttributeGetDimensionsSize
GUInt64 * GDALAttributeGetDimensionsSize(GDALAttributeH hAttr, size_t *pnCount) CPL_WARN_UNUSED_RESULT
Return the dimension sizes of the attribute.
Definition: gdalmultidim.cpp:6955
GFU_AlphaMin
Definition: gdal.h:1211
GDALMDArrayGetOffset
double GDALMDArrayGetOffset(GDALMDArrayH hArray, int *pbHasValue)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:6586
GDALReleaseDataset
int GDALReleaseDataset(GDALDatasetH)
Drop a reference to this object, and destroy if no longer referenced.
Definition: gdaldataset.cpp:1420
GDALFlushRasterCache
CPLErr GDALFlushRasterCache(GDALRasterBandH hBand)
Flush raster data cache.
Definition: gdalrasterband.cpp:1044
GTO_BIT
Definition: gdal.h:1354
GDALAsyncStatusType
GDALAsyncStatusType
status of the asynchronous stream
Definition: gdal.h:100
GDALGetRasterNoDataValue
double GDALGetRasterNoDataValue(GDALRasterBandH, int *)
Fetch the no data value for this band.
Definition: gdalrasterband.cpp:1635
GDALRATSetRowCount
void GDALRATSetRowCount(GDALRasterAttributeTableH, int)
Set row count.
Definition: gdal_rat.cpp:332
GDALSetCacheMax64
void GDALSetCacheMax64(GIntBig nBytes)
Set maximum cache memory.
Definition: gdalrasterblock.cpp:146
GDALDestroyRasterAttributeTable
void GDALDestroyRasterAttributeTable(GDALRasterAttributeTableH)
Destroys a RAT.
Definition: gdal_rat.cpp:1228
GDALRATGetTableType
GDALRATTableType GDALRATGetTableType(GDALRasterAttributeTableH hRAT)
Get Rat Table Type.
Definition: gdal_rat.cpp:571
GDALAttributeWriteRaw
int GDALAttributeWriteRaw(GDALAttributeH hAttr, const void *, size_t)
Write an attribute from raw values expressed in GetDataType()
Definition: gdalmultidim.cpp:7195
GRIORA_NearestNeighbour
Definition: gdal.h:130
GDALCopyDatasetFiles
CPLErr GDALCopyDatasetFiles(GDALDriverH, const char *pszNewName, const char *pszOldName)
Copy the files of a dataset.
Definition: gdaldriver.cpp:1565
GDALRATCreateColumn
CPLErr GDALRATCreateColumn(GDALRasterAttributeTableH, const char *, GDALRATFieldType, GDALRATFieldUsage)
Create new column.
Definition: gdal_rat.cpp:456
GDT_Int16
Definition: gdal.h:64
GDALDatasetCopyLayer
OGRLayerH GDALDatasetCopyLayer(GDALDatasetH, OGRLayerH, const char *, CSLConstList)
Duplicate an existing layer.
Definition: gdaldataset.cpp:4508
GDALGroupGetName
const char * GDALGroupGetName(GDALGroupH hGroup)
Return the name of the group.
Definition: gdalmultidim.cpp:5767
GDALLoadWorldFile
int GDALLoadWorldFile(const char *, double *)
Read ESRI world file.
Definition: gdal_misc.cpp:1864
GDALGroupGetMDArrayNames
char ** GDALGroupGetMDArrayNames(GDALGroupH hGroup, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Return the list of multidimensional array names contained in this group.
Definition: gdalmultidim.cpp:5799
GDALRasterIOExtraArg::pfnProgress
GDALProgressFunc pfnProgress
Definition: gdal.h:156
GDALRasterAttributeTableH
void * GDALRasterAttributeTableH
Opaque type used for the C bindings of the C++ GDALRasterAttributeTable class.
Definition: gdal.h:267
GDALSetColorEntry
void GDALSetColorEntry(GDALColorTableH, int, const GDALColorEntry *)
Set entry in color table.
Definition: gdalcolortable.cpp:245
GCI_YCbCr_CbBand
Definition: gdal.h:207
GDALGetRasterYSize
int GDALGetRasterYSize(GDALDatasetH)
Fetch raster height in pixels.
Definition: gdaldataset.cpp:729
GDALRATSetTableType
CPLErr GDALRATSetTableType(GDALRasterAttributeTableH hRAT, const GDALRATTableType eInTableType)
Set RAT Table Type.
Definition: gdal_rat.cpp:591
GDALGetSpatialRef
OGRSpatialReferenceH GDALGetSpatialRef(GDALDatasetH)
Fetch the projection definition string for this dataset.
Definition: gdaldataset.cpp:926
GDALGetDataTypeByName
GDALDataType GDALGetDataTypeByName(const char *)
Get data type by symbolic name.
Definition: gdal_misc.cpp:626
cpl_error.h
CPL error handling services.
OGRSpatialReferenceH
void * OGRSpatialReferenceH
Opaque type for a spatial reference system.
Definition: ogr_api.h:75
GDALGetJPEG2000Structure
CPLXMLNode * GDALGetJPEG2000Structure(const char *pszFilename, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Dump the structure of a JPEG2000 file as a XML tree.
Definition: gdaljp2structure.cpp:1658
GDALMDArrayGetUnscaled
GDALMDArrayH GDALMDArrayGetUnscaled(GDALMDArrayH hArray)
Return an array that is the unscaled version of the current one.
Definition: gdalmultidim.cpp:6752
GDALCreateColorTable
GDALColorTableH GDALCreateColorTable(GDALPaletteInterp) CPL_WARN_UNUSED_RESULT
Construct a new color table.
Definition: gdalcolortable.cpp:69
GDALARGetNextUpdatedRegion
GDALAsyncStatusType GDALARGetNextUpdatedRegion(GDALAsyncReaderH hARIO, double dfTimeout, int *pnXBufOff, int *pnYBufOff, int *pnXBufSize, int *pnYBufSize)
Get async IO update.
Definition: gdaldefaultasync.cpp:174
GDALRasterIOExtraArg::dfYSize
double dfYSize
Definition: gdal.h:172
GCI_RedBand
Definition: gdal.h:195
GDALDatasetDeleteLayer
OGRErr GDALDatasetDeleteLayer(GDALDatasetH, int)
Delete the indicated layer from the datasource.
Definition: gdaldataset.cpp:4300
CSLConstList
char ** CSLConstList
Type of a constant null-terminated list of nul terminated strings.
Definition: cpl_port.h:1212
GDALRPCInfo::dfLONG_OFF
double dfLONG_OFF
Definition: gdal.h:1131
GDALGroupCreateDimension
GDALDimensionH GDALGroupCreateDimension(GDALGroupH hGroup, const char *pszName, const char *pszType, const char *pszDirection, GUInt64 nSize, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Create a dimension within a group.
Definition: gdalmultidim.cpp:6036
GDALExtendedDataTypeClass
GDALExtendedDataTypeClass
Enumeration giving the class of a GDALExtendedDataType.
Definition: gdal.h:278
GDALDataTypeIsSigned
int GDALDataTypeIsSigned(GDALDataType)
Is data type signed?
Definition: gdal_misc.cpp:475
GDALDatasetRasterIOEx
CPLErr GDALDatasetRasterIOEx(GDALDatasetH hDS, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType, int nBandCount, int *panBandCount, GSpacing nPixelSpace, GSpacing nLineSpace, GSpacing nBandSpace, GDALRasterIOExtraArg *psExtraArg) CPL_WARN_UNUSED_RESULT
Read/write a region of image data from multiple bands.
Definition: gdaldataset.cpp:2598
GDALExtendedDataTypeCreateCompound
GDALExtendedDataTypeH GDALExtendedDataTypeCreateCompound(const char *pszName, size_t nTotalSize, size_t nComponents, const GDALEDTComponentH *comps) CPL_WARN_UNUSED_RESULT
Return a new GDALExtendedDataType of class GEDTC_COMPOUND.
Definition: gdalmultidim.cpp:5474
GDT_CFloat32
Definition: gdal.h:74
GDALDatasetGetNextFeature
OGRFeatureH GDALDatasetGetNextFeature(GDALDatasetH hDS, OGRLayerH *phBelongingLayer, double *pdfProgressPct, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch the next available feature from this dataset.
Definition: gdaldataset.cpp:6910
GPI_HLS
Definition: gdal.h:221
GDALDimensionGetDirection
const char * GDALDimensionGetDirection(GDALDimensionH hDim)
Return dimension direction.
Definition: gdalmultidim.cpp:7376
GDALReadOziMapFile
int GDALReadOziMapFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for OZI .map.
Definition: gdal_misc.cpp:1565
GDALLoadOziMapFile
int GDALLoadOziMapFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for OZI .map.
Definition: gdal_misc.cpp:1357
GDALComposeGeoTransforms
void GDALComposeGeoTransforms(const double *padfGeoTransform1, const double *padfGeoTransform2, double *padfGeoTransformOut)
Compose two geotransforms.
Definition: gdal_misc.cpp:2708
GDALDeleteRasterNoDataValue
CPLErr GDALDeleteRasterNoDataValue(GDALRasterBandH)
Remove the no data value for this band.
Definition: gdalrasterband.cpp:1751
GRTT_THEMATIC
Definition: gdal.h:1223
GDALRasterIOExtraArg
Structure to pass extra arguments to RasterIO() method.
Definition: gdal.h:147
GDALGroupGetDimensions
GDALDimensionH * GDALGroupGetDimensions(GDALGroupH hGroup, size_t *pnCount, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Return the list of dimensions contained in this group and used by its arrays.
Definition: gdalmultidim.cpp:5895
GDALAttributeReadAsIntArray
int * GDALAttributeReadAsIntArray(GDALAttributeH hAttr, size_t *pnCount) CPL_WARN_UNUSED_RESULT
Return the value of an attribute as an array of integers.
Definition: gdalmultidim.cpp:7131
GDALOpen
GDALDatasetH GDALOpen(const char *pszFilename, GDALAccess eAccess) CPL_WARN_UNUSED_RESULT
Open a raster file as a GDALDataset.
Definition: gdaldataset.cpp:3119
GDALSetRasterNoDataValue
CPLErr GDALSetRasterNoDataValue(GDALRasterBandH, double)
Set the no data value for this band.
Definition: gdalrasterband.cpp:1703
GDALPaletteInterp
GDALPaletteInterp
Definition: gdal.h:216
GDALDeinitGCPs
void GDALDeinitGCPs(int, GDAL_GCP *)
De-initialize an array of GCPs (initialized with GDALInitGCPs())
Definition: gdal_misc.cpp:1217
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:6265
GDALDimensionGetIndexingVariable
GDALMDArrayH GDALDimensionGetIndexingVariable(GDALDimensionH hDim) CPL_WARN_UNUSED_RESULT
Return the variable that is used to index the dimension (if there is one).
Definition: gdalmultidim.cpp:7409
GDALGetRasterMinimum
double GDALGetRasterMinimum(GDALRasterBandH, int *pbSuccess)
Fetch the minimum value for this band.
Definition: gdalrasterband.cpp:1933
GDALMDArraySetNoDataValueAsDouble
int GDALMDArraySetNoDataValueAsDouble(GDALMDArrayH hArray, double dfNoDataValue)
Set the nodata value as a double.
Definition: gdalmultidim.cpp:6509
GFU_AlphaMax
Definition: gdal.h:1215
GDALRATGetNameOfCol
const char * GDALRATGetNameOfCol(GDALRasterAttributeTableH, int)
Fetch name of indicated column.
Definition: gdal_rat.cpp:1314
GDALAttributeGetFullName
const char * GDALAttributeGetFullName(GDALAttributeH hAttr)
Return the full name of the attribute.
Definition: gdalmultidim.cpp:6908
GDALRATClone
GDALRasterAttributeTableH GDALRATClone(const GDALRasterAttributeTableH)
Copy Raster Attribute Table.
Definition: gdal_rat.cpp:2212
GDALGetGCPCount
int GDALGetGCPCount(GDALDatasetH)
Get number of GCPs.
Definition: gdaldataset.cpp:1512
GDALAttributeWriteDoubleArray
int GDALAttributeWriteDoubleArray(GDALAttributeH hAttr, const double *, size_t)
Write an attribute from an array of double.
Definition: gdalmultidim.cpp:7305
GDALRPCInfo::dfLINE_SCALE
double dfLINE_SCALE
Definition: gdal.h:1134
GDALRPCInfo::dfLINE_OFF
double dfLINE_OFF
Definition: gdal.h:1128
GDALMDArraySetUnit
int GDALMDArraySetUnit(GDALMDArrayH hArray, const char *)
Set the variable unit.
Definition: gdalmultidim.cpp:6803
GDALDeleteDataset
CPLErr GDALDeleteDataset(GDALDriverH, const char *)
Delete named dataset.
Definition: gdaldriver.cpp:1313
GDALGetDriverShortName
const char * GDALGetDriverShortName(GDALDriverH)
Return the short name of a driver.
Definition: gdaldriver.cpp:1602
GDALCreateMultiDimensional
GDALDatasetH GDALCreateMultiDimensional(GDALDriverH hDriver, const char *pszName, CSLConstList papszRootGroupOptions, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Create a new multidimensioanl dataset with this driver.
Definition: gdaldriver.cpp:410
GDALMDArrayGetScale
double GDALMDArrayGetScale(GDALMDArrayH hArray, int *pbHasValue)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:6564
GUIntBig
unsigned long long GUIntBig
Large unsigned integer type (generally 64-bit unsigned integer type).
Definition: cpl_port.h:251
GDALAttributeH
struct GDALAttributeHS * GDALAttributeH
Opaque type for C++ GDALAttribute.
Definition: gdal.h:296
GCI_Undefined
Definition: gdal.h:192
GFU_Alpha
Definition: gdal.h:1207
GDALGetGCPProjection
const char * GDALGetGCPProjection(GDALDatasetH)
Get output projection for GCPs.
Definition: gdaldataset.cpp:1657
GDALGetMaskFlags
int GDALGetMaskFlags(GDALRasterBandH hBand)
Return the status flags of the mask band associated with the band.
Definition: gdalrasterband.cpp:6242
GPI_CMYK
Definition: gdal.h:220
GDALAttributeReadAsDouble
double GDALAttributeReadAsDouble(GDALAttributeH hAttr)
Return the value of an attribute as a double.
Definition: gdalmultidim.cpp:7097
GDALMDArrayGetAttributes
GDALAttributeH * GDALMDArrayGetAttributes(GDALMDArrayH hArray, size_t *pnCount, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Return the list of attributes contained in this array.
Definition: gdalmultidim.cpp:6374
GDALValidateCreationOptions
int GDALValidateCreationOptions(GDALDriverH, CSLConstList papszCreationOptions)
Validate the list of creation options that are handled by a driver.
Definition: gdaldriver.cpp:1721
GDALGetRasterColorTable
GDALColorTableH GDALGetRasterColorTable(GDALRasterBandH)
Fetch the color table associated with band.
Definition: gdalrasterband.cpp:2066
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:6722
GDALEDTComponentRelease
void GDALEDTComponentRelease(GDALEDTComponentH hComp)
Release the GDAL in-memory object associated with a GDALEDTComponentH.
Definition: gdalmultidim.cpp:5693
GDALGetRasterUnitType
const char * GDALGetRasterUnitType(GDALRasterBandH)
Return raster unit type.
Definition: gdalrasterband.cpp:2643
GDALGetGeoTransform
CPLErr GDALGetGeoTransform(GDALDatasetH, double *)
Fetch the affine transformation coefficients.
Definition: gdaldataset.cpp:1184
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:6305
GDALSetRasterColorTable
CPLErr GDALSetRasterColorTable(GDALRasterBandH, GDALColorTableH)
Set the raster color table.
Definition: gdalrasterband.cpp:2119
GDALDriverH
void * GDALDriverH
Opaque type used for the C bindings of the C++ GDALDriver class.
Definition: gdal.h:261
GDALDuplicateGCPs
GDAL_GCP * GDALDuplicateGCPs(int, const GDAL_GCP *)
Duplicate an array of GCPs.
Definition: gdal_misc.cpp:1244
GDALGetRasterXSize
int GDALGetRasterXSize(GDALDatasetH)
Fetch raster width in pixels.
Definition: gdaldataset.cpp:695
GDALGetColorInterpretationName
const char * GDALGetColorInterpretationName(GDALColorInterp)
Get name of color interpretation.
Definition: gdal_misc.cpp:904
GDALARLockBuffer
int GDALARLockBuffer(GDALAsyncReaderH hARIO, double dfTimeout)
Lock image buffer.
Definition: gdaldefaultasync.cpp:233
GDALGetCacheMax
int GDALGetCacheMax(void)
Get maximum cache memory.
Definition: gdalrasterblock.cpp:200
GDALClose
void GDALClose(GDALDatasetH)
Close GDAL dataset.
Definition: gdaldataset.cpp:3618
GDALReferenceDataset
int GDALReferenceDataset(GDALDatasetH)
Add one to dataset reference count.
Definition: gdaldataset.cpp:1343
GDALDatasetTestCapability
int GDALDatasetTestCapability(GDALDatasetH, const char *)
Test if capability is available.
Definition: gdaldataset.cpp:7012
GDALCreateDriver
GDALDriverH GDALCreateDriver(void)
Create a GDALDriver.
Definition: gdaldriver.cpp:99
GDALMajorObjectH
void * GDALMajorObjectH
Opaque type used for the C bindings of the C++ GDALMajorObject class.
Definition: gdal.h:252
OGRGeometryH
void * OGRGeometryH
Opaque type for a geometry.
Definition: ogr_api.h:60
GDALMDArrayGetUnit
const char * GDALMDArrayGetUnit(GDALMDArrayH hArray)
Return the array unit.
Definition: gdalmultidim.cpp:6828
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) CPL_WARN_UNUSED_RESULT
Read/write a region of image data for this band.
Definition: gdalrasterband.cpp:423
GDALGetDatasetDriver
GDALDriverH GDALGetDatasetDriver(GDALDatasetH)
Fetch the driver to which this dataset relates.
Definition: gdaldataset.cpp:1308
GDALRATSetValueAsDouble
void GDALRATSetValueAsDouble(GDALRasterAttributeTableH, int, int, double)
Set field value from double.
Definition: gdal_rat.cpp:1896
GDT_Float64
Definition: gdal.h:70
GDALAttributeWriteString
int GDALAttributeWriteString(GDALAttributeH hAttr, const char *)
Write an attribute from a string value.
Definition: gdalmultidim.cpp:7216
GDALDatasetGetLayer
OGRLayerH GDALDatasetGetLayer(GDALDatasetH, int)
Fetch a layer by index.
Definition: gdaldataset.cpp:4241
OGRFeatureH
void * OGRFeatureH
Opaque type for a feature (OGRFeature)
Definition: ogr_api.h:314
GDALMDArrayRelease
void GDALMDArrayRelease(GDALMDArrayH hMDArray)
Release the GDAL in-memory object associated with a GDALMDArray.
Definition: gdalmultidim.cpp:6129
GDALGetRasterDataType
GDALDataType GDALGetRasterDataType(GDALRasterBandH)
Fetch the pixel data type for this band.
Definition: gdalrasterband.cpp:838
GDALRPCInfo::dfSAMP_OFF
double dfSAMP_OFF
Definition: gdal.h:1129
GDALMDArrayGetStructuralInfo
CSLConstList GDALMDArrayGetStructuralInfo(GDALMDArrayH hArray)
Return structural information on the array.
Definition: gdalmultidim.cpp:6686
GCI_HueBand
Definition: gdal.h:199
GDALSetDefaultHistogram
CPLErr GDALSetDefaultHistogram(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, int *panHistogram) CPL_WARN_DEPRECATED("Use GDALSetDefaultHistogramEx() instead")
Set default histogram.
Definition: gdalrasterband.cpp:5750
GDALGetRandomRasterSample
int GDALGetRandomRasterSample(GDALRasterBandH, int, float *)
Undocumented.
Definition: gdal_misc.cpp:1012
GDALExtendedDataTypeRelease
void GDALExtendedDataTypeRelease(GDALExtendedDataTypeH hEDT)
Release the GDAL in-memory object associated with a GDALExtendedDataTypeH.
Definition: gdalmultidim.cpp:5500
GDALGroupRelease
void GDALGroupRelease(GDALGroupH hGroup)
Release the GDAL in-memory object associated with a GDALGroupH.
Definition: gdalmultidim.cpp:5752
GDALRPCInfo::dfSAMP_SCALE
double dfSAMP_SCALE
Definition: gdal.h:1135
GDALWriteWorldFile
int GDALWriteWorldFile(const char *, const char *, double *)
Write ESRI world file.
Definition: gdal_misc.cpp:2116
GDAL_GCP::pszId
char * pszId
Unique identifier, often numeric.
Definition: gdal.h:663
GDALEDTComponentGetName
const char * GDALEDTComponentGetName(GDALEDTComponentH hComp)
Return the name.
Definition: gdalmultidim.cpp:5708
GDALSwapWords
void GDALSwapWords(void *pData, int nWordSize, int nWordCount, int nWordSkip)
Byte swap words in-place.
Definition: rasterio.cpp:1816
GDALGetDefaultHistogram
CPLErr GDALGetDefaultHistogram(GDALRasterBandH hBand, double *pdfMin, double *pdfMax, int *pnBuckets, int **ppanHistogram, int bForce, GDALProgressFunc pfnProgress, void *pProgressData) CPL_WARN_DEPRECATED("Use GDALGetDefaultHistogramEx() instead")
Fetch default raster histogram.
Definition: gdalrasterband.cpp:3545
GDALFillRaster
CPLErr GDALFillRaster(GDALRasterBandH hBand, double dfRealValue, double dfImaginaryValue)
Fill this band with a constant value.
Definition: gdalrasterband.cpp:1448
GDALSetDescription
void GDALSetDescription(GDALMajorObjectH, const char *)
Set object description.
Definition: gdalmajorobject.cpp:136
GRIORA_Bilinear
Definition: gdal.h:131
GFU_Name
Definition: gdal.h:1200
GRIORA_CubicSpline
Definition: gdal.h:133
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:6785
GDALMDArrayGetProcessingChunkSize
size_t * GDALMDArrayGetProcessingChunkSize(GDALMDArrayH hArray, size_t *pnCount, size_t nMaxChunkMemory)
Return an optimal chunk size for read/write oerations, given the natural block size and memory constr...
Definition: gdalmultidim.cpp:6657
GDALDatasetResetReading
void GDALDatasetResetReading(GDALDatasetH)
Reset feature reading to start on the first feature.
Definition: gdaldataset.cpp:6683
GDALExtendedDataTypeGetComponents
GDALEDTComponentH * GDALExtendedDataTypeGetComponents(GDALExtendedDataTypeH hEDT, size_t *pnCount) CPL_WARN_UNUSED_RESULT
Return the components of the data type (only valid when GetClass() == GEDTC_COMPOUND) ...
Definition: gdalmultidim.cpp:5633
GDALRATSetLinearBinning
CPLErr GDALRATSetLinearBinning(GDALRasterAttributeTableH, double, double)
Set linear binning information.
Definition: gdal_rat.cpp:504
GDALDimensionGetFullName
const char * GDALDimensionGetFullName(GDALDimensionH hDim)
Return dimension full name.
Definition: gdalmultidim.cpp:7348
GCI_BlueBand
Definition: gdal.h:197
GDALTileOrganization
GDALTileOrganization
! Enumeration to describe the tile organization
Definition: gdal.h:1349
GDALDatasetRasterIO
CPLErr GDALDatasetRasterIO(GDALDatasetH hDS, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType, int nBandCount, int *panBandCount, int nPixelSpace, int nLineSpace, int nBandSpace) CPL_WARN_UNUSED_RESULT
Read/write a region of image data from multiple bands.
Definition: gdaldataset.cpp:2569
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) CPL_WARN_UNUSED_RESULT
Create a CPLVirtualMem object from a GDAL rasterband object, with tiling organization.
Definition: gdalvirtualmem.cpp:1669
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) CPL_WARN_UNUSED_RESULT
Create a CPLVirtualMem object from a GDAL dataset object, with tiling organization.
Definition: gdalvirtualmem.cpp:1554
GDALReadWorldFile
int GDALReadWorldFile(const char *, const char *, double *)
Read ESRI world file.
Definition: gdal_misc.cpp:1958
GDALGetRasterSampleOverviewEx
GDALRasterBandH GDALGetRasterSampleOverviewEx(GDALRasterBandH, GUIntBig)
Fetch best sampling overview.
Definition: gdalrasterband.cpp:2342
GDALAccess
GDALAccess
Definition: gdal.h:113
GDALColorEntry::c4
short c4
Definition: gdal.h:1170
GDALExtendedDataTypeGetName
const char * GDALExtendedDataTypeGetName(GDALExtendedDataTypeH hEDT)
Return type name.
Definition: gdalmultidim.cpp:5513
GDALGetOverview
GDALRasterBandH GDALGetOverview(GDALRasterBandH, int)
Fetch overview raster band object.
Definition: gdalrasterband.cpp:2245
ogr_api.h
C API and defines for OGRFeature, OGRGeometry, and OGRDataSource related classes. ...
GDALGroupOpenGroup
GDALGroupH GDALGroupOpenGroup(GDALGroupH hGroup, const char *pszSubGroupName, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Open and return a sub-group.
Definition: gdalmultidim.cpp:5864
GDALExtendedDataTypeGetClass
GDALExtendedDataTypeClass GDALExtendedDataTypeGetClass(GDALExtendedDataTypeH hEDT)
Return type class.
Definition: gdalmultidim.cpp:5527
GDALGetBandNumber
int GDALGetBandNumber(GDALRasterBandH)
Fetch the band number.
Definition: gdalrasterband.cpp:2812
GDALDestroyColorTable
void GDALDestroyColorTable(GDALColorTableH)
Destroys a color table.
Definition: gdalcolortable.cpp:96
GDALGroupOpenMDArray
GDALMDArrayH GDALGroupOpenMDArray(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Open and return a multidimensional array.
Definition: gdalmultidim.cpp:5821
GDALGetRasterMaximum
double GDALGetRasterMaximum(GDALRasterBandH, int *pbSuccess)
Fetch the maximum value for this band.
Definition: gdalrasterband.cpp:1844
GDT_Float32
Definition: gdal.h:69
GFT_Integer
Definition: gdal.h:1191
GDALMDArrayGetDimensionCount
size_t GDALMDArrayGetDimensionCount(GDALMDArrayH hArray)
Return the number of dimensions.
Definition: gdalmultidim.cpp:6184
CPL_C_END
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:339
GDALRATFieldUsage
GDALRATFieldUsage
Field usage of raster attribute table.
Definition: gdal.h:1197
GDALRPCInfo::dfLAT_SCALE
double dfLAT_SCALE
Definition: gdal.h:1136
GCI_MagentaBand
Definition: gdal.h:203
GIntBig
long long GIntBig
Large signed integer type (generally 64-bit integer type).
Definition: cpl_port.h:248
GDALRATSetValueAsInt
void GDALRATSetValueAsInt(GDALRasterAttributeTableH, int, int, int)
Set field value from integer.
Definition: gdal_rat.cpp:1827
GDALGetMetadataItem
const char * GDALGetMetadataItem(GDALMajorObjectH, const char *, const char *)
Fetch single metadata item.
Definition: gdalmajorobject.cpp:361
GDALRenameDataset
CPLErr GDALRenameDataset(GDALDriverH, const char *pszNewName, const char *pszOldName)
Rename a dataset.
Definition: gdaldriver.cpp:1440
GFU_Green
Definition: gdal.h:1205
GDALEDTComponentGetType
GDALExtendedDataTypeH GDALEDTComponentGetType(GDALEDTComponentH hComp) CPL_WARN_UNUSED_RESULT
Return the data type of the component.
Definition: gdalmultidim.cpp:5736
GDALColorTableH
void * GDALColorTableH
Opaque type used for the C bindings of the C++ GDALColorTable class.
Definition: gdal.h:264
GDAL_GCP::dfGCPX
double dfGCPX
X position of GCP in georeferenced space.
Definition: gdal.h:674
GDALGetRasterBandYSize
int GDALGetRasterBandYSize(GDALRasterBandH)
Fetch YSize of raster.
Definition: gdalrasterband.cpp:2770
GDALGroupGetGroupNames
char ** GDALGroupGetGroupNames(GDALGroupH hGroup, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT
Return the list of sub-groups contained in this group.
Definition: gdalmultidim.cpp:5842
GDALAttributeReadAsStringArray
char ** GDALAttributeReadAsStringArray(GDALAttributeH hAttr) CPL_WARN_UNUSED_RESULT
Return the value of an attribute as an array of strings.
Definition: gdalmultidim.cpp:7113
GDALExtendedDataTypeGetSize
size_t GDALExtendedDataTypeGetSize(GDALExtendedDataTypeH hEDT)
Return data type size in bytes.
Definition: gdalmultidim.cpp:5555
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:161
GDALRPCInfo::dfMAX_LONG
double dfMAX_LONG
Definition: gdal.h:1147
GDALSetGCPs2
CPLErr GDALSetGCPs2(GDALDatasetH, int, const GDAL_GCP *, OGRSpatialReferenceH)
Assign GCPs.
Definition: gdaldataset.cpp:1871
GFU_GreenMax
Definition: gdal.h:1213
GDALDataTypeIsInteger
int GDALDataTypeIsInteger(GDALDataType)
Is data type integer? (might be complex)
Definition: gdal_misc.cpp:445
GDALARUnlockBuffer
void GDALARUnlockBuffer(GDALAsyncReaderH hARIO)
Unlock image buffer.
Definition: gdaldefaultasync.cpp:268
GCI_BlackBand
Definition: gdal.h:205
GDALDatasetCommitTransaction
OGRErr GDALDatasetCommitTransaction(GDALDatasetH hDS)
For datasources which support transactions, CommitTransaction commits a transaction.
Definition: gdaldataset.cpp:7185
GRIORA_Average
Definition: gdal.h:135
GDALRasterIOExtraArg::dfXSize
double dfXSize
Definition: gdal.h:170
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:3708
GDALGetDataTypeSizeBits
int GDALGetDataTypeSizeBits(GDALDataType eDataType)
Get data type size in bits.
Definition: gdal_misc.cpp:350
GDALMDArrayGetNoDataValueAsDouble
double GDALMDArrayGetNoDataValueAsDouble(GDALMDArrayH hArray, int *pbHasNoDataValue)
Return the nodata value as a double.
Definition: gdalmultidim.cpp:6465
GDALDestroyDriver
void GDALDestroyDriver(GDALDriverH)
Destroy a GDALDriver.
Definition: gdaldriver.cpp:118
OGRErr
int OGRErr
Type for a OGR error.
Definition: ogr_core.h:318
GDALColorInterp
GDALColorInterp
Definition: gdal.h:190
GDALGetDataTypeSizeBytes
int GDALGetDataTypeSizeBytes(GDALDataType)
Get data type size in bytes.
Definition: gdal_misc.cpp:305
GDALGetRasterScale
double GDALGetRasterScale(GDALRasterBandH, int *pbSuccess)
Fetch the raster value scale.
Definition: gdalrasterband.cpp:2550
GDALSetGeoTransform
CPLErr GDALSetGeoTransform(GDALDatasetH, double *)
Set the affine transformation coefficients.
Definition: gdaldataset.cpp:1234
GDALRasterIOExtraArg::dfYOff
double dfYOff
Definition: gdal.h:168
GEDTC_NUMERIC
Numeric value.
Definition: gdal.h:280
GCI_Max
Definition: gdal.h:209
GDALGetRasterSampleOverview
GDALRasterBandH GDALGetRasterSampleOverview(GDALRasterBandH, int)
Fetch best sampling overview.
Definition: gdalrasterband.cpp:2319
GDAL_GCP::dfGCPLine
double dfGCPLine
Line (y) location of GCP on raster.
Definition: gdal.h:671
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:3616
GDALDumpOpenDatasets
int GDALDumpOpenDatasets(FILE *)
List open datasets.
Definition: gdaldataset.cpp:3703
GDALDimensionGetSize
GUInt64 GDALDimensionGetSize(GDALDimensionH hDim)
Return the size, that is the number of values along the dimension.
Definition: gdalmultidim.cpp:7390
GRIORA_Cubic
Definition: gdal.h:132
GDALGetRasterOffset
double GDALGetRasterOffset(GDALRasterBandH, int *pbSuccess)
Fetch the raster value offset.
Definition: gdalrasterband.cpp:2444
GDALMDArrayGetBlockSize
GUInt64 * GDALMDArrayGetBlockSize(GDALMDArrayH hArray, size_t *pnCount)
Return the "natural" block size of the array along all dimensions.
Definition: gdalmultidim.cpp:6621
GDALInvGeoTransform
int GDALInvGeoTransform(double *padfGeoTransformIn, double *padfInvGeoTransformOut) CPL_WARN_UNUSED_RESULT
Invert Geotransform.
Definition: gdaltransformer.cpp:3787
GDT_CInt16
Definition: gdal.h:71
GCI_GrayIndex
Definition: gdal.h:193
GDALDatasetExecuteSQL
OGRLayerH GDALDatasetExecuteSQL(GDALDatasetH, const char *, OGRGeometryH, const char *)
Execute an SQL statement against the data store.
Definition: gdaldataset.cpp:4562
GDALExtendedDataTypeCreateString
GDALExtendedDataTypeH GDALExtendedDataTypeCreateString(size_t nMaxStringLength) CPL_WARN_UNUSED_RESULT
Return a new GDALExtendedDataType of class GEDTC_STRING.
Definition: gdalmultidim.cpp:5450
GDALFlushCacheBlock
int GDALFlushCacheBlock(void)
Try to flush one cached raster block.
Definition: gdalrasterblock.cpp:372
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:3387
GDALEndAsyncReader
void GDALEndAsyncReader(GDALDatasetH hDS, GDALAsyncReaderH hAsynchReaderH)
End asynchronous request.
Definition: gdaldataset.cpp:3952
GDALGetBlockSize
void GDALGetBlockSize(GDALRasterBandH, int *pnXSize, int *pnYSize)
Fetch the "natural" block size of this band.
Definition: gdalrasterband.cpp:905
GDALFindDataTypeForValue
GDALDataType GDALFindDataTypeForValue(double dValue, int bComplex)
Finds the smallest data type able to support the provided value.
Definition: gdal_misc.cpp:281
GDALDatasetSetStyleTableDirectly
void GDALDatasetSetStyleTableDirectly(GDALDatasetH, OGRStyleTableH)
Set dataset style table.
Definition: gdaldataset.cpp:4621
OGRStyleTableH
void * OGRStyleTableH
Opaque type for a style table (OGRStyleTable)
Definition: ogr_api.h:316
GInt64
GIntBig GInt64
Signed 64 bit integer type.
Definition: cpl_port.h:267
GDALSetDefaultRAT
CPLErr GDALSetDefaultRAT(GDALRasterBandH, GDALRasterAttributeTableH)
Set default Raster Attribute Table.
Definition: gdalrasterband.cpp:5893
GDALGetFileList
char ** GDALGetFileList(GDALDatasetH)
Fetch files forming dataset.
Definition: gdaldataset.cpp:2987
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:233
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:223
GA_ReadOnly
Definition: gdal.h:114
GDALAttributeWriteDouble
int GDALAttributeWriteDouble(GDALAttributeH hAttr, double)
Write an attribute from a double value.
Definition: gdalmultidim.cpp:7259
GDALRATDumpReadable
void GDALRATDumpReadable(GDALRasterAttributeTableH, FILE *)
Dump RAT in readable form.
Definition: gdal_rat.cpp:1159
GDALMDArrayGetTotalElementsCount
GUInt64 GDALMDArrayGetTotalElementsCount(GDALMDArrayH hArray)
Return the total number of values in the array.
Definition: gdalmultidim.cpp:6170
GDAL_GCP::dfGCPZ
double dfGCPZ
Elevation of GCP, or zero if not known.
Definition: gdal.h:680
GDALGetGCPSpatialRef
OGRSpatialReferenceH GDALGetGCPSpatialRef(GDALDatasetH)
Get output spatial reference system for GCPs.
Definition: gdaldataset.cpp:1612
GFT_String
Definition: gdal.h:1193
GDALRasterIOExtraArg::eResampleAlg
GDALRIOResampleAlg eResampleAlg
Definition: gdal.h:153
GDALDecToPackedDMS
double GDALDecToPackedDMS(double)
Convert decimal degrees into packed DMS value (DDDMMMSSS.SS).
Definition: gdal_misc.cpp:2365
GPI_Gray
Definition: gdal.h:218
GDALCreateRasterAttributeTable
GDALRasterAttributeTableH GDALCreateRasterAttributeTable(void) CPL_WARN_UNUSED_RESULT
Construct empty table.
Definition: gdal_rat.cpp:1203
GDALRATRemoveStatistics
void GDALRATRemoveStatistics(GDALRasterAttributeTableH)
Remove Statistics from RAT.
Definition: gdal_rat.cpp:2252
GDALSetRasterStatistics
CPLErr GDALSetRasterStatistics(GDALRasterBandH hBand, double dfMin, double dfMax, double dfMean, double dfStdDev)
Set statistics on band.
Definition: gdalrasterband.cpp:5434
GDALMDArrayH
struct GDALMDArrayHS * GDALMDArrayH
Opaque type for C++ GDALMDArray.
Definition: gdal.h:294
GDAL_GCP
Ground Control Point.
Definition: gdal.h:660
CPLErr
CPLErr
Error category.
Definition: cpl_error.h:52
GDALDimensionRelease
void GDALDimensionRelease(GDALDimensionH hDim)
Release the GDAL in-memory object associated with a GDALDimension.
Definition: gdalmultidim.cpp:7321
GDALGetPaletteInterpretation
GDALPaletteInterp GDALGetPaletteInterpretation(GDALColorTableH)
Fetch palette interpretation.
Definition: gdalcolortable.cpp:356
GDALGetCacheUsed64
GIntBig GDALGetCacheUsed64(void)
Get cache memory used.
Definition: gdalrasterblock.cpp:355
GDALGetBandDataset
GDALDatasetH GDALGetBandDataset(GDALRasterBandH)
Fetch the owning dataset handle.
Definition: gdalrasterband.cpp:2853
GDALGetRasterBandXSize
int GDALGetRasterBandXSize(GDALRasterBandH)
Fetch XSize of raster.
Definition: gdalrasterband.cpp:2733
GDALDatasetRollbackTransaction
OGRErr GDALDatasetRollbackTransaction(GDALDatasetH hDS)
For datasources which support transactions, RollbackTransaction will roll back a datasource to its st...
Definition: gdaldataset.cpp:7237
GDALDereferenceDataset
int GDALDereferenceDataset(GDALDatasetH)
Subtract one from dataset reference count.
Definition: gdaldataset.cpp:1378
GDALRATGetTypeOfCol
GDALRATFieldType GDALRATGetTypeOfCol(GDALRasterAttributeTableH, int)
Fetch column type.
Definition: gdal_rat.cpp:1398
GDALGetCacheUsed
int GDALGetCacheUsed(void)
Get cache memory used.
Definition: gdalrasterblock.cpp:325
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:1610
GFU_Max
Definition: gdal.h:1202
GDALComputeBandStats
CPLErr GDALComputeBandStats(GDALRasterBandH hBand, int nSampleStep, double *pdfMean, double *pdfStdDev, GDALProgressFunc pfnProgress, void *pProgressData)
Undocumented.
Definition: overview.cpp:3960
GDALAttributeRelease
void GDALAttributeRelease(GDALAttributeH hAttr)
Release the GDAL in-memory object associated with a GDALAttribute.
Definition: gdalmultidim.cpp:6877
GEDTC_STRING
String value.
Definition: gdal.h:282
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:942
GDALAttributeGetDataType
GDALExtendedDataTypeH GDALAttributeGetDataType(GDALAttributeH hAttr) CPL_WARN_UNUSED_RESULT
Return the data type.
Definition: gdalmultidim.cpp:6978
GDALGetMetadata
char ** GDALGetMetadata(GDALMajorObjectH, const char *)
Fetch metadata.
Definition: gdalmajorobject.cpp:266
GF_Read
Definition: gdal.h:120
GDALCreate
GDALDatasetH GDALCreate(GDALDriverH hDriver, const char *, int, int, int, GDALDataType, CSLConstList) CPL_WARN_UNUSED_RESULT
Create a new dataset with this driver.
Definition: gdaldriver.cpp:317