GDAL
gdal.h
Go to the documentation of this file.
1 /******************************************************************************
2  * $Id: gdal.h 9048844951bd8b31f179f709126a1c3fb0cd4cc1 2021-09-05 14:11:10 +0200 Even Rouault $
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 #include <stdbool.h>
54 
55 /* -------------------------------------------------------------------- */
56 /* Significant constants. */
57 /* -------------------------------------------------------------------- */
58 
60 
62 typedef enum { GDT_Unknown = 0, GDT_Byte = 1, GDT_UInt16 = 2, GDT_Int16 = 3, GDT_UInt32 = 4, GDT_Int32 = 5,
69  /* TODO?(#6879): GDT_UInt64 */
70  /* TODO?(#6879): GDT_Int64 */ GDT_Float32 = 6, GDT_Float64 = 7, GDT_CInt16 = 8, GDT_CInt32 = 9,
75  /* TODO?(#6879): GDT_CInt64 */ GDT_CFloat32 = 10, GDT_CFloat64 = 11,
78  GDT_TypeCount = 12 /* maximum type # + 1 */
79 } GDALDataType;
80 
81 int CPL_DLL CPL_STDCALL GDALGetDataTypeSize( GDALDataType ); // Deprecated.
82 int CPL_DLL CPL_STDCALL GDALGetDataTypeSizeBits( GDALDataType eDataType );
83 int CPL_DLL CPL_STDCALL GDALGetDataTypeSizeBytes( GDALDataType );
84 int CPL_DLL CPL_STDCALL GDALDataTypeIsComplex( GDALDataType );
85 int CPL_DLL CPL_STDCALL GDALDataTypeIsInteger( GDALDataType );
86 int CPL_DLL CPL_STDCALL GDALDataTypeIsFloating( GDALDataType );
87 int CPL_DLL CPL_STDCALL GDALDataTypeIsSigned( GDALDataType );
88 const char CPL_DLL * CPL_STDCALL GDALGetDataTypeName( GDALDataType );
89 GDALDataType CPL_DLL CPL_STDCALL GDALGetDataTypeByName( const char * );
91 GDALDataType CPL_DLL CPL_STDCALL GDALDataTypeUnionWithValue( GDALDataType eDT, double dValue, int bComplex );
92 GDALDataType CPL_DLL CPL_STDCALL GDALFindDataType( int nBits, int bSigned, int bFloating, int bComplex );
93 GDALDataType CPL_DLL CPL_STDCALL GDALFindDataTypeForValue( double dValue, int bComplex );
94 double CPL_DLL GDALAdjustValueToDataType( GDALDataType eDT, double dfValue, int* pbClamped, int* pbRounded );
96 int CPL_DLL CPL_STDCALL GDALDataTypeIsConversionLossy( GDALDataType eTypeFrom,
97  GDALDataType eTypeTo );
98 
102 typedef enum
103 {
104  GARIO_PENDING = 0,
105  GARIO_UPDATE = 1,
106  GARIO_ERROR = 2,
107  GARIO_COMPLETE = 3,
108  GARIO_TypeCount = 4
110 
111 const char CPL_DLL * CPL_STDCALL GDALGetAsyncStatusTypeName( GDALAsyncStatusType );
112 GDALAsyncStatusType CPL_DLL CPL_STDCALL GDALGetAsyncStatusTypeByName( const char * );
113 
115 typedef enum { GA_ReadOnly = 0, GA_Update = 1
119 
121 typedef enum { GF_Read = 0, GF_Write = 1
125 
126 /* NOTE: values are selected to be consistent with GDALResampleAlg of alg/gdalwarper.h */
130 typedef enum
141  /* NOTE: values 8 to 13 are reserved for max,min,med,Q1,Q3,sum */
143  GRIORA_RESERVED_START = 8,
144  GRIORA_RESERVED_END = 13,
151  GRIORA_LAST = GRIORA_RMS
154 
155 /* NOTE to developers: only add members, and if so edit INIT_RASTERIO_EXTRA_ARG */
160 typedef struct
161 {
163  int nVersion;
164 
167 
169  GDALProgressFunc pfnProgress;
172 
179  double dfXOff;
181  double dfYOff;
183  double dfXSize;
185  double dfYSize;
187 
188 #ifndef DOXYGEN_SKIP
189 #define RASTERIO_EXTRA_ARG_CURRENT_VERSION 1
190 #endif
191 
195 #define INIT_RASTERIO_EXTRA_ARG(s) \
196  do { (s).nVersion = RASTERIO_EXTRA_ARG_CURRENT_VERSION; \
197  (s).eResampleAlg = GRIORA_NearestNeighbour; \
198  (s).pfnProgress = CPL_NULLPTR; \
199  (s).pProgressData = CPL_NULLPTR; \
200  (s).bFloatingPointWindowValidity = FALSE; } while(0)
201 
203 typedef enum
224 
225 const char CPL_DLL *GDALGetColorInterpretationName( GDALColorInterp );
226 GDALColorInterp CPL_DLL GDALGetColorInterpretationByName( const char *pszName );
227 
229 typedef enum
230 { GPI_Gray=0, GPI_RGB=1, GPI_CMYK=2, GPI_HLS=3
236 
238 
239 /* "well known" metadata items. */
240 
243 #define GDALMD_AREA_OR_POINT "AREA_OR_POINT"
246 # define GDALMD_AOP_AREA "Area"
249 # define GDALMD_AOP_POINT "Point"
250 
251 /* -------------------------------------------------------------------- */
252 /* GDAL Specific error codes. */
253 /* */
254 /* error codes 100 to 299 reserved for GDAL. */
255 /* -------------------------------------------------------------------- */
256 #ifndef DOXYGEN_SKIP
257 #define CPLE_WrongFormat CPL_STATIC_CAST(CPLErrorNum, 200)
258 #endif
259 
260 /* -------------------------------------------------------------------- */
261 /* Define handle types related to various internal classes. */
262 /* -------------------------------------------------------------------- */
263 
265 typedef void *GDALMajorObjectH;
266 
268 typedef void *GDALDatasetH;
269 
271 typedef void *GDALRasterBandH;
272 
274 typedef void *GDALDriverH;
275 
277 typedef void *GDALColorTableH;
278 
281 
283 typedef void *GDALAsyncReaderH;
284 
287 
291 typedef enum {
299 
303 typedef enum {
309 
311 typedef struct GDALExtendedDataTypeHS* GDALExtendedDataTypeH;
313 typedef struct GDALEDTComponentHS* GDALEDTComponentH;
315 typedef struct GDALGroupHS* GDALGroupH;
317 typedef struct GDALMDArrayHS* GDALMDArrayH;
319 typedef struct GDALAttributeHS* GDALAttributeH;
321 typedef struct GDALDimensionHS* GDALDimensionH;
322 
323 /* ==================================================================== */
324 /* Registration/driver related. */
325 /* ==================================================================== */
326 
328 #define GDAL_DMD_LONGNAME "DMD_LONGNAME"
329 
331 #define GDAL_DMD_HELPTOPIC "DMD_HELPTOPIC"
332 
334 #define GDAL_DMD_MIMETYPE "DMD_MIMETYPE"
335 
337 #define GDAL_DMD_EXTENSION "DMD_EXTENSION"
338 
343 #define GDAL_DMD_CONNECTION_PREFIX "DMD_CONNECTION_PREFIX"
344 
348 #define GDAL_DMD_EXTENSIONS "DMD_EXTENSIONS"
349 
351 #define GDAL_DMD_CREATIONOPTIONLIST "DMD_CREATIONOPTIONLIST"
352 
356 #define GDAL_DMD_MULTIDIM_DATASET_CREATIONOPTIONLIST "DMD_MULTIDIM_DATASET_CREATIONOPTIONLIST"
357 
361 #define GDAL_DMD_MULTIDIM_GROUP_CREATIONOPTIONLIST "DMD_MULTIDIM_GROUP_CREATIONOPTIONLIST"
362 
366 #define GDAL_DMD_MULTIDIM_DIMENSION_CREATIONOPTIONLIST "DMD_MULTIDIM_DIMENSION_CREATIONOPTIONLIST"
367 
371 #define GDAL_DMD_MULTIDIM_ARRAY_CREATIONOPTIONLIST "DMD_MULTIDIM_ARRAY_CREATIONOPTIONLIST"
372 
376 #define GDAL_DMD_MULTIDIM_ATTRIBUTE_CREATIONOPTIONLIST "DMD_MULTIDIM_ATTRIBUTE_CREATIONOPTIONLIST"
377 
381 #define GDAL_DMD_OPENOPTIONLIST "DMD_OPENOPTIONLIST"
382 
384 #define GDAL_DMD_CREATIONDATATYPES "DMD_CREATIONDATATYPES"
385 
389 #define GDAL_DMD_CREATIONFIELDDATATYPES "DMD_CREATIONFIELDDATATYPES"
390 
394 #define GDAL_DMD_CREATIONFIELDDATASUBTYPES "DMD_CREATIONFIELDDATASUBTYPES"
395 
404 #define GDAL_DMD_SUBDATASETS "DMD_SUBDATASETS"
405 
407 #define GDAL_DCAP_OPEN "DCAP_OPEN"
408 
417 #define GDAL_DCAP_CREATE "DCAP_CREATE"
418 
423 #define GDAL_DCAP_CREATE_MULTIDIMENSIONAL "DCAP_CREATE_MULTIDIMENSIONAL"
424 
433 #define GDAL_DCAP_CREATECOPY "DCAP_CREATECOPY"
434 
440 #define GDAL_DCAP_CREATECOPY_MULTIDIMENSIONAL "DCAP_CREATECOPY_MULTIDIMENSIONAL"
441 
445 #define GDAL_DCAP_MULTIDIM_RASTER "DCAP_MULTIDIM_RASTER"
446 
448 #define GDAL_DCAP_SUBCREATECOPY "DCAP_SUBCREATECOPY"
449 
451 #define GDAL_DCAP_VIRTUALIO "DCAP_VIRTUALIO"
452 
456 #define GDAL_DCAP_RASTER "DCAP_RASTER"
457 
461 #define GDAL_DCAP_VECTOR "DCAP_VECTOR"
462 
466 #define GDAL_DCAP_GNM "DCAP_GNM"
467 
471 #define GDAL_DCAP_NOTNULL_FIELDS "DCAP_NOTNULL_FIELDS"
472 
476 #define GDAL_DCAP_UNIQUE_FIELDS "DCAP_UNIQUE_FIELDS"
477 
481 #define GDAL_DCAP_DEFAULT_FIELDS "DCAP_DEFAULT_FIELDS"
482 
486 #define GDAL_DCAP_NOTNULL_GEOMFIELDS "DCAP_NOTNULL_GEOMFIELDS"
487 
493 #define GDAL_DCAP_NONSPATIAL "DCAP_NONSPATIAL"
494 
498 #define GDAL_DCAP_FEATURE_STYLES "DCAP_FEATURE_STYLES"
499 
503 #define GDAL_DCAP_COORDINATE_EPOCH "DCAP_COORDINATE_EPOCH"
504 
513 #define GDAL_DCAP_MULTIPLE_VECTOR_LAYERS "DCAP_MULTIPLE_VECTOR_LAYERS"
514 
518 #define GDAL_DIM_TYPE_HORIZONTAL_X "HORIZONTAL_X"
519 
523 #define GDAL_DIM_TYPE_HORIZONTAL_Y "HORIZONTAL_Y"
524 
528 #define GDAL_DIM_TYPE_VERTICAL "VERTICAL"
529 
533 #define GDAL_DIM_TYPE_TEMPORAL "TEMPORAL"
534 
538 #define GDAL_DIM_TYPE_PARAMETRIC "PARAMETRIC"
539 
540 
541 void CPL_DLL CPL_STDCALL GDALAllRegister( void );
542 
543 GDALDatasetH CPL_DLL CPL_STDCALL GDALCreate( GDALDriverH hDriver,
544  const char *, int, int, int, GDALDataType,
546 GDALDatasetH CPL_DLL CPL_STDCALL
547 GDALCreateCopy( GDALDriverH, const char *, GDALDatasetH,
548  int, CSLConstList, GDALProgressFunc, void * ) CPL_WARN_UNUSED_RESULT;
549 
550 GDALDriverH CPL_DLL CPL_STDCALL GDALIdentifyDriver( const char * pszFilename,
551  CSLConstList papszFileList );
552 
553 GDALDriverH CPL_DLL CPL_STDCALL GDALIdentifyDriverEx(
554  const char *pszFilename, unsigned int nIdentifyFlags,
555  const char *const *papszAllowedDrivers, const char *const *papszFileList);
556 
557 GDALDatasetH CPL_DLL CPL_STDCALL
558 GDALOpen( const char *pszFilename, GDALAccess eAccess ) CPL_WARN_UNUSED_RESULT;
559 GDALDatasetH CPL_DLL CPL_STDCALL GDALOpenShared( const char *, GDALAccess ) CPL_WARN_UNUSED_RESULT;
560 
561 /* Note: we define GDAL_OF_READONLY and GDAL_OF_UPDATE to be on purpose */
562 /* equals to GA_ReadOnly and GA_Update */
563 
568 #define GDAL_OF_READONLY 0x00
569 
574 #define GDAL_OF_UPDATE 0x01
575 
580 #define GDAL_OF_ALL 0x00
581 
586 #define GDAL_OF_RASTER 0x02
587 
592 #define GDAL_OF_VECTOR 0x04
593 
598 #define GDAL_OF_GNM 0x08
599 
604 #define GDAL_OF_MULTIDIM_RASTER 0x10
605 
606 #ifndef DOXYGEN_SKIP
607 #define GDAL_OF_KIND_MASK 0x1E
608 #endif
609 
614 #define GDAL_OF_SHARED 0x20
615 
620 #define GDAL_OF_VERBOSE_ERROR 0x40
621 
628 #define GDAL_OF_INTERNAL 0x80
629 
639 #define GDAL_OF_DEFAULT_BLOCK_ACCESS 0
640 
649 #define GDAL_OF_ARRAY_BLOCK_ACCESS 0x100
650 
659 #define GDAL_OF_HASHSET_BLOCK_ACCESS 0x200
660 
661 #ifndef DOXYGEN_SKIP
662 /* Reserved for a potential future alternative to GDAL_OF_ARRAY_BLOCK_ACCESS
663  * and GDAL_OF_HASHSET_BLOCK_ACCESS */
664 #define GDAL_OF_RESERVED_1 0x300
665 
667 #define GDAL_OF_BLOCK_ACCESS_MASK 0x300
668 #endif
669 
670 GDALDatasetH CPL_DLL CPL_STDCALL GDALOpenEx( const char* pszFilename,
671  unsigned int nOpenFlags,
672  const char* const* papszAllowedDrivers,
673  const char* const* papszOpenOptions,
674  const char* const* papszSiblingFiles ) CPL_WARN_UNUSED_RESULT;
675 
676 int CPL_DLL CPL_STDCALL GDALDumpOpenDatasets( FILE * );
677 
678 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDriverByName( const char * );
679 int CPL_DLL CPL_STDCALL GDALGetDriverCount( void );
680 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDriver( int );
681 GDALDriverH CPL_DLL CPL_STDCALL GDALCreateDriver( void );
682 void CPL_DLL CPL_STDCALL GDALDestroyDriver( GDALDriverH );
683 int CPL_DLL CPL_STDCALL GDALRegisterDriver( GDALDriverH );
684 void CPL_DLL CPL_STDCALL GDALDeregisterDriver( GDALDriverH );
685 void CPL_DLL CPL_STDCALL GDALDestroyDriverManager( void );
686 #ifndef DOXYGEN_SKIP
687 void CPL_DLL GDALDestroy( void );
688 #endif
689 CPLErr CPL_DLL CPL_STDCALL GDALDeleteDataset( GDALDriverH, const char * );
690 CPLErr CPL_DLL CPL_STDCALL GDALRenameDataset( GDALDriverH,
691  const char * pszNewName,
692  const char * pszOldName );
693 CPLErr CPL_DLL CPL_STDCALL GDALCopyDatasetFiles( GDALDriverH,
694  const char * pszNewName,
695  const char * pszOldName);
696 int CPL_DLL CPL_STDCALL GDALValidateCreationOptions( GDALDriverH,
697  CSLConstList papszCreationOptions);
698 
699 /* The following are deprecated */
700 const char CPL_DLL * CPL_STDCALL GDALGetDriverShortName( GDALDriverH );
701 const char CPL_DLL * CPL_STDCALL GDALGetDriverLongName( GDALDriverH );
702 const char CPL_DLL * CPL_STDCALL GDALGetDriverHelpTopic( GDALDriverH );
703 const char CPL_DLL * CPL_STDCALL GDALGetDriverCreationOptionList( GDALDriverH );
704 
705 /* ==================================================================== */
706 /* GDAL_GCP */
707 /* ==================================================================== */
708 
710 typedef struct
711 {
713  char *pszId;
714 
716  char *pszInfo;
717 
719  double dfGCPPixel;
721  double dfGCPLine;
722 
724  double dfGCPX;
725 
727  double dfGCPY;
728 
730  double dfGCPZ;
731 } GDAL_GCP;
732 
733 void CPL_DLL CPL_STDCALL GDALInitGCPs( int, GDAL_GCP * );
734 void CPL_DLL CPL_STDCALL GDALDeinitGCPs( int, GDAL_GCP * );
735 GDAL_GCP CPL_DLL * CPL_STDCALL GDALDuplicateGCPs( int, const GDAL_GCP * );
736 
737 int CPL_DLL CPL_STDCALL
738 GDALGCPsToGeoTransform( int nGCPCount, const GDAL_GCP *pasGCPs,
739  double *padfGeoTransform, int bApproxOK ) CPL_WARN_UNUSED_RESULT;
740 int CPL_DLL CPL_STDCALL
741 GDALInvGeoTransform( double *padfGeoTransformIn,
742  double *padfInvGeoTransformOut ) CPL_WARN_UNUSED_RESULT;
743 void CPL_DLL CPL_STDCALL GDALApplyGeoTransform( double *, double, double,
744  double *, double * );
745 void CPL_DLL GDALComposeGeoTransforms(const double *padfGeoTransform1,
746  const double *padfGeoTransform2,
747  double *padfGeoTransformOut);
748 
749 /* ==================================================================== */
750 /* major objects (dataset, and, driver, drivermanager). */
751 /* ==================================================================== */
752 
753 char CPL_DLL ** CPL_STDCALL GDALGetMetadataDomainList( GDALMajorObjectH hObject );
754 char CPL_DLL ** CPL_STDCALL GDALGetMetadata( GDALMajorObjectH, const char * );
756  const char * );
757 const char CPL_DLL * CPL_STDCALL
758 GDALGetMetadataItem( GDALMajorObjectH, const char *, const char * );
759 CPLErr CPL_DLL CPL_STDCALL
760 GDALSetMetadataItem( GDALMajorObjectH, const char *, const char *,
761  const char * );
762 const char CPL_DLL * CPL_STDCALL GDALGetDescription( GDALMajorObjectH );
763 void CPL_DLL CPL_STDCALL GDALSetDescription( GDALMajorObjectH, const char * );
764 
765 /* ==================================================================== */
766 /* GDALDataset class ... normally this represents one file. */
767 /* ==================================================================== */
768 
770 #define GDAL_DS_LAYER_CREATIONOPTIONLIST "DS_LAYER_CREATIONOPTIONLIST"
771 
772 GDALDriverH CPL_DLL CPL_STDCALL GDALGetDatasetDriver( GDALDatasetH );
773 char CPL_DLL ** CPL_STDCALL GDALGetFileList( GDALDatasetH );
774 void CPL_DLL CPL_STDCALL GDALClose( GDALDatasetH );
775 int CPL_DLL CPL_STDCALL GDALGetRasterXSize( GDALDatasetH );
776 int CPL_DLL CPL_STDCALL GDALGetRasterYSize( GDALDatasetH );
777 int CPL_DLL CPL_STDCALL GDALGetRasterCount( GDALDatasetH );
778 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetRasterBand( GDALDatasetH, int );
779 
780 CPLErr CPL_DLL CPL_STDCALL GDALAddBand( GDALDatasetH hDS, GDALDataType eType,
781  CSLConstList papszOptions );
782 
783 GDALAsyncReaderH CPL_DLL CPL_STDCALL
784 GDALBeginAsyncReader(GDALDatasetH hDS, int nXOff, int nYOff,
785  int nXSize, int nYSize,
786  void *pBuf, int nBufXSize, int nBufYSize,
787  GDALDataType eBufType, int nBandCount, int* panBandMap,
788  int nPixelSpace, int nLineSpace, int nBandSpace,
789  CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
790 
791 void CPL_DLL CPL_STDCALL
793 
794 CPLErr CPL_DLL CPL_STDCALL GDALDatasetRasterIO(
795  GDALDatasetH hDS, GDALRWFlag eRWFlag,
796  int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
797  void * pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType,
798  int nBandCount, int *panBandCount,
799  int nPixelSpace, int nLineSpace, int nBandSpace) CPL_WARN_UNUSED_RESULT;
800 
801 CPLErr CPL_DLL CPL_STDCALL GDALDatasetRasterIOEx(
802  GDALDatasetH hDS, GDALRWFlag eRWFlag,
803  int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
804  void * pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType,
805  int nBandCount, int *panBandCount,
806  GSpacing nPixelSpace, GSpacing nLineSpace, GSpacing nBandSpace,
808 
809 CPLErr CPL_DLL CPL_STDCALL GDALDatasetAdviseRead( GDALDatasetH hDS,
810  int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
811  int nBXSize, int nBYSize, GDALDataType eBDataType,
812  int nBandCount, int *panBandCount, CSLConstList papszOptions );
813 
814 const char CPL_DLL * CPL_STDCALL GDALGetProjectionRef( GDALDatasetH );
816 CPLErr CPL_DLL CPL_STDCALL GDALSetProjection( GDALDatasetH, const char * );
818 CPLErr CPL_DLL CPL_STDCALL GDALGetGeoTransform( GDALDatasetH, double * );
819 CPLErr CPL_DLL CPL_STDCALL GDALSetGeoTransform( GDALDatasetH, double * );
820 
821 int CPL_DLL CPL_STDCALL GDALGetGCPCount( GDALDatasetH );
822 const char CPL_DLL * CPL_STDCALL GDALGetGCPProjection( GDALDatasetH );
824 const GDAL_GCP CPL_DLL * CPL_STDCALL GDALGetGCPs( GDALDatasetH );
825 CPLErr CPL_DLL CPL_STDCALL GDALSetGCPs( GDALDatasetH, int, const GDAL_GCP *,
826  const char * );
827 CPLErr CPL_DLL GDALSetGCPs2( GDALDatasetH, int, const GDAL_GCP *,
829 
830 void CPL_DLL * CPL_STDCALL GDALGetInternalHandle( GDALDatasetH, const char * );
831 int CPL_DLL CPL_STDCALL GDALReferenceDataset( GDALDatasetH );
832 int CPL_DLL CPL_STDCALL GDALDereferenceDataset( GDALDatasetH );
833 int CPL_DLL CPL_STDCALL GDALReleaseDataset( GDALDatasetH );
834 
835 CPLErr CPL_DLL CPL_STDCALL
836 GDALBuildOverviews( GDALDatasetH, const char *, int, int *,
837  int, int *, GDALProgressFunc, void * ) CPL_WARN_UNUSED_RESULT;
838 void CPL_DLL CPL_STDCALL GDALGetOpenDatasets( GDALDatasetH **hDS, int *pnCount );
839 int CPL_DLL CPL_STDCALL GDALGetAccess( GDALDatasetH hDS );
840 void CPL_DLL CPL_STDCALL GDALFlushCache( GDALDatasetH hDS );
841 
842 CPLErr CPL_DLL CPL_STDCALL
843  GDALCreateDatasetMaskBand( GDALDatasetH hDS, int nFlags );
844 
845 CPLErr CPL_DLL CPL_STDCALL GDALDatasetCopyWholeRaster(
846  GDALDatasetH hSrcDS, GDALDatasetH hDstDS, CSLConstList papszOptions,
847  GDALProgressFunc pfnProgress, void *pProgressData ) CPL_WARN_UNUSED_RESULT;
848 
849 CPLErr CPL_DLL CPL_STDCALL GDALRasterBandCopyWholeRaster(
850  GDALRasterBandH hSrcBand, GDALRasterBandH hDstBand,
851  const char * const * constpapszOptions,
852  GDALProgressFunc pfnProgress, void *pProgressData ) CPL_WARN_UNUSED_RESULT;
853 
854 CPLErr CPL_DLL
856  int nOverviewCount, GDALRasterBandH *pahOverviewBands,
857  const char *pszResampling,
858  GDALProgressFunc pfnProgress, void *pProgressData );
859 
862 OGRLayerH CPL_DLL GDALDatasetGetLayerByName( GDALDatasetH, const char * );
863 int CPL_DLL GDALDatasetIsLayerPrivate( GDALDatasetH, int );
865 OGRLayerH CPL_DLL GDALDatasetCreateLayer( GDALDatasetH, const char *,
867  CSLConstList );
868 OGRLayerH CPL_DLL GDALDatasetCopyLayer( GDALDatasetH, OGRLayerH, const char *,
869  CSLConstList );
870 void CPL_DLL GDALDatasetResetReading( GDALDatasetH );
872  OGRLayerH* phBelongingLayer,
873  double* pdfProgressPct,
874  GDALProgressFunc pfnProgress,
875  void* pProgressData );
876 int CPL_DLL GDALDatasetTestCapability( GDALDatasetH, const char * );
877 OGRLayerH CPL_DLL GDALDatasetExecuteSQL( GDALDatasetH, const char *,
878  OGRGeometryH, const char * );
884 OGRErr CPL_DLL GDALDatasetStartTransaction(GDALDatasetH hDS, int bForce);
887 void CPL_DLL GDALDatasetClearStatistics(GDALDatasetH hDS);
888 
890  const char* pszName);
891 bool CPL_DLL GDALDatasetAddFieldDomain(GDALDatasetH hDS,
892  OGRFieldDomainH hFieldDomain,
893  char** ppszFailureReason);
894 
895 /* ==================================================================== */
896 /* GDALRasterBand ... one band/channel in a dataset. */
897 /* ==================================================================== */
898 
899 /* Note: the only user of SRCVAL() was frmts/vrt/pixelfunctions.cpp and we no */
900 /* longer use it. */
901 
906 #define SRCVAL(papoSource, eSrcType, ii) \
907  (eSrcType == GDT_Byte ? \
908  CPL_REINTERPRET_CAST(const GByte*,papoSource)[ii] : \
909  (eSrcType == GDT_Float32 ? \
910  CPL_REINTERPRET_CAST(const float*,papoSource)[ii] : \
911  (eSrcType == GDT_Float64 ? \
912  CPL_REINTERPRET_CAST(const double*,papoSource)[ii] : \
913  (eSrcType == GDT_Int32 ? \
914  CPL_REINTERPRET_CAST(const GInt32*,papoSource)[ii] : \
915  (eSrcType == GDT_UInt16 ? \
916  CPL_REINTERPRET_CAST(const GUInt16*,papoSource)[ii] : \
917  (eSrcType == GDT_Int16 ? \
918  CPL_REINTERPRET_CAST(const GInt16*,papoSource)[ii] : \
919  (eSrcType == GDT_UInt32 ? \
920  CPL_REINTERPRET_CAST(const GUInt32*,papoSource)[ii] : \
921  (eSrcType == GDT_CInt16 ? \
922  CPL_REINTERPRET_CAST(const GInt16*,papoSource)[(ii) * 2] : \
923  (eSrcType == GDT_CInt32 ? \
924  CPL_REINTERPRET_CAST(const GInt32*,papoSource)[(ii) * 2] : \
925  (eSrcType == GDT_CFloat32 ? \
926  CPL_REINTERPRET_CAST(const float*,papoSource)[(ii) * 2] : \
927  (eSrcType == GDT_CFloat64 ? \
928  CPL_REINTERPRET_CAST(const double*,papoSource)[(ii) * 2] : 0)))))))))))
929 
932 typedef CPLErr
933 (*GDALDerivedPixelFunc)(void **papoSources, int nSources, void *pData,
934  int nBufXSize, int nBufYSize,
935  GDALDataType eSrcType, GDALDataType eBufType,
936  int nPixelSpace, int nLineSpace);
937 
940 typedef CPLErr
941 (*GDALDerivedPixelFuncWithArgs)(void **papoSources, int nSources, void *pData,
942  int nBufXSize, int nBufYSize,
943  GDALDataType eSrcType, GDALDataType eBufType,
944  int nPixelSpace, int nLineSpace,
945  CSLConstList papszFunctionArgs);
946 
947 GDALDataType CPL_DLL CPL_STDCALL GDALGetRasterDataType( GDALRasterBandH );
948 void CPL_DLL CPL_STDCALL
949 GDALGetBlockSize( GDALRasterBandH, int * pnXSize, int * pnYSize );
950 
951 CPLErr CPL_DLL CPL_STDCALL
952 GDALGetActualBlockSize( GDALRasterBandH, int nXBlockOff, int nYBlockOff,
953  int *pnXValid, int *pnYValid );
954 
955 CPLErr CPL_DLL CPL_STDCALL GDALRasterAdviseRead( GDALRasterBandH hRB,
956  int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
957  int nBXSize, int nBYSize, GDALDataType eBDataType, CSLConstList papszOptions );
958 
959 CPLErr CPL_DLL CPL_STDCALL
960 GDALRasterIO( GDALRasterBandH hRBand, GDALRWFlag eRWFlag,
961  int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
962  void * pBuffer, int nBXSize, int nBYSize,GDALDataType eBDataType,
963  int nPixelSpace, int nLineSpace ) CPL_WARN_UNUSED_RESULT;
964 CPLErr CPL_DLL CPL_STDCALL
965 GDALRasterIOEx( GDALRasterBandH hRBand, GDALRWFlag eRWFlag,
966  int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize,
967  void * pBuffer, int nBXSize, int nBYSize,GDALDataType eBDataType,
968  GSpacing nPixelSpace, GSpacing nLineSpace,
970 CPLErr CPL_DLL CPL_STDCALL GDALReadBlock( GDALRasterBandH, int, int, void * ) CPL_WARN_UNUSED_RESULT;
971 CPLErr CPL_DLL CPL_STDCALL GDALWriteBlock( GDALRasterBandH, int, int, void * ) CPL_WARN_UNUSED_RESULT;
972 int CPL_DLL CPL_STDCALL GDALGetRasterBandXSize( GDALRasterBandH );
973 int CPL_DLL CPL_STDCALL GDALGetRasterBandYSize( GDALRasterBandH );
974 GDALAccess CPL_DLL CPL_STDCALL GDALGetRasterAccess( GDALRasterBandH );
975 int CPL_DLL CPL_STDCALL GDALGetBandNumber( GDALRasterBandH );
976 GDALDatasetH CPL_DLL CPL_STDCALL GDALGetBandDataset( GDALRasterBandH );
977 
978 GDALColorInterp CPL_DLL CPL_STDCALL
980 CPLErr CPL_DLL CPL_STDCALL
984 int CPL_DLL CPL_STDCALL GDALHasArbitraryOverviews( GDALRasterBandH );
985 int CPL_DLL CPL_STDCALL GDALGetOverviewCount( GDALRasterBandH );
986 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetOverview( GDALRasterBandH, int );
987 double CPL_DLL CPL_STDCALL GDALGetRasterNoDataValue( GDALRasterBandH, int * );
988 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterNoDataValue( GDALRasterBandH, double );
989 CPLErr CPL_DLL CPL_STDCALL GDALDeleteRasterNoDataValue( GDALRasterBandH );
990 char CPL_DLL ** CPL_STDCALL GDALGetRasterCategoryNames( GDALRasterBandH );
992 double CPL_DLL CPL_STDCALL GDALGetRasterMinimum( GDALRasterBandH, int *pbSuccess );
993 double CPL_DLL CPL_STDCALL GDALGetRasterMaximum( GDALRasterBandH, int *pbSuccess );
994 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterStatistics(
995  GDALRasterBandH, int bApproxOK, int bForce,
996  double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev );
997 CPLErr CPL_DLL CPL_STDCALL GDALComputeRasterStatistics(
998  GDALRasterBandH, int bApproxOK,
999  double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev,
1000  GDALProgressFunc pfnProgress, void *pProgressData );
1001 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterStatistics(
1002  GDALRasterBandH hBand,
1003  double dfMin, double dfMax, double dfMean, double dfStdDev );
1004 
1006 
1007 const char CPL_DLL * CPL_STDCALL GDALGetRasterUnitType( GDALRasterBandH );
1008 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterUnitType( GDALRasterBandH hBand, const char *pszNewValue );
1009 double CPL_DLL CPL_STDCALL GDALGetRasterOffset( GDALRasterBandH, int *pbSuccess );
1010 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterOffset( GDALRasterBandH hBand, double dfNewOffset);
1011 double CPL_DLL CPL_STDCALL GDALGetRasterScale( GDALRasterBandH, int *pbSuccess );
1012 CPLErr CPL_DLL CPL_STDCALL GDALSetRasterScale( GDALRasterBandH hBand, double dfNewOffset );
1013 void CPL_DLL CPL_STDCALL
1014 GDALComputeRasterMinMax( GDALRasterBandH hBand, int bApproxOK,
1015  double adfMinMax[2] );
1016 CPLErr CPL_DLL CPL_STDCALL GDALFlushRasterCache( GDALRasterBandH hBand );
1017 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterHistogram( GDALRasterBandH hBand,
1018  double dfMin, double dfMax,
1019  int nBuckets, int *panHistogram,
1020  int bIncludeOutOfRange, int bApproxOK,
1021  GDALProgressFunc pfnProgress,
1022  void * pProgressData )
1024  CPL_WARN_DEPRECATED("Use GDALGetRasterHistogramEx() instead")
1026  ;
1027 CPLErr CPL_DLL CPL_STDCALL GDALGetRasterHistogramEx( GDALRasterBandH hBand,
1028  double dfMin, double dfMax,
1029  int nBuckets, GUIntBig *panHistogram,
1030  int bIncludeOutOfRange, int bApproxOK,
1031  GDALProgressFunc pfnProgress,
1032  void * pProgressData );
1033 CPLErr CPL_DLL CPL_STDCALL GDALGetDefaultHistogram( GDALRasterBandH hBand,
1034  double *pdfMin, double *pdfMax,
1035  int *pnBuckets, int **ppanHistogram,
1036  int bForce,
1037  GDALProgressFunc pfnProgress,
1038  void * pProgressData )
1040  CPL_WARN_DEPRECATED("Use GDALGetDefaultHistogramEx() instead")
1042  ;
1043 CPLErr CPL_DLL CPL_STDCALL GDALGetDefaultHistogramEx( GDALRasterBandH hBand,
1044  double *pdfMin, double *pdfMax,
1045  int *pnBuckets, GUIntBig **ppanHistogram,
1046  int bForce,
1047  GDALProgressFunc pfnProgress,
1048  void * pProgressData );
1049 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultHistogram( GDALRasterBandH hBand,
1050  double dfMin, double dfMax,
1051  int nBuckets, int *panHistogram )
1053  CPL_WARN_DEPRECATED("Use GDALSetDefaultHistogramEx() instead")
1055  ;
1056 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultHistogramEx( GDALRasterBandH hBand,
1057  double dfMin, double dfMax,
1058  int nBuckets, GUIntBig *panHistogram );
1059 int CPL_DLL CPL_STDCALL
1061 GDALRasterBandH CPL_DLL CPL_STDCALL
1063 GDALRasterBandH CPL_DLL CPL_STDCALL
1065 CPLErr CPL_DLL CPL_STDCALL GDALFillRaster( GDALRasterBandH hBand,
1066  double dfRealValue, double dfImaginaryValue );
1067 CPLErr CPL_DLL CPL_STDCALL
1068 GDALComputeBandStats( GDALRasterBandH hBand, int nSampleStep,
1069  double *pdfMean, double *pdfStdDev,
1070  GDALProgressFunc pfnProgress,
1071  void *pProgressData );
1073  int nOverviewCount,
1074  GDALRasterBandH *pahOverviews,
1075  GDALProgressFunc pfnProgress,
1076  void *pProgressData );
1077 
1078 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL GDALGetDefaultRAT(
1079  GDALRasterBandH hBand );
1080 CPLErr CPL_DLL CPL_STDCALL GDALSetDefaultRAT( GDALRasterBandH,
1082 CPLErr CPL_DLL CPL_STDCALL GDALAddDerivedBandPixelFunc( const char *pszName,
1083  GDALDerivedPixelFunc pfnPixelFunc );
1084 CPLErr CPL_DLL CPL_STDCALL GDALAddDerivedBandPixelFuncWithArgs( const char *pszName,
1085  GDALDerivedPixelFuncWithArgs pfnPixelFunc,
1086  const char *pszMetadata);
1087 
1088 GDALRasterBandH CPL_DLL CPL_STDCALL GDALGetMaskBand( GDALRasterBandH hBand );
1089 int CPL_DLL CPL_STDCALL GDALGetMaskFlags( GDALRasterBandH hBand );
1090 CPLErr CPL_DLL CPL_STDCALL
1091  GDALCreateMaskBand( GDALRasterBandH hBand, int nFlags );
1092 
1094 #define GMF_ALL_VALID 0x01
1097 #define GMF_PER_DATASET 0x02
1100 #define GMF_ALPHA 0x04
1103 #define GMF_NODATA 0x08
1104 
1108 #define GDAL_DATA_COVERAGE_STATUS_UNIMPLEMENTED 0x01
1109 
1114 #define GDAL_DATA_COVERAGE_STATUS_DATA 0x02
1115 
1121 #define GDAL_DATA_COVERAGE_STATUS_EMPTY 0x04
1122 
1123 int CPL_DLL CPL_STDCALL GDALGetDataCoverageStatus( GDALRasterBandH hBand,
1124  int nXOff, int nYOff,
1125  int nXSize, int nYSize,
1126  int nMaskFlagStop,
1127  double* pdfDataPct );
1128 
1129 /* ==================================================================== */
1130 /* GDALAsyncReader */
1131 /* ==================================================================== */
1132 
1133 GDALAsyncStatusType CPL_DLL CPL_STDCALL
1134 GDALARGetNextUpdatedRegion(GDALAsyncReaderH hARIO, double dfTimeout,
1135  int* pnXBufOff, int* pnYBufOff,
1136  int* pnXBufSize, int* pnYBufSize );
1137 int CPL_DLL CPL_STDCALL GDALARLockBuffer(GDALAsyncReaderH hARIO,
1138  double dfTimeout);
1139 void CPL_DLL CPL_STDCALL GDALARUnlockBuffer(GDALAsyncReaderH hARIO);
1140 
1141 /* -------------------------------------------------------------------- */
1142 /* Helper functions. */
1143 /* -------------------------------------------------------------------- */
1144 int CPL_DLL CPL_STDCALL GDALGeneralCmdLineProcessor( int nArgc, char ***ppapszArgv,
1145  int nOptions );
1146 void CPL_DLL CPL_STDCALL GDALSwapWords( void *pData, int nWordSize, int nWordCount,
1147  int nWordSkip );
1148 void CPL_DLL CPL_STDCALL GDALSwapWordsEx( void *pData, int nWordSize, size_t nWordCount,
1149  int nWordSkip );
1150 
1151 void CPL_DLL CPL_STDCALL
1152  GDALCopyWords( const void * CPL_RESTRICT pSrcData,
1153  GDALDataType eSrcType, int nSrcPixelOffset,
1154  void * CPL_RESTRICT pDstData,
1155  GDALDataType eDstType, int nDstPixelOffset,
1156  int nWordCount );
1157 
1158 void CPL_DLL CPL_STDCALL
1159  GDALCopyWords64( const void * CPL_RESTRICT pSrcData,
1160  GDALDataType eSrcType, int nSrcPixelOffset,
1161  void * CPL_RESTRICT pDstData,
1162  GDALDataType eDstType, int nDstPixelOffset,
1163  GPtrDiff_t nWordCount );
1164 
1165 void CPL_DLL
1166 GDALCopyBits( const GByte *pabySrcData, int nSrcOffset, int nSrcStep,
1167  GByte *pabyDstData, int nDstOffset, int nDstStep,
1168  int nBitCount, int nStepCount );
1169 
1170 int CPL_DLL CPL_STDCALL GDALLoadWorldFile( const char *, double * );
1171 int CPL_DLL CPL_STDCALL GDALReadWorldFile( const char *, const char *,
1172  double * );
1173 int CPL_DLL CPL_STDCALL GDALWriteWorldFile( const char *, const char *,
1174  double * );
1175 int CPL_DLL CPL_STDCALL GDALLoadTabFile( const char *, double *, char **,
1176  int *, GDAL_GCP ** );
1177 int CPL_DLL CPL_STDCALL GDALReadTabFile( const char *, double *, char **,
1178  int *, GDAL_GCP ** );
1179 int CPL_DLL CPL_STDCALL GDALLoadOziMapFile( const char *, double *, char **,
1180  int *, GDAL_GCP ** );
1181 int CPL_DLL CPL_STDCALL GDALReadOziMapFile( const char *, double *,
1182  char **, int *, GDAL_GCP ** );
1183 
1184 const char CPL_DLL * CPL_STDCALL GDALDecToDMS( double, const char *, int );
1185 double CPL_DLL CPL_STDCALL GDALPackedDMSToDec( double );
1186 double CPL_DLL CPL_STDCALL GDALDecToPackedDMS( double );
1187 
1188 /* Note to developers : please keep this section in sync with ogr_core.h */
1189 
1190 #ifndef GDAL_VERSION_INFO_DEFINED
1191 #ifndef DOXYGEN_SKIP
1192 #define GDAL_VERSION_INFO_DEFINED
1193 #endif
1194 const char CPL_DLL * CPL_STDCALL GDALVersionInfo( const char * );
1195 #endif
1196 
1197 #ifndef GDAL_CHECK_VERSION
1198 
1199 int CPL_DLL CPL_STDCALL GDALCheckVersion( int nVersionMajor, int nVersionMinor,
1200  const char* pszCallingComponentName);
1201 
1205 #define GDAL_CHECK_VERSION(pszCallingComponentName) \
1206  GDALCheckVersion(GDAL_VERSION_MAJOR, GDAL_VERSION_MINOR, pszCallingComponentName)
1207 
1208 #endif
1209 
1211 #ifdef GDAL_COMPILATION
1212 #define GDALExtractRPCInfoV1 GDALExtractRPCInfo
1213 #else
1214 #define GDALRPCInfo GDALRPCInfoV2
1215 #define GDALExtractRPCInfo GDALExtractRPCInfoV2
1216 #endif
1217 
1218 /* Deprecated: use GDALRPCInfoV2 */
1219 typedef struct
1220 {
1221  double dfLINE_OFF;
1222  double dfSAMP_OFF;
1223  double dfLAT_OFF;
1224  double dfLONG_OFF;
1225  double dfHEIGHT_OFF;
1227  double dfLINE_SCALE;
1228  double dfSAMP_SCALE;
1229  double dfLAT_SCALE;
1230  double dfLONG_SCALE;
1231  double dfHEIGHT_SCALE;
1233  double adfLINE_NUM_COEFF[20];
1234  double adfLINE_DEN_COEFF[20];
1235  double adfSAMP_NUM_COEFF[20];
1236  double adfSAMP_DEN_COEFF[20];
1238  double dfMIN_LONG;
1239  double dfMIN_LAT;
1240  double dfMAX_LONG;
1241  double dfMAX_LAT;
1242 } GDALRPCInfoV1;
1247 typedef struct
1248 {
1249  double dfLINE_OFF;
1250  double dfSAMP_OFF;
1251  double dfLAT_OFF;
1252  double dfLONG_OFF;
1253  double dfHEIGHT_OFF;
1255  double dfLINE_SCALE;
1256  double dfSAMP_SCALE;
1257  double dfLAT_SCALE;
1258  double dfLONG_SCALE;
1261  double adfLINE_NUM_COEFF[20];
1262  double adfLINE_DEN_COEFF[20];
1263  double adfSAMP_NUM_COEFF[20];
1264  double adfSAMP_DEN_COEFF[20];
1266  double dfMIN_LONG;
1267  double dfMIN_LAT;
1268  double dfMAX_LONG;
1269  double dfMAX_LAT;
1271  /* Those fields should be at the end. And all above fields should be the same as in GDALRPCInfoV1 */
1272  double dfERR_BIAS;
1273  double dfERR_RAND;
1274 } GDALRPCInfoV2;
1275 
1277 int CPL_DLL CPL_STDCALL GDALExtractRPCInfoV1( CSLConstList, GDALRPCInfoV1 * );
1279 int CPL_DLL CPL_STDCALL GDALExtractRPCInfoV2( CSLConstList, GDALRPCInfoV2 * );
1280 
1281 /* ==================================================================== */
1282 /* Color tables. */
1283 /* ==================================================================== */
1284 
1286 typedef struct
1287 {
1289  short c1;
1290 
1292  short c2;
1293 
1295  short c3;
1296 
1298  short c4;
1299 } GDALColorEntry;
1300 
1302 void CPL_DLL CPL_STDCALL GDALDestroyColorTable( GDALColorTableH );
1303 GDALColorTableH CPL_DLL CPL_STDCALL GDALCloneColorTable( GDALColorTableH );
1305 int CPL_DLL CPL_STDCALL GDALGetColorEntryCount( GDALColorTableH );
1306 const GDALColorEntry CPL_DLL * CPL_STDCALL GDALGetColorEntry( GDALColorTableH, int );
1307 int CPL_DLL CPL_STDCALL GDALGetColorEntryAsRGB( GDALColorTableH, int, GDALColorEntry *);
1308 void CPL_DLL CPL_STDCALL GDALSetColorEntry( GDALColorTableH, int, const GDALColorEntry * );
1309 void CPL_DLL CPL_STDCALL GDALCreateColorRamp( GDALColorTableH hTable,
1310  int nStartIndex, const GDALColorEntry *psStartColor,
1311  int nEndIndex, const GDALColorEntry *psEndColor );
1312 
1313 /* ==================================================================== */
1314 /* Raster Attribute Table */
1315 /* ==================================================================== */
1316 
1323 
1325 typedef enum { GFU_Generic = 0, GFU_PixelCount = 1, GFU_Name = 2, GFU_Min = 3, GFU_Max = 4, GFU_MinMax = 5, GFU_Red = 6, GFU_Green = 7, GFU_Blue = 8, GFU_Alpha = 9, GFU_RedMin = 10, GFU_GreenMin = 11, GFU_BlueMin = 12, GFU_AlphaMin = 13, GFU_RedMax = 14, GFU_GreenMax = 15, GFU_BlueMax = 16, GFU_AlphaMax = 17, GFU_MaxCount
1346 
1354 
1355 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL
1357 
1358 void CPL_DLL CPL_STDCALL GDALDestroyRasterAttributeTable(
1360 
1361 int CPL_DLL CPL_STDCALL GDALRATGetColumnCount( GDALRasterAttributeTableH );
1362 
1363 const char CPL_DLL * CPL_STDCALL GDALRATGetNameOfCol(
1365 GDALRATFieldUsage CPL_DLL CPL_STDCALL GDALRATGetUsageOfCol(
1367 GDALRATFieldType CPL_DLL CPL_STDCALL GDALRATGetTypeOfCol(
1369 
1370 int CPL_DLL CPL_STDCALL GDALRATGetColOfUsage( GDALRasterAttributeTableH,
1372 int CPL_DLL CPL_STDCALL GDALRATGetRowCount( GDALRasterAttributeTableH );
1373 
1374 const char CPL_DLL * CPL_STDCALL GDALRATGetValueAsString(
1375  GDALRasterAttributeTableH, int, int);
1376 int CPL_DLL CPL_STDCALL GDALRATGetValueAsInt(
1377  GDALRasterAttributeTableH, int, int);
1378 double CPL_DLL CPL_STDCALL GDALRATGetValueAsDouble(
1379  GDALRasterAttributeTableH, int, int);
1380 
1381 void CPL_DLL CPL_STDCALL GDALRATSetValueAsString( GDALRasterAttributeTableH, int, int,
1382  const char * );
1383 void CPL_DLL CPL_STDCALL GDALRATSetValueAsInt( GDALRasterAttributeTableH, int, int,
1384  int );
1385 void CPL_DLL CPL_STDCALL GDALRATSetValueAsDouble( GDALRasterAttributeTableH, int, int,
1386  double );
1387 
1388 int CPL_DLL CPL_STDCALL GDALRATChangesAreWrittenToFile( GDALRasterAttributeTableH hRAT );
1389 
1390 CPLErr CPL_DLL CPL_STDCALL GDALRATValuesIOAsDouble( GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag,
1391  int iField, int iStartRow, int iLength, double *pdfData );
1392 CPLErr CPL_DLL CPL_STDCALL GDALRATValuesIOAsInteger( GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag,
1393  int iField, int iStartRow, int iLength, int *pnData);
1394 CPLErr CPL_DLL CPL_STDCALL GDALRATValuesIOAsString( GDALRasterAttributeTableH hRAT, GDALRWFlag eRWFlag,
1395  int iField, int iStartRow, int iLength, CSLConstList papszStrList);
1396 
1397 void CPL_DLL CPL_STDCALL GDALRATSetRowCount( GDALRasterAttributeTableH,
1398  int );
1400  const char *,
1404  double, double );
1405 int CPL_DLL CPL_STDCALL GDALRATGetLinearBinning( GDALRasterAttributeTableH,
1406  double *, double * );
1407 CPLErr CPL_DLL CPL_STDCALL GDALRATSetTableType( GDALRasterAttributeTableH hRAT,
1408  const GDALRATTableType eInTableType );
1410 CPLErr CPL_DLL CPL_STDCALL GDALRATInitializeFromColorTable(
1412 GDALColorTableH CPL_DLL CPL_STDCALL GDALRATTranslateToColorTable(
1413  GDALRasterAttributeTableH, int nEntryCount );
1414 void CPL_DLL CPL_STDCALL GDALRATDumpReadable( GDALRasterAttributeTableH,
1415  FILE * );
1416 GDALRasterAttributeTableH CPL_DLL CPL_STDCALL
1418 
1419 void CPL_DLL* CPL_STDCALL
1421 
1422 int CPL_DLL CPL_STDCALL GDALRATGetRowOfValue( GDALRasterAttributeTableH, double );
1423 void CPL_DLL CPL_STDCALL GDALRATRemoveStatistics( GDALRasterAttributeTableH );
1424 
1425 /* ==================================================================== */
1426 /* GDAL Cache Management */
1427 /* ==================================================================== */
1428 
1429 void CPL_DLL CPL_STDCALL GDALSetCacheMax( int nBytes );
1430 int CPL_DLL CPL_STDCALL GDALGetCacheMax(void);
1431 int CPL_DLL CPL_STDCALL GDALGetCacheUsed(void);
1432 void CPL_DLL CPL_STDCALL GDALSetCacheMax64( GIntBig nBytes );
1433 GIntBig CPL_DLL CPL_STDCALL GDALGetCacheMax64(void);
1434 GIntBig CPL_DLL CPL_STDCALL GDALGetCacheUsed64(void);
1435 
1436 int CPL_DLL CPL_STDCALL GDALFlushCacheBlock(void);
1437 
1438 /* ==================================================================== */
1439 /* GDAL virtual memory */
1440 /* ==================================================================== */
1441 
1443  GDALRWFlag eRWFlag,
1444  int nXOff, int nYOff,
1445  int nXSize, int nYSize,
1446  int nBufXSize, int nBufYSize,
1447  GDALDataType eBufType,
1448  int nBandCount, int* panBandMap,
1449  int nPixelSpace,
1450  GIntBig nLineSpace,
1451  GIntBig nBandSpace,
1452  size_t nCacheSize,
1453  size_t nPageSizeHint,
1454  int bSingleThreadUsage,
1455  CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1456 
1458  GDALRWFlag eRWFlag,
1459  int nXOff, int nYOff,
1460  int nXSize, int nYSize,
1461  int nBufXSize, int nBufYSize,
1462  GDALDataType eBufType,
1463  int nPixelSpace,
1464  GIntBig nLineSpace,
1465  size_t nCacheSize,
1466  size_t nPageSizeHint,
1467  int bSingleThreadUsage,
1468  CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1469 
1471  GDALRWFlag eRWFlag,
1472  int *pnPixelSpace,
1473  GIntBig *pnLineSpace,
1474  CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1475 
1477 typedef enum
1478 {
1484  GTO_BSQ
1486 
1488  GDALRWFlag eRWFlag,
1489  int nXOff, int nYOff,
1490  int nXSize, int nYSize,
1491  int nTileXSize, int nTileYSize,
1492  GDALDataType eBufType,
1493  int nBandCount, int* panBandMap,
1494  GDALTileOrganization eTileOrganization,
1495  size_t nCacheSize,
1496  int bSingleThreadUsage,
1497  CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1498 
1500  GDALRWFlag eRWFlag,
1501  int nXOff, int nYOff,
1502  int nXSize, int nYSize,
1503  int nTileXSize, int nTileYSize,
1504  GDALDataType eBufType,
1505  size_t nCacheSize,
1506  int bSingleThreadUsage,
1507  CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1508 
1509 /* ==================================================================== */
1510 /* VRTPansharpenedDataset class. */
1511 /* ==================================================================== */
1512 
1513 GDALDatasetH CPL_DLL GDALCreatePansharpenedVRT( const char* pszXML,
1514  GDALRasterBandH hPanchroBand,
1515  int nInputSpectralBands,
1516  GDALRasterBandH* pahInputSpectralBands ) CPL_WARN_UNUSED_RESULT;
1517 
1518 /* =================================================================== */
1519 /* Misc API */
1520 /* ==================================================================== */
1521 
1522 CPLXMLNode CPL_DLL* GDALGetJPEG2000Structure(const char* pszFilename,
1523  CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1524 
1525 /* ==================================================================== */
1526 /* Multidimensional API_api */
1527 /* ==================================================================== */
1528 
1530  const char * pszName,
1531  CSLConstList papszRootGroupOptions,
1532  CSLConstList papszOptions ) CPL_WARN_UNUSED_RESULT;
1533 
1538  const char* pszName, size_t nTotalSize,
1539  size_t nComponents, const GDALEDTComponentH* comps) CPL_WARN_UNUSED_RESULT;
1541 const char CPL_DLL* GDALExtendedDataTypeGetName(GDALExtendedDataTypeH hEDT);
1547 void CPL_DLL GDALExtendedDataTypeFreeComponents(GDALEDTComponentH* components, size_t nCount);
1549  GDALExtendedDataTypeH hTargetEDT);
1551  GDALExtendedDataTypeH hSecondEDT);
1553 
1554 GDALEDTComponentH CPL_DLL GDALEDTComponentCreate(const char* pszName, size_t nOffset, GDALExtendedDataTypeH hType) CPL_WARN_UNUSED_RESULT;
1555 void CPL_DLL GDALEDTComponentRelease(GDALEDTComponentH hComp);
1556 const char CPL_DLL* GDALEDTComponentGetName(GDALEDTComponentH hComp);
1557 size_t CPL_DLL GDALEDTComponentGetOffset(GDALEDTComponentH hComp);
1559 
1561 void CPL_DLL GDALGroupRelease(GDALGroupH hGroup);
1562 const char CPL_DLL *GDALGroupGetName(GDALGroupH hGroup);
1563 const char CPL_DLL *GDALGroupGetFullName(GDALGroupH hGroup);
1564 char CPL_DLL **GDALGroupGetMDArrayNames(GDALGroupH hGroup, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1565 GDALMDArrayH CPL_DLL GDALGroupOpenMDArray(GDALGroupH hGroup, const char* pszMDArrayName, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1566 GDALMDArrayH CPL_DLL GDALGroupOpenMDArrayFromFullname(GDALGroupH hGroup, const char* pszMDArrayName, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1568  const char* pszName,
1569  const char* pszStartingPoint,
1570  CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1571 char CPL_DLL **GDALGroupGetGroupNames(GDALGroupH hGroup, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1572 GDALGroupH CPL_DLL GDALGroupOpenGroup(GDALGroupH hGroup, const char* pszSubGroupName, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1573 GDALGroupH CPL_DLL GDALGroupOpenGroupFromFullname(GDALGroupH hGroup, const char* pszMDArrayName, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1574 char CPL_DLL **GDALGroupGetVectorLayerNames(GDALGroupH hGroup, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1575 OGRLayerH CPL_DLL GDALGroupOpenVectorLayer(GDALGroupH hGroup, const char* pszVectorLayerName, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1576 GDALDimensionH CPL_DLL *GDALGroupGetDimensions(GDALGroupH hGroup, size_t* pnCount, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1577 GDALAttributeH CPL_DLL GDALGroupGetAttribute(GDALGroupH hGroup, const char* pszName) CPL_WARN_UNUSED_RESULT;
1578 GDALAttributeH CPL_DLL *GDALGroupGetAttributes(GDALGroupH hGroup, size_t* pnCount, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1581  const char* pszSubGroupName,
1582  CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1584  const char* pszName,
1585  const char* pszType,
1586  const char* pszDirection,
1587  GUInt64 nSize,
1588  CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1590  const char* pszName,
1591  size_t nDimensions,
1592  GDALDimensionH* pahDimensions,
1593  GDALExtendedDataTypeH hEDT,
1594  CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1596  const char* pszName,
1597  size_t nDimensions,
1598  const GUInt64* panDimensions,
1599  GDALExtendedDataTypeH hEDT,
1600  CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1601 
1602 void CPL_DLL GDALMDArrayRelease(GDALMDArrayH hMDArray);
1603 const char CPL_DLL* GDALMDArrayGetName(GDALMDArrayH hArray);
1604 const char CPL_DLL* GDALMDArrayGetFullName(GDALMDArrayH hArray);
1606 size_t CPL_DLL GDALMDArrayGetDimensionCount(GDALMDArrayH hArray);
1609 int CPL_DLL GDALMDArrayRead(GDALMDArrayH hArray,
1610  const GUInt64* arrayStartIdx,
1611  const size_t* count,
1612  const GInt64* arrayStep,
1613  const GPtrDiff_t* bufferStride,
1614  GDALExtendedDataTypeH bufferDatatype,
1615  void* pDstBuffer,
1616  const void* pDstBufferAllocStart,
1617  size_t nDstBufferllocSize);
1618 int CPL_DLL GDALMDArrayWrite(GDALMDArrayH hArray,
1619  const GUInt64* arrayStartIdx,
1620  const size_t* count,
1621  const GInt64* arrayStep,
1622  const GPtrDiff_t* bufferStride,
1623  GDALExtendedDataTypeH bufferDatatype,
1624  const void* pSrcBuffer,
1625  const void* psrcBufferAllocStart,
1626  size_t nSrcBufferllocSize);
1627 int CPL_DLL GDALMDArrayAdviseRead(GDALMDArrayH hArray,
1628  const GUInt64* arrayStartIdx,
1629  const size_t* count);
1630 int CPL_DLL GDALMDArrayAdviseReadEx(GDALMDArrayH hArray,
1631  const GUInt64* arrayStartIdx,
1632  const size_t* count,
1633  CSLConstList papszOptions);
1634 GDALAttributeH CPL_DLL GDALMDArrayGetAttribute(GDALMDArrayH hArray, const char* pszName) CPL_WARN_UNUSED_RESULT;
1635 GDALAttributeH CPL_DLL *GDALMDArrayGetAttributes(GDALMDArrayH hArray, size_t* pnCount, CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1637  const char* pszName,
1638  size_t nDimensions,
1639  const GUInt64* panDimensions,
1640  GDALExtendedDataTypeH hEDT,
1641  CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
1642 const void CPL_DLL *GDALMDArrayGetRawNoDataValue(GDALMDArrayH hArray);
1643 double CPL_DLL GDALMDArrayGetNoDataValueAsDouble(GDALMDArrayH hArray,
1644  int* pbHasNoDataValue);
1645 int CPL_DLL GDALMDArraySetRawNoDataValue(GDALMDArrayH hArray, const void*);
1647  double dfNoDataValue);
1648 int CPL_DLL GDALMDArraySetScale(GDALMDArrayH hArray, double dfScale);
1649 int CPL_DLL GDALMDArraySetScaleEx(GDALMDArrayH hArray, double dfScale, GDALDataType eStorageType);
1650 double CPL_DLL GDALMDArrayGetScale(GDALMDArrayH hArray, int *pbHasValue);
1651 double CPL_DLL GDALMDArrayGetScaleEx(GDALMDArrayH hArray, int *pbHasValue, GDALDataType* peStorageType);
1652 int CPL_DLL GDALMDArraySetOffset(GDALMDArrayH hArray, double dfOffset);
1653 int CPL_DLL GDALMDArraySetOffsetEx(GDALMDArrayH hArray, double dfOffset, GDALDataType eStorageType);
1654 double CPL_DLL GDALMDArrayGetOffset(GDALMDArrayH hArray, int *pbHasValue);
1655 double CPL_DLL GDALMDArrayGetOffsetEx(GDALMDArrayH hArray, int *pbHasValue, GDALDataType* peStorageType);
1656 GUInt64 CPL_DLL *GDALMDArrayGetBlockSize(GDALMDArrayH hArray, size_t *pnCount);
1657 int CPL_DLL GDALMDArraySetUnit(GDALMDArrayH hArray, const char*);
1658 const char CPL_DLL *GDALMDArrayGetUnit(GDALMDArrayH hArray);
1661 size_t CPL_DLL *GDALMDArrayGetProcessingChunkSize(GDALMDArrayH hArray, size_t *pnCount,
1662  size_t nMaxChunkMemory);
1664 GDALMDArrayH CPL_DLL GDALMDArrayGetView(GDALMDArrayH hArray, const char* pszViewExpr);
1666  size_t nNewAxisCount,
1667  const int *panMapNewAxisToOldAxis);
1669 GDALMDArrayH CPL_DLL GDALMDArrayGetMask(GDALMDArrayH hArray, CSLConstList papszOptions);
1671  size_t iXDim, size_t iYDim);
1673  GDALMDArrayH hArray, GDALDatasetH, int bApproxOK, int bForce,
1674  double *pdfMin, double *pdfMax,
1675  double *pdfMean, double *pdfStdDev,
1676  GUInt64* pnValidCount,
1677  GDALProgressFunc pfnProgress, void *pProgressData );
1679  int bApproxOK,
1680  double *pdfMin, double *pdfMax,
1681  double *pdfMean, double *pdfStdDev,
1682  GUInt64* pnValidCount,
1683  GDALProgressFunc, void *pProgressData );
1685  size_t nNewDimCount,
1686  const GDALDimensionH* pahNewDims,
1687  GDALRIOResampleAlg resampleAlg,
1688  OGRSpatialReferenceH hTargetSRS,
1689  CSLConstList papszOptions);
1691 void CPL_DLL GDALReleaseArrays(GDALMDArrayH* arrays, size_t nCount);
1692 int CPL_DLL GDALMDArrayCache( GDALMDArrayH hArray, CSLConstList papszOptions );
1693 
1694 void CPL_DLL GDALAttributeRelease(GDALAttributeH hAttr);
1695 void CPL_DLL GDALReleaseAttributes(GDALAttributeH* attributes, size_t nCount);
1696 const char CPL_DLL* GDALAttributeGetName(GDALAttributeH hAttr);
1697 const char CPL_DLL* GDALAttributeGetFullName(GDALAttributeH hAttr);
1699 size_t CPL_DLL GDALAttributeGetDimensionCount(GDALAttributeH hAttr);
1702 GByte CPL_DLL *GDALAttributeReadAsRaw(GDALAttributeH hAttr, size_t *pnSize) CPL_WARN_UNUSED_RESULT;
1703 void CPL_DLL GDALAttributeFreeRawResult(GDALAttributeH hAttr, GByte* raw, size_t nSize);
1704 const char CPL_DLL* GDALAttributeReadAsString(GDALAttributeH hAttr);
1705 int CPL_DLL GDALAttributeReadAsInt(GDALAttributeH hAttr);
1706 double CPL_DLL GDALAttributeReadAsDouble(GDALAttributeH hAttr);
1708 int CPL_DLL *GDALAttributeReadAsIntArray(GDALAttributeH hAttr, size_t* pnCount) CPL_WARN_UNUSED_RESULT;
1709 double CPL_DLL *GDALAttributeReadAsDoubleArray(GDALAttributeH hAttr, size_t* pnCount) CPL_WARN_UNUSED_RESULT;
1710 int CPL_DLL GDALAttributeWriteRaw(GDALAttributeH hAttr, const void*, size_t);
1711 int CPL_DLL GDALAttributeWriteString(GDALAttributeH hAttr, const char*);
1713 int CPL_DLL GDALAttributeWriteInt(GDALAttributeH hAttr, int);
1714 int CPL_DLL GDALAttributeWriteDouble(GDALAttributeH hAttr, double);
1715 int CPL_DLL GDALAttributeWriteDoubleArray(GDALAttributeH hAttr, const double*, size_t);
1716 
1717 void CPL_DLL GDALDimensionRelease(GDALDimensionH hDim);
1718 void CPL_DLL GDALReleaseDimensions(GDALDimensionH* dims, size_t nCount);
1719 const char CPL_DLL *GDALDimensionGetName(GDALDimensionH hDim);
1720 const char CPL_DLL *GDALDimensionGetFullName(GDALDimensionH hDim);
1721 const char CPL_DLL *GDALDimensionGetType(GDALDimensionH hDim);
1722 const char CPL_DLL *GDALDimensionGetDirection(GDALDimensionH hDim);
1726 
1727 CPL_C_END
1728 
1729 #endif /* ndef GDAL_H_INCLUDED */
CPL error handling services.
CPLErr
Error category.
Definition: cpl_error.h:53
Definitions for CPL mini XML Parser/Serializer.
Core portability definitions for CPL.
#define CPL_RESTRICT
restrict keyword to declare that pointers do not alias
Definition: cpl_port.h:935
unsigned long long GUIntBig
Large unsigned integer type (generally 64-bit unsigned integer type).
Definition: cpl_port.h:247
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:331
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:329
GIntBig GInt64
Signed 64 bit integer type.
Definition: cpl_port.h:263
GIntBig GPtrDiff_t
Integer type large enough to hold the difference between 2 addresses.
Definition: cpl_port.h:282
char ** CSLConstList
Type of a constant null-terminated list of nul terminated strings.
Definition: cpl_port.h:1169
GUIntBig GUInt64
Unsigned 64 bit integer type.
Definition: cpl_port.h:265
#define CPL_WARN_UNUSED_RESULT
Qualifier to warn when the return value of a function is not used.
Definition: cpl_port.h:894
unsigned char GByte
Unsigned byte type.
Definition: cpl_port.h:215
long long GIntBig
Large signed integer type (generally 64-bit integer type).
Definition: cpl_port.h:244
Virtual memory management.
struct CPLVirtualMem CPLVirtualMem
Opaque type that represents a virtual memory mapping.
Definition: cpl_virtualmem.h:62
GIntBig GSpacing
Type to express pixel, line or band spacing.
Definition: gdal.h:286
GDALRasterBandH GDALGetOverview(GDALRasterBandH, int)
Fetch overview raster band object.
Definition: gdalrasterband.cpp:2255
const char * GDALMDArrayGetFullName(GDALMDArrayH hArray)
Return array full name.
Definition: gdalmultidim.cpp:9012
CPLErr GDALDatasetCopyWholeRaster(GDALDatasetH hSrcDS, GDALDatasetH hDstDS, CSLConstList papszOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Copy all dataset raster data.
Definition: rasterio.cpp:4652
GDALRATTableType
RAT table type (thematic or athematic)
Definition: gdal.h:1350
@ GRTT_THEMATIC
Definition: gdal.h:1351
@ GRTT_ATHEMATIC
Definition: gdal.h:1352
GDALAccess
Definition: gdal.h:115
@ GA_ReadOnly
Definition: gdal.h:116
@ GA_Update
Definition: gdal.h:117
GDALDriverH GDALIdentifyDriver(const char *pszFilename, CSLConstList papszFileList)
Identify the driver that can open a raster file.
Definition: gdaldriver.cpp:2103
void GDALSetColorEntry(GDALColorTableH, int, const GDALColorEntry *)
Set entry in color table.
Definition: gdalcolortable.cpp:245
CPLErr GDALSetRasterScale(GDALRasterBandH hBand, double dfNewOffset)
Set scaling ratio.
Definition: gdalrasterband.cpp:2611
CPLErr GDALRATSetLinearBinning(GDALRasterAttributeTableH, double, double)
Set linear binning information.
Definition: gdal_rat.cpp:504
struct GDALDimensionHS * GDALDimensionH
Opaque type for C++ GDALDimension.
Definition: gdal.h:321
OGRLayerH GDALDatasetGetLayerByName(GDALDatasetH, const char *)
Fetch a layer by name.
Definition: gdaldataset.cpp:4445
CPLErr GDALWriteBlock(GDALRasterBandH, int, int, void *)
Write a block of image data efficiently.
Definition: gdalrasterband.cpp:728
GDALDatasetH GDALCreate(GDALDriverH hDriver, const char *, int, int, int, GDALDataType, CSLConstList)
Create a new dataset with this driver.
Definition: gdaldriver.cpp:275
double GDALGetRasterNoDataValue(GDALRasterBandH, int *)
Fetch the no data value for this band.
Definition: gdalrasterband.cpp:1645
int GDALMDArraySetRawNoDataValue(GDALMDArrayH hArray, const void *)
Set the nodata value as a "raw" value.
Definition: gdalmultidim.cpp:9387
int GDALGetDataTypeSizeBits(GDALDataType eDataType)
Get data type size in bits.
Definition: gdal_misc.cpp:353
void GDALDatasetClearStatistics(GDALDatasetH hDS)
Clear statistics.
Definition: gdaldataset.cpp:8404
void GDALClose(GDALDatasetH)
Close GDAL dataset.
Definition: gdaldataset.cpp:3727
int GDALGetRandomRasterSample(GDALRasterBandH, int, float *)
Undocumented.
Definition: gdal_misc.cpp:1015
int GDALGetCacheUsed(void)
Get cache memory used.
Definition: gdalrasterblock.cpp:325
struct GDALAttributeHS * GDALAttributeH
Opaque type for C++ GDALAttribute.
Definition: gdal.h:319
int GDALRATGetRowOfValue(GDALRasterAttributeTableH, double)
Get row for pixel value.
Definition: gdal_rat.cpp:378
const char * GDALMDArrayGetUnit(GDALMDArrayH hArray)
Return the array unit.
Definition: gdalmultidim.cpp:9852
void GDALSetCacheMax64(GIntBig nBytes)
Set maximum cache memory.
Definition: gdalrasterblock.cpp:146
GDALMDArrayH GDALRasterBandAsMDArray(GDALRasterBandH)
Return a view of this raster band as a 2D multidimensional GDALMDArray.
Definition: gdalmultidim.cpp:10629
bool GDALDatasetAddFieldDomain(GDALDatasetH hDS, OGRFieldDomainH hFieldDomain, char **ppszFailureReason)
Add a field domain to the dataset.
Definition: gdaldataset.cpp:8502
GDALDriverH GDALGetDatasetDriver(GDALDatasetH)
Fetch the driver to which this dataset relates.
Definition: gdaldataset.cpp:1327
GDALAttributeH GDALGroupGetAttribute(GDALGroupH hGroup, const char *pszName)
Return an attribute by its name.
Definition: gdalmultidim.cpp:8777
void GDALRATSetValueAsDouble(GDALRasterAttributeTableH, int, int, double)
Set field value from double.
Definition: gdal_rat.cpp:1896
GDALMDArrayH GDALGroupOpenMDArray(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a multidimensional array.
Definition: gdalmultidim.cpp:8556
int GDALGetMaskFlags(GDALRasterBandH hBand)
Return the status flags of the mask band associated with the band.
Definition: gdalrasterband.cpp:6244
GDALMDArrayH GDALMDArrayGetResampled(GDALMDArrayH hArray, size_t nNewDimCount, const GDALDimensionH *pahNewDims, GDALRIOResampleAlg resampleAlg, OGRSpatialReferenceH hTargetSRS, CSLConstList papszOptions)
Return an array that is a resampled / reprojected view of the current array.
Definition: gdalmultidim.cpp:9785
CPLErr GDALSetProjection(GDALDatasetH, const char *)
Set the projection reference string for this dataset.
Definition: gdaldataset.cpp:1137
CPLErr GDALRasterBandCopyWholeRaster(GDALRasterBandH hSrcBand, GDALRasterBandH hDstBand, const char *const *constpapszOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Copy a whole raster band.
Definition: rasterio.cpp:4979
GDALAsyncStatusType GDALGetAsyncStatusTypeByName(const char *)
Get AsyncStatusType by symbolic name.
Definition: gdal_misc.cpp:793
void GDALRATSetValueAsString(GDALRasterAttributeTableH, int, int, const char *)
Set field value from string.
Definition: gdal_rat.cpp:1758
GUInt64 GDALMDArrayGetTotalElementsCount(GDALMDArrayH hArray)
Return the total number of values in the array.
Definition: gdalmultidim.cpp:9026
OGRSpatialReferenceH GDALGetSpatialRef(GDALDatasetH)
Fetch the spatial reference for this dataset.
Definition: gdaldataset.cpp:945
void GDALSwapWordsEx(void *pData, int nWordSize, size_t nWordCount, int nWordSkip)
Byte swap words in-place.
Definition: rasterio.cpp:2151
GDALMDArrayH GDALGroupResolveMDArray(GDALGroupH hGroup, const char *pszName, const char *pszStartingPoint, CSLConstList papszOptions)
Locate an array in a group and its subgroups by name.
Definition: gdalmultidim.cpp:8601
int GDALGetOverviewCount(GDALRasterBandH)
Return the number of overview layers available.
Definition: gdalrasterband.cpp:2213
void GDALAttributeRelease(GDALAttributeH hAttr)
Release the GDAL in-memory object associated with a GDALAttribute.
Definition: gdalmultidim.cpp:10026
void GDALGetBlockSize(GDALRasterBandH, int *pnXSize, int *pnYSize)
Fetch the "natural" block size of this band.
Definition: gdalrasterband.cpp:911
GDALMDArrayH GDALMDArrayGetView(GDALMDArrayH hArray, const char *pszViewExpr)
Return a view of the array using slicing or field access.
Definition: gdalmultidim.cpp:9687
GDALPaletteInterp
Definition: gdal.h:230
@ GPI_CMYK
Definition: gdal.h:233
@ GPI_HLS
Definition: gdal.h:234
@ GPI_Gray
Definition: gdal.h:231
@ GPI_RGB
Definition: gdal.h:232
CPLErr GDALGetRasterHistogramEx(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, GUIntBig *panHistogram, int bIncludeOutOfRange, int bApproxOK, GDALProgressFunc pfnProgress, void *pProgressData)
Compute raster histogram.
Definition: gdalrasterband.cpp:3428
void GDALSetDescription(GDALMajorObjectH, const char *)
Set object description.
Definition: gdalmajorobject.cpp:136
void GDALDimensionRelease(GDALDimensionH hDim)
Release the GDAL in-memory object associated with a GDALDimension.
Definition: gdalmultidim.cpp:10470
int GDALGetRasterCount(GDALDatasetH)
Fetch the number of raster bands on this dataset.
Definition: gdaldataset.cpp:833
GDALRasterBandH GDALGetRasterSampleOverviewEx(GDALRasterBandH, GUIntBig)
Fetch best sampling overview.
Definition: gdalrasterband.cpp:2352
size_t GDALAttributeGetDimensionCount(GDALAttributeH hAttr)
Return the number of dimensions.
Definition: gdalmultidim.cpp:10085
CPLErr GDALGetRasterStatistics(GDALRasterBandH, int bApproxOK, int bForce, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev)
Fetch image statistics.
Definition: gdalrasterband.cpp:3844
CPLErr GDALRATInitializeFromColorTable(GDALRasterAttributeTableH, GDALColorTableH)
Initialize from color table.
Definition: gdal_rat.cpp:999
int * GDALAttributeReadAsIntArray(GDALAttributeH hAttr, size_t *pnCount)
Return the value of an attribute as an array of integers.
Definition: gdalmultidim.cpp:10280
size_t GDALMDArrayGetDimensionCount(GDALMDArrayH hArray)
Return the number of dimensions.
Definition: gdalmultidim.cpp:9040
const char * GDALGroupGetFullName(GDALGroupH hGroup)
Return the full name of the group.
Definition: gdalmultidim.cpp:8518
GIntBig GDALGetCacheUsed64(void)
Get cache memory used.
Definition: gdalrasterblock.cpp:355
void GDALDatasetSetStyleTableDirectly(GDALDatasetH, OGRStyleTableH)
Set dataset style table.
Definition: gdaldataset.cpp:4876
const char * GDALRATGetNameOfCol(GDALRasterAttributeTableH, int)
Fetch name of indicated column.
Definition: gdal_rat.cpp:1314
GDALDataType
Definition: gdal.h:62
@ GDT_UInt32
Definition: gdal.h:67
@ GDT_CInt32
Definition: gdal.h:74
@ GDT_Byte
Definition: gdal.h:64
@ GDT_CFloat32
Definition: gdal.h:76
@ GDT_CFloat64
Definition: gdal.h:77
@ GDT_Float64
Definition: gdal.h:72
@ GDT_UInt16
Definition: gdal.h:65
@ GDT_Int16
Definition: gdal.h:66
@ GDT_CInt16
Definition: gdal.h:73
@ GDT_Int32
Definition: gdal.h:68
@ GDT_Unknown
Definition: gdal.h:63
@ GDT_Float32
Definition: gdal.h:71
double GDALGetRasterOffset(GDALRasterBandH, int *pbSuccess)
Fetch the raster value offset.
Definition: gdalrasterband.cpp:2454
OGRErr GDALDatasetCommitTransaction(GDALDatasetH hDS)
For datasources which support transactions, CommitTransaction commits a transaction.
Definition: gdaldataset.cpp:7491
void * GDALDatasetH
Opaque type used for the C bindings of the C++ GDALDataset class.
Definition: gdal.h:268
int GDALHasArbitraryOverviews(GDALRasterBandH)
Check for arbitrary overviews.
Definition: gdalrasterband.cpp:2173
const void * GDALMDArrayGetRawNoDataValue(GDALMDArrayH hArray)
Return the nodata value as a "raw" value.
Definition: gdalmultidim.cpp:9336
char ** GDALGetMetadata(GDALMajorObjectH, const char *)
Fetch metadata.
Definition: gdalmajorobject.cpp:266
int GDALGetAccess(GDALDatasetH hDS)
Return access flag.
Definition: gdaldataset.cpp:2753
GDALDimensionH * GDALGroupGetDimensions(GDALGroupH hGroup, size_t *pnCount, CSLConstList papszOptions)
Return the list of dimensions contained in this group and used by its arrays.
Definition: gdalmultidim.cpp:8751
int GDALGetRasterBandXSize(GDALRasterBandH)
Fetch XSize of raster.
Definition: gdalrasterband.cpp:2743
GDALRATFieldUsage GDALRATGetUsageOfCol(GDALRasterAttributeTableH, int)
Fetch column usage value.
Definition: gdal_rat.cpp:1357
int GDALAttributeReadAsInt(GDALAttributeH hAttr)
Return the value of an attribute as a integer.
Definition: gdalmultidim.cpp:10226
GDALExtendedDataTypeH GDALExtendedDataTypeCreate(GDALDataType eType)
Return a new GDALExtendedDataType of class GEDTC_NUMERIC.
Definition: gdalmultidim.cpp:8126
GDALRATFieldUsage
Field usage of raster attribute table.
Definition: gdal.h:1325
@ GFU_Min
Definition: gdal.h:1329
@ GFU_AlphaMin
Definition: gdal.h:1339
@ GFU_GreenMin
Definition: gdal.h:1337
@ GFU_Red
Definition: gdal.h:1332
@ GFU_Alpha
Definition: gdal.h:1335
@ GFU_MaxCount
Definition: gdal.h:1344
@ GFU_MinMax
Definition: gdal.h:1331
@ GFU_RedMin
Definition: gdal.h:1336
@ GFU_GreenMax
Definition: gdal.h:1341
@ GFU_Name
Definition: gdal.h:1328
@ GFU_BlueMax
Definition: gdal.h:1342
@ GFU_BlueMin
Definition: gdal.h:1338
@ GFU_RedMax
Definition: gdal.h:1340
@ GFU_Green
Definition: gdal.h:1333
@ GFU_Blue
Definition: gdal.h:1334
@ GFU_AlphaMax
Definition: gdal.h:1343
@ GFU_PixelCount
Definition: gdal.h:1327
@ GFU_Generic
Definition: gdal.h:1326
@ GFU_Max
Definition: gdal.h:1330
double GDALGetRasterScale(GDALRasterBandH, int *pbSuccess)
Fetch the raster value scale.
Definition: gdalrasterband.cpp:2560
int GDALGetColorEntryCount(GDALColorTableH)
Get number of color entries in table.
Definition: gdalcolortable.cpp:317
GDALRasterBandH GDALGetRasterBand(GDALDatasetH, int)
Fetch a band object for a dataset.
Definition: gdaldataset.cpp:800
GDALAccess GDALGetRasterAccess(GDALRasterBandH)
Find out if we have update permission for this band.
Definition: gdalrasterband.cpp:1495
void GDALComputeRasterMinMax(GDALRasterBandH hBand, int bApproxOK, double adfMinMax[2])
Compute the min/max values for a band.
Definition: gdalrasterband.cpp:5704
CPLVirtualMem * GDALRasterBandGetTiledVirtualMem(GDALRasterBandH hBand, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize, int nYSize, int nTileXSize, int nTileYSize, GDALDataType eBufType, size_t nCacheSize, int bSingleThreadUsage, CSLConstList papszOptions)
Create a CPLVirtualMem object from a GDAL rasterband object, with tiling organization.
Definition: gdalvirtualmem.cpp:1669
int GDALGeneralCmdLineProcessor(int nArgc, char ***ppapszArgv, int nOptions)
General utility option processing.
Definition: gdal_misc.cpp:2865
int GDALRATChangesAreWrittenToFile(GDALRasterAttributeTableH hRAT)
Determine whether changes made to this RAT are reflected directly in the dataset.
Definition: gdal_rat.cpp:1929
OGRSpatialReferenceH GDALGetGCPSpatialRef(GDALDatasetH)
Get output spatial reference system for GCPs.
Definition: gdaldataset.cpp:1633
int GDALMDArrayWrite(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count, const GInt64 *arrayStep, const GPtrDiff_t *bufferStride, GDALExtendedDataTypeH bufferDatatype, const void *pSrcBuffer, const void *psrcBufferAllocStart, size_t nSrcBufferllocSize)
Write part or totality of a multidimensional array.
Definition: gdalmultidim.cpp:9161
int GDALDumpOpenDatasets(FILE *)
List open datasets.
Definition: gdaldataset.cpp:3828
void GDALExtendedDataTypeFreeComponents(GDALEDTComponentH *components, size_t nCount)
Free the return of GDALExtendedDataTypeGetComponents().
Definition: gdalmultidim.cpp:8393
size_t GDALExtendedDataTypeGetSize(GDALExtendedDataTypeH hEDT)
Return data type size in bytes.
Definition: gdalmultidim.cpp:8271
GDALDataType GDALGetRasterDataType(GDALRasterBandH)
Fetch the pixel data type for this band.
Definition: gdalrasterband.cpp:844
struct GDALEDTComponentHS * GDALEDTComponentH
Opaque type for C++ GDALEDTComponent.
Definition: gdal.h:313
int GDALExtractRPCInfoV2(CSLConstList, GDALRPCInfoV2 *)
Extract RPC info from metadata, and apply to an RPCInfo structure.
Definition: gdal_misc.cpp:3445
GDALMDArrayH GDALGroupOpenMDArrayFromFullname(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a multidimensional array from its fully qualified name.
Definition: gdalmultidim.cpp:8579
GDALColorTableH GDALCreateColorTable(GDALPaletteInterp)
Construct a new color table.
Definition: gdalcolortable.cpp:69
GDALRasterBandH GDALGetMaskBand(GDALRasterBandH hBand)
Return the mask band associated with the band.
Definition: gdalrasterband.cpp:6154
GDALAttributeH GDALMDArrayCreateAttribute(GDALMDArrayH hArray, const char *pszName, size_t nDimensions, const GUInt64 *panDimensions, GDALExtendedDataTypeH hEDT, CSLConstList papszOptions)
Create a attribute within an array.
Definition: gdalmultidim.cpp:9297
char ** GDALAttributeReadAsStringArray(GDALAttributeH hAttr)
Return the value of an attribute as an array of strings.
Definition: gdalmultidim.cpp:10262
CPLErr GDALOverviewMagnitudeCorrection(GDALRasterBandH hBaseBand, int nOverviewCount, GDALRasterBandH *pahOverviews, GDALProgressFunc pfnProgress, void *pProgressData)
Undocumented.
Definition: overview.cpp:5487
void GDALReleaseDimensions(GDALDimensionH *dims, size_t nCount)
Free the return of GDALGroupGetDimensions() or GDALMDArrayGetDimensions()
Definition: gdalmultidim.cpp:9087
const char * GDALGetDataTypeName(GDALDataType)
Get name of data type.
Definition: gdal_misc.cpp:568
const char * GDALExtendedDataTypeGetName(GDALExtendedDataTypeH hEDT)
Return type name.
Definition: gdalmultidim.cpp:8229
void GDALRATSetRowCount(GDALRasterAttributeTableH, int)
Set row count.
Definition: gdal_rat.cpp:332
GDALDatasetH GDALOpenShared(const char *, GDALAccess)
Open a raster file as a GDALDataset.
Definition: gdaldataset.cpp:3702
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:2152
GDALExtendedDataTypeH GDALExtendedDataTypeCreateStringEx(size_t nMaxStringLength, GDALExtendedDataTypeSubType eSubType)
Return a new GDALExtendedDataType of class GEDTC_STRING.
Definition: gdalmultidim.cpp:8165
void GDALSwapWords(void *pData, int nWordSize, int nWordCount, int nWordSkip)
Byte swap words in-place.
Definition: rasterio.cpp:2060
GDALEDTComponentH * GDALExtendedDataTypeGetComponents(GDALExtendedDataTypeH hEDT, size_t *pnCount)
Return the components of the data type (only valid when GetClass() == GEDTC_COMPOUND)
Definition: gdalmultidim.cpp:8368
const char * GDALGetDriverHelpTopic(GDALDriverH)
Return the URL to the help that describes the driver.
Definition: gdaldriver.cpp:1616
GDALDriverH GDALGetDriver(int)
Fetch driver by index.
Definition: gdaldrivermanager.cpp:403
void GDALGroupRelease(GDALGroupH hGroup)
Release the GDAL in-memory object associated with a GDALGroupH.
Definition: gdalmultidim.cpp:8487
void GDALRATSetValueAsInt(GDALRasterAttributeTableH, int, int, int)
Set field value from integer.
Definition: gdal_rat.cpp:1827
double GDALGetRasterMinimum(GDALRasterBandH, int *pbSuccess)
Fetch the minimum value for this band.
Definition: gdalrasterband.cpp:1943
CPLErr GDALSetRasterCategoryNames(GDALRasterBandH, CSLConstList)
Set the category names for this band.
Definition: gdalrasterband.cpp:1593
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
GUInt64 GDALDimensionGetSize(GDALDimensionH hDim)
Return the size, that is the number of values along the dimension.
Definition: gdalmultidim.cpp:10539
char ** GDALGetFileList(GDALDatasetH)
Fetch files forming dataset.
Definition: gdaldataset.cpp:3076
int GDALMDArraySetOffsetEx(GDALMDArrayH hArray, double dfOffset, GDALDataType eStorageType)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9482
int GDALMDArrayCache(GDALMDArrayH hArray, CSLConstList papszOptions)
Cache the content of the array into an auxiliary filename.
Definition: gdalmultidim.cpp:10011
GDALDataType GDALGetNonComplexDataType(GDALDataType)
Return the base data type for the specified input.
Definition: gdal_misc.cpp:763
double GDALGetRasterMaximum(GDALRasterBandH, int *pbSuccess)
Fetch the maximum value for this band.
Definition: gdalrasterband.cpp:1854
int GDALDataTypeIsComplex(GDALDataType)
Is data type complex?
Definition: gdal_misc.cpp:393
const char * GDALEDTComponentGetName(GDALEDTComponentH hComp)
Return the name.
Definition: gdalmultidim.cpp:8443
void GDALDestroyDriverManager(void)
Destroy the driver manager.
Definition: gdaldrivermanager.cpp:903
CPLErr GDALRasterIOEx(GDALRasterBandH hRBand, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType, GSpacing nPixelSpace, GSpacing nLineSpace, GDALRasterIOExtraArg *psExtraArg)
Read/write a region of image data for this band.
Definition: gdalrasterband.cpp:429
int GDALMDArraySetUnit(GDALMDArrayH hArray, const char *)
Set the variable unit.
Definition: gdalmultidim.cpp:9827
const char * GDALGetRasterUnitType(GDALRasterBandH)
Return raster unit type.
Definition: gdalrasterband.cpp:2653
int GDALValidateCreationOptions(GDALDriverH, CSLConstList papszCreationOptions)
Validate the list of creation options that are handled by a driver.
Definition: gdaldriver.cpp:1682
OGRLayerH GDALDatasetGetLayer(GDALDatasetH, int)
Fetch a layer by index.
Definition: gdaldataset.cpp:4409
CPLVirtualMem * GDALGetVirtualMemAuto(GDALRasterBandH hBand, GDALRWFlag eRWFlag, int *pnPixelSpace, GIntBig *pnLineSpace, CSLConstList papszOptions)
Create a CPLVirtualMem object from a GDAL raster band object.
Definition: gdalrasterband.cpp:6706
CPLErr GDALRenameDataset(GDALDriverH, const char *pszNewName, const char *pszOldName)
Rename a dataset.
Definition: gdaldriver.cpp:1401
void GDALRATDumpReadable(GDALRasterAttributeTableH, FILE *)
Dump RAT in readable form.
Definition: gdal_rat.cpp:1159
CPLErr GDALSetGCPs2(GDALDatasetH, int, const GDAL_GCP *, OGRSpatialReferenceH)
Assign GCPs.
Definition: gdaldataset.cpp:1892
size_t GDALExtendedDataTypeGetMaxStringLength(GDALExtendedDataTypeH hEDT)
Return the maximum length of a string in bytes.
Definition: gdalmultidim.cpp:8287
GDALMDArrayH GDALDimensionGetIndexingVariable(GDALDimensionH hDim)
Return the variable that is used to index the dimension (if there is one).
Definition: gdalmultidim.cpp:10558
OGRErr GDALDatasetRollbackTransaction(GDALDatasetH hDS)
For datasources which support transactions, RollbackTransaction will roll back a datasource to its st...
Definition: gdaldataset.cpp:7543
int GDALAttributeWriteDouble(GDALAttributeH hAttr, double)
Write an attribute from a double value.
Definition: gdalmultidim.cpp:10408
int GDALGetRasterXSize(GDALDatasetH)
Fetch raster width in pixels.
Definition: gdaldataset.cpp:712
CSLConstList GDALGroupGetStructuralInfo(GDALGroupH hGroup)
Return structural information on the group.
Definition: gdalmultidim.cpp:8835
GDALExtendedDataTypeClass
Enumeration giving the class of a GDALExtendedDataType.
Definition: gdal.h:291
@ GEDTC_STRING
String value.
Definition: gdal.h:295
@ GEDTC_COMPOUND
Compound data type.
Definition: gdal.h:297
@ GEDTC_NUMERIC
Numeric value.
Definition: gdal.h:293
CPLErr GDALDeleteRasterNoDataValue(GDALRasterBandH)
Remove the no data value for this band.
Definition: gdalrasterband.cpp:1761
CPLErr GDALSetMetadataItem(GDALMajorObjectH, const char *, const char *, const char *)
Set single metadata item.
Definition: gdalmajorobject.cpp:415
GDALDataType GDALFindDataTypeForValue(double dValue, int bComplex)
Finds the smallest data type able to support the provided value.
Definition: gdal_misc.cpp:284
GDALGroupH GDALGroupOpenGroup(GDALGroupH hGroup, const char *pszSubGroupName, CSLConstList papszOptions)
Open and return a sub-group.
Definition: gdalmultidim.cpp:8649
OGRFeatureH GDALDatasetGetNextFeature(GDALDatasetH hDS, OGRLayerH *phBelongingLayer, double *pdfProgressPct, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch the next available feature from this dataset.
Definition: gdaldataset.cpp:7216
OGRErr GDALDatasetStartTransaction(GDALDatasetH hDS, int bForce)
For datasources which support transactions, StartTransaction creates a transaction.
Definition: gdaldataset.cpp:7436
CPLErr(* GDALDerivedPixelFuncWithArgs)(void **papoSources, int nSources, void *pData, int nBufXSize, int nBufYSize, GDALDataType eSrcType, GDALDataType eBufType, int nPixelSpace, int nLineSpace, CSLConstList papszFunctionArgs)
Type of functions to pass to GDALAddDerivedBandPixelFuncWithArgs.
Definition: gdal.h:941
GDALDatasetH GDALCreatePansharpenedVRT(const char *pszXML, GDALRasterBandH hPanchroBand, int nInputSpectralBands, GDALRasterBandH *pahInputSpectralBands)
Create a virtual pansharpened dataset.
Definition: vrtpansharpened.cpp:93
int GDALGetDataCoverageStatus(GDALRasterBandH hBand, int nXOff, int nYOff, int nXSize, int nYSize, int nMaskFlagStop, double *pdfDataPct)
Get the coverage status of a sub-window of the raster.
Definition: gdalrasterband.cpp:6804
GDALGroupH GDALGroupCreateGroup(GDALGroupH hGroup, const char *pszSubGroupName, CSLConstList papszOptions)
Create a sub-group within a group.
Definition: gdalmultidim.cpp:8869
int GDALRATGetLinearBinning(GDALRasterAttributeTableH, double *, double *)
Get linear binning information.
Definition: gdal_rat.cpp:549
GDALAsyncStatusType GDALARGetNextUpdatedRegion(GDALAsyncReaderH hARIO, double dfTimeout, int *pnXBufOff, int *pnYBufOff, int *pnXBufSize, int *pnYBufSize)
Get async IO update.
Definition: gdaldefaultasync.cpp:174
CPLErr GDALGetDefaultHistogramEx(GDALRasterBandH hBand, double *pdfMin, double *pdfMax, int *pnBuckets, GUIntBig **ppanHistogram, int bForce, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch default raster histogram.
Definition: gdalrasterband.cpp:3626
CPLErr GDALAddBand(GDALDatasetH hDS, GDALDataType eType, CSLConstList papszOptions)
Add a band to a dataset.
Definition: gdaldataset.cpp:607
void GDALAttributeFreeRawResult(GDALAttributeH hAttr, GByte *raw, size_t nSize)
Free the return of GDALAttributeAsRaw()
Definition: gdalmultidim.cpp:10170
CPLErr GDALSetDefaultHistogram(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, int *panHistogram)
Set default histogram.
Definition: gdalrasterband.cpp:5752
const char * GDALGetAsyncStatusTypeName(GDALAsyncStatusType)
Get name of AsyncStatus data type.
Definition: gdal_misc.cpp:828
const char * GDALDimensionGetFullName(GDALDimensionH hDim)
Return dimension full name.
Definition: gdalmultidim.cpp:10497
GUInt64 GDALAttributeGetTotalElementsCount(GDALAttributeH hAttr)
Return the total number of values in the attribute.
Definition: gdalmultidim.cpp:10071
char ** GDALGetMetadataDomainList(GDALMajorObjectH hObject)
Fetch list of metadata domains.
Definition: gdalmajorobject.cpp:219
GDALColorTableH GDALCloneColorTable(GDALColorTableH)
Make a copy of a color table.
Definition: gdalcolortable.cpp:280
const char * GDALGetProjectionRef(GDALDatasetH)
Fetch the projection definition string for this dataset.
Definition: gdaldataset.cpp:990
GDALRIOResampleAlg
RasterIO() resampling method.
Definition: gdal.h:131
@ GRIORA_Mode
Definition: gdal.h:139
@ GRIORA_Lanczos
Definition: gdal.h:136
@ GRIORA_Cubic
Definition: gdal.h:134
@ GRIORA_CubicSpline
Definition: gdal.h:135
@ GRIORA_Average
Definition: gdal.h:137
@ GRIORA_RMS
RMS: Root Mean Square / Quadratic Mean.
Definition: gdal.h:149
@ GRIORA_NearestNeighbour
Definition: gdal.h:132
@ GRIORA_Gauss
Definition: gdal.h:140
@ GRIORA_Bilinear
Definition: gdal.h:133
CPLErr GDALSetRasterUnitType(GDALRasterBandH hBand, const char *pszNewValue)
Set unit type.
Definition: gdalrasterband.cpp:2706
GDALExtendedDataTypeSubType GDALExtendedDataTypeGetSubType(GDALExtendedDataTypeH hEDT)
Return the subtype of a type.
Definition: gdalmultidim.cpp:8345
GDALExtendedDataTypeH GDALEDTComponentGetType(GDALEDTComponentH hComp)
Return the data type of the component.
Definition: gdalmultidim.cpp:8471
GDALGroupH GDALGroupOpenGroupFromFullname(GDALGroupH hGroup, const char *pszMDArrayName, CSLConstList papszOptions)
Open and return a sub-group from its fully qualified name.
Definition: gdalmultidim.cpp:8720
const char * GDALMDArrayGetName(GDALMDArrayH hArray)
Return array name.
Definition: gdalmultidim.cpp:8998
void GDALFlushCache(GDALDatasetH hDS)
Flush all write cached data to disk.
Definition: gdaldataset.cpp:477
int GDALWriteWorldFile(const char *, const char *, double *)
Write ESRI world file.
Definition: gdal_misc.cpp:2119
int GDALDataTypeIsInteger(GDALDataType)
Is data type integer? (might be complex)
Definition: gdal_misc.cpp:448
CPLErr GDALRATCreateColumn(GDALRasterAttributeTableH, const char *, GDALRATFieldType, GDALRATFieldUsage)
Create new column.
Definition: gdal_rat.cpp:456
int GDALDimensionSetIndexingVariable(GDALDimensionH hDim, GDALMDArrayH hArray)
Set the variable that is used to index the dimension.
Definition: gdalmultidim.cpp:10580
OGRErr GDALDatasetDeleteLayer(GDALDatasetH, int)
Delete the indicated layer from the datasource.
Definition: gdaldataset.cpp:4510
const char * GDALGetDriverLongName(GDALDriverH)
Return the long name of a driver.
Definition: gdaldriver.cpp:1585
OGRSpatialReferenceH GDALMDArrayGetSpatialRef(GDALMDArrayH hArray)
Return the spatial reference system object associated with the array.
Definition: gdalmultidim.cpp:9885
int GDALCheckVersion(int nVersionMajor, int nVersionMinor, const char *pszCallingComponentName)
Return TRUE if GDAL library version at runtime matches nVersionMajor.nVersionMinor.
Definition: gdal_misc.cpp:2311
GDALEDTComponentH GDALEDTComponentCreate(const char *pszName, size_t nOffset, GDALExtendedDataTypeH hType)
Create a new GDALEDTComponent.
Definition: gdalmultidim.cpp:8412
GDALAttributeH GDALMDArrayGetAttribute(GDALMDArrayH hArray, const char *pszName)
Return an attribute by its name.
Definition: gdalmultidim.cpp:9242
const char * GDALGetDriverCreationOptionList(GDALDriverH)
Return the list of creation options of the driver.
Definition: gdaldriver.cpp:1641
GDALDatasetH GDALGetBandDataset(GDALRasterBandH)
Fetch the owning dataset handle.
Definition: gdalrasterband.cpp:2863
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:2860
GDALExtendedDataTypeH GDALAttributeGetDataType(GDALAttributeH hAttr)
Return the data type.
Definition: gdalmultidim.cpp:10127
CPLXMLNode * GDALGetJPEG2000Structure(const char *pszFilename, CSLConstList papszOptions)
Dump the structure of a JPEG2000 file as a XML tree.
Definition: gdaljp2structure.cpp:1996
int GDALLoadTabFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for MapInfo .tab files.
Definition: gdal_misc.cpp:1613
int GDALGetRasterBandYSize(GDALRasterBandH)
Fetch YSize of raster.
Definition: gdalrasterband.cpp:2780
void GDALARUnlockBuffer(GDALAsyncReaderH hARIO)
Unlock image buffer.
Definition: gdaldefaultasync.cpp:268
char ** GDALGroupGetVectorLayerNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of layer names contained in this group.
Definition: gdalmultidim.cpp:8671
CPLErr GDALSetRasterNoDataValue(GDALRasterBandH, double)
Set the no data value for this band.
Definition: gdalrasterband.cpp:1713
CPLErr GDALDatasetRasterIO(GDALDatasetH hDS, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType, int nBandCount, int *panBandCount, int nPixelSpace, int nLineSpace, int nBandSpace)
Read/write a region of image data from multiple bands.
Definition: gdaldataset.cpp:2624
CPLErr GDALBuildOverviews(GDALDatasetH, const char *, int, int *, int, int *, GDALProgressFunc, void *)
Build raster overview(s)
Definition: gdaldataset.cpp:1993
int GDALExtendedDataTypeCanConvertTo(GDALExtendedDataTypeH hSourceEDT, GDALExtendedDataTypeH hTargetEDT)
Return whether this data type can be converted to the other one.
Definition: gdalmultidim.cpp:8305
int GDALRATGetValueAsInt(GDALRasterAttributeTableH, int, int)
Fetch field value as a integer.
Definition: gdal_rat.cpp:1593
GDALDataType GDALExtendedDataTypeGetNumericDataType(GDALExtendedDataTypeH hEDT)
Return numeric data type (only valid when GetClass() == GEDTC_NUMERIC)
Definition: gdalmultidim.cpp:8257
void GDALDeregisterDriver(GDALDriverH)
Deregister the passed driver.
Definition: gdaldrivermanager.cpp:580
CPLErr GDALCopyDatasetFiles(GDALDriverH, const char *pszNewName, const char *pszOldName)
Copy the files of a dataset.
Definition: gdaldriver.cpp:1526
CPLErr GDALGetDefaultHistogram(GDALRasterBandH hBand, double *pdfMin, double *pdfMax, int *pnBuckets, int **ppanHistogram, int bForce, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch default raster histogram.
Definition: gdalrasterband.cpp:3555
OGRErr GDALDatasetAbortSQL(GDALDatasetH)
Abort any SQL statement running in the data store.
Definition: gdaldataset.cpp:4823
void GDALDestroyRasterAttributeTable(GDALRasterAttributeTableH)
Destroys a RAT.
Definition: gdal_rat.cpp:1228
CPLErr GDALCreateDatasetMaskBand(GDALDatasetH hDS, int nFlags)
Adds a mask band to the dataset.
Definition: gdaldataset.cpp:3153
int GDALAttributeWriteString(GDALAttributeH hAttr, const char *)
Write an attribute from a string value.
Definition: gdalmultidim.cpp:10365
int GDALMDArraySetScale(GDALMDArrayH hArray, double dfScale)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9425
CPLVirtualMem * GDALDatasetGetTiledVirtualMem(GDALDatasetH hDS, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize, int nYSize, int nTileXSize, int nTileYSize, GDALDataType eBufType, int nBandCount, int *panBandMap, GDALTileOrganization eTileOrganization, size_t nCacheSize, int bSingleThreadUsage, CSLConstList papszOptions)
Create a CPLVirtualMem object from a GDAL dataset object, with tiling organization.
Definition: gdalvirtualmem.cpp:1554
CPLErr GDALGetActualBlockSize(GDALRasterBandH, int nXBlockOff, int nYBlockOff, int *pnXValid, int *pnYValid)
Retrieve the actual block size for a given block offset.
Definition: gdalrasterband.cpp:803
GDALAsyncReaderH GDALBeginAsyncReader(GDALDatasetH hDS, int nXOff, int nYOff, int nXSize, int nYSize, void *pBuf, int nBufXSize, int nBufYSize, GDALDataType eBufType, int nBandCount, int *panBandMap, int nPixelSpace, int nLineSpace, int nBandSpace, CSLConstList papszOptions)
Sets up an asynchronous data request.
Definition: gdaldataset.cpp:4025
GDAL_GCP * GDALDuplicateGCPs(int, const GDAL_GCP *)
Duplicate an array of GCPs.
Definition: gdal_misc.cpp:1247
CPLErr GDALSetDefaultHistogramEx(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, GUIntBig *panHistogram)
Set default histogram.
Definition: gdalrasterband.cpp:5796
OGRLayerH GDALDatasetCreateLayer(GDALDatasetH, const char *, OGRSpatialReferenceH, OGRwkbGeometryType, CSLConstList)
This function attempts to create a new layer on the dataset with the indicated name,...
Definition: gdaldataset.cpp:4670
GDALRATFieldType
Field type of raster attribute table.
Definition: gdal.h:1318
@ GFT_Real
Definition: gdal.h:1320
@ GFT_String
Definition: gdal.h:1321
@ GFT_Integer
Definition: gdal.h:1319
void GDALDatasetResetReading(GDALDatasetH)
Reset feature reading to start on the first feature.
Definition: gdaldataset.cpp:6989
struct GDALMDArrayHS * GDALMDArrayH
Opaque type for C++ GDALMDArray.
Definition: gdal.h:317
int GDALAttributeWriteDoubleArray(GDALAttributeH hAttr, const double *, size_t)
Write an attribute from an array of double.
Definition: gdalmultidim.cpp:10454
void * GDALRasterAttributeTableH
Opaque type used for the C bindings of the C++ GDALRasterAttributeTable class.
Definition: gdal.h:280
char ** GDALGroupGetGroupNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of sub-groups contained in this group.
Definition: gdalmultidim.cpp:8627
void GDALRATRemoveStatistics(GDALRasterAttributeTableH)
Remove Statistics from RAT.
Definition: gdal_rat.cpp:2252
GDALDataType GDALDataTypeUnion(GDALDataType, GDALDataType)
Return the smallest data type that can fully express both input data types.
Definition: gdal_misc.cpp:130
GDALColorInterp GDALGetColorInterpretationByName(const char *pszName)
Get color interpretation by symbolic name.
Definition: gdal_misc.cpp:986
OGRLayerH GDALGroupOpenVectorLayer(GDALGroupH hGroup, const char *pszVectorLayerName, CSLConstList papszOptions)
Open and return a vector layer.
Definition: gdalmultidim.cpp:8698
int GDALMDArrayRead(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count, const GInt64 *arrayStep, const GPtrDiff_t *bufferStride, GDALExtendedDataTypeH bufferDatatype, void *pDstBuffer, const void *pDstBufferAllocStart, size_t nDstBufferllocSize)
Read part or totality of a multidimensional array.
Definition: gdalmultidim.cpp:9121
const char * GDALDimensionGetName(GDALDimensionH hDim)
Return dimension name.
Definition: gdalmultidim.cpp:10483
int GDALGetColorEntryAsRGB(GDALColorTableH, int, GDALColorEntry *)
Fetch a table entry in RGB format.
Definition: gdalcolortable.cpp:184
int GDALAttributeWriteRaw(GDALAttributeH hAttr, const void *, size_t)
Write an attribute from raw values expressed in GetDataType()
Definition: gdalmultidim.cpp:10344
size_t * GDALMDArrayGetProcessingChunkSize(GDALMDArrayH hArray, size_t *pnCount, size_t nMaxChunkMemory)
Return an optimal chunk size for read/write operations, given the natural block size and memory const...
Definition: gdalmultidim.cpp:9642
int GDALDatasetGetLayerCount(GDALDatasetH)
Get the number of layers in this dataset.
Definition: gdaldataset.cpp:4376
CPLErr GDALSetMetadata(GDALMajorObjectH, CSLConstList, const char *)
Set metadata.
Definition: gdalmajorobject.cpp:318
CPLErr GDALRasterAdviseRead(GDALRasterBandH hRB, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, int nBXSize, int nBYSize, GDALDataType eBDataType, CSLConstList papszOptions)
Advise driver of upcoming read requests.
Definition: gdalrasterband.cpp:3718
int GDALDatasetTestCapability(GDALDatasetH, const char *)
Test if capability is available.
Definition: gdaldataset.cpp:7318
GDALDimensionH * GDALMDArrayGetDimensions(GDALMDArrayH hArray, size_t *pnCount)
Return the dimensions of the array.
Definition: gdalmultidim.cpp:9063
void * GDALAsyncReaderH
Opaque type used for the C bindings of the C++ GDALAsyncReader class.
Definition: gdal.h:283
double GDALAdjustValueToDataType(GDALDataType eDT, double dfValue, int *pbClamped, int *pbRounded)
Adjust a value to the output data type.
Definition: gdal_misc.cpp:688
void GDALEndAsyncReader(GDALDatasetH hDS, GDALAsyncReaderH hAsynchReaderH)
End asynchronous request.
Definition: gdaldataset.cpp:4077
CPLVirtualMem * GDALRasterBandGetVirtualMem(GDALRasterBandH hBand, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize, int nYSize, int nBufXSize, int nBufYSize, GDALDataType eBufType, int nPixelSpace, GIntBig nLineSpace, size_t nCacheSize, size_t nPageSizeHint, int bSingleThreadUsage, CSLConstList papszOptions)
Create a CPLVirtualMem object from a GDAL raster band object.
Definition: gdalvirtualmem.cpp:1086
CPLErr GDALCreateMaskBand(GDALRasterBandH hBand, int nFlags)
Adds a mask band to the current band.
Definition: gdalrasterband.cpp:6333
GDALAttributeH GDALGroupCreateAttribute(GDALGroupH hGroup, const char *pszName, size_t nDimensions, const GUInt64 *panDimensions, GDALExtendedDataTypeH hEDT, CSLConstList papszOptions)
Create a attribute within a group.
Definition: gdalmultidim.cpp:8954
int GDALDatasetIsLayerPrivate(GDALDatasetH, int)
Returns true if the layer at the specified index is deemed a private or system table,...
Definition: gdaldataset.cpp:4479
int GDALGetDataTypeSizeBytes(GDALDataType)
Get data type size in bytes.
Definition: gdal_misc.cpp:308
CPLErr GDALDeleteDataset(GDALDriverH, const char *)
Delete named dataset.
Definition: gdaldriver.cpp:1274
void GDALExtendedDataTypeRelease(GDALExtendedDataTypeH hEDT)
Release the GDAL in-memory object associated with a GDALExtendedDataTypeH.
Definition: gdalmultidim.cpp:8216
GDALMDArrayH GDALMDArrayTranspose(GDALMDArrayH hArray, size_t nNewAxisCount, const int *panMapNewAxisToOldAxis)
Return a view of the array whose axis have been reordered.
Definition: gdalmultidim.cpp:9707
double GDALRATGetValueAsDouble(GDALRasterAttributeTableH, int, int)
Fetch field value as a double.
Definition: gdal_rat.cpp:1652
GDALGroupH GDALDatasetGetRootGroup(GDALDatasetH hDS)
Return the root GDALGroup of this dataset.
Definition: gdalmultidim.cpp:10600
GDALDatasetH GDALOpenEx(const char *pszFilename, unsigned int nOpenFlags, const char *const *papszAllowedDrivers, const char *const *papszOpenOptions, const char *const *papszSiblingFiles)
Open a raster or vector file as a GDALDataset.
Definition: gdaldataset.cpp:3308
void GDALAllRegister(void)
Register all known configured GDAL drivers.
Definition: gdalallregister.cpp:62
GDALRATFieldType GDALRATGetTypeOfCol(GDALRasterAttributeTableH, int)
Fetch column type.
Definition: gdal_rat.cpp:1398
const char * GDALGetGCPProjection(GDALDatasetH)
Get output projection for GCPs.
Definition: gdaldataset.cpp:1678
CPLErr GDALDatasetRasterIOEx(GDALDatasetH hDS, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType, int nBandCount, int *panBandCount, GSpacing nPixelSpace, GSpacing nLineSpace, GSpacing nBandSpace, GDALRasterIOExtraArg *psExtraArg)
Read/write a region of image data from multiple bands.
Definition: gdaldataset.cpp:2653
double GDALMDArrayGetOffset(GDALMDArrayH hArray, int *pbHasValue)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9547
void GDALReleaseArrays(GDALMDArrayH *arrays, size_t nCount)
Free the return of GDALMDArrayGetCoordinateVariables()
Definition: gdalmultidim.cpp:9990
GDALMDArrayH GDALMDArrayGetMask(GDALMDArrayH hArray, CSLConstList papszOptions)
Return an array that is a mask for the current array.
Definition: gdalmultidim.cpp:9762
const char * GDALAttributeGetName(GDALAttributeH hAttr)
Return the name of the attribute.
Definition: gdalmultidim.cpp:10041
int GDALGetDriverCount(void)
Fetch the number of registered drivers.
Definition: gdaldrivermanager.cpp:365
char ** GDALGroupGetMDArrayNames(GDALGroupH hGroup, CSLConstList papszOptions)
Return the list of multidimensional array names contained in this group.
Definition: gdalmultidim.cpp:8534
GDALExtendedDataTypeSubType
Enumeration giving the subtype of a GDALExtendedDataType.
Definition: gdal.h:303
@ GEDTST_JSON
JSon.
Definition: gdal.h:307
@ GEDTST_NONE
None.
Definition: gdal.h:305
void GDALDestroyColorTable(GDALColorTableH)
Destroys a color table.
Definition: gdalcolortable.cpp:96
int GDALLoadOziMapFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for OZI .map.
Definition: gdal_misc.cpp:1360
CPLErr GDALAddDerivedBandPixelFuncWithArgs(const char *pszName, GDALDerivedPixelFuncWithArgs pfnPixelFunc, const char *pszMetadata)
This adds a pixel function to the global list of available pixel functions for derived bands.
Definition: vrtderivedrasterband.cpp:279
GDALDatasetH GDALMDArrayAsClassicDataset(GDALMDArrayH hArray, size_t iXDim, size_t iYDim)
Return a view of this array as a "classic" GDALDataset (ie 2D)
Definition: gdalmultidim.cpp:10659
CPLErr GDALComputeRasterStatistics(GDALRasterBandH, int bApproxOK, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GDALProgressFunc pfnProgress, void *pProgressData)
Compute image statistics.
Definition: gdalrasterband.cpp:5380
GDALMDArrayH * GDALMDArrayGetCoordinateVariables(GDALMDArrayH hArray, size_t *pnCount)
Return coordinate variables.
Definition: gdalmultidim.cpp:9966
int GDALAttributeWriteStringArray(GDALAttributeH hAttr, CSLConstList)
Write an attribute from an array of strings.
Definition: gdalmultidim.cpp:10430
CPLErr GDALMDArrayGetStatistics(GDALMDArrayH hArray, GDALDatasetH, int bApproxOK, int bForce, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GUInt64 *pnValidCount, GDALProgressFunc pfnProgress, void *pProgressData)
Fetch statistics.
Definition: gdalmultidim.cpp:9904
int GDALReadOziMapFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for OZI .map.
Definition: gdal_misc.cpp:1568
const char * GDALDimensionGetType(GDALDimensionH hDim)
Return dimension type.
Definition: gdalmultidim.cpp:10511
CPLErr GDALRATSetTableType(GDALRasterAttributeTableH hRAT, const GDALRATTableType eInTableType)
Set RAT Table Type.
Definition: gdal_rat.cpp:591
OGRLayerH GDALDatasetExecuteSQL(GDALDatasetH, const char *, OGRGeometryH, const char *)
Execute an SQL statement against the data store.
Definition: gdaldataset.cpp:4779
CPLErr GDALSetRasterOffset(GDALRasterBandH hBand, double dfNewOffset)
Set scaling offset.
Definition: gdalrasterband.cpp:2504
CSLConstList GDALMDArrayGetStructuralInfo(GDALMDArrayH hArray)
Return structural information on the array.
Definition: gdalmultidim.cpp:9671
GUInt64 * GDALAttributeGetDimensionsSize(GDALAttributeH hAttr, size_t *pnCount)
Return the dimension sizes of the attribute.
Definition: gdalmultidim.cpp:10104
void GDALDeinitGCPs(int, GDAL_GCP *)
De-initialize an array of GCPs (initialized with GDALInitGCPs())
Definition: gdal_misc.cpp:1220
CPLErr GDALReadBlock(GDALRasterBandH, int, int, void *)
Read a block of image data efficiently.
Definition: gdalrasterband.cpp:572
GDALExtendedDataTypeH GDALExtendedDataTypeCreateString(size_t nMaxStringLength)
Return a new GDALExtendedDataType of class GEDTC_STRING.
Definition: gdalmultidim.cpp:8145
double GDALMDArrayGetOffsetEx(GDALMDArrayH hArray, int *pbHasValue, GDALDataType *peStorageType)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9570
CPLErr GDALSetRasterColorInterpretation(GDALRasterBandH, GDALColorInterp)
Set color interpretation of a band.
Definition: gdalrasterband.cpp:2034
GDALDataType GDALFindDataType(int nBits, int bSigned, int bFloating, int bComplex)
Finds the smallest data type able to support the given requirements.
Definition: gdal_misc.cpp:236
int GDALLoadWorldFile(const char *, double *)
Read ESRI world file.
Definition: gdal_misc.cpp:1867
GDALColorTableH GDALGetRasterColorTable(GDALRasterBandH)
Fetch the color table associated with band.
Definition: gdalrasterband.cpp:2076
CPLErr GDALComputeBandStats(GDALRasterBandH hBand, int nSampleStep, double *pdfMean, double *pdfStdDev, GDALProgressFunc pfnProgress, void *pProgressData)
Undocumented.
Definition: overview.cpp:5352
GDALExtendedDataTypeClass GDALExtendedDataTypeGetClass(GDALExtendedDataTypeH hEDT)
Return type class.
Definition: gdalmultidim.cpp:8243
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
GDALDimensionH GDALGroupCreateDimension(GDALGroupH hGroup, const char *pszName, const char *pszType, const char *pszDirection, GUInt64 nSize, CSLConstList papszOptions)
Create a dimension within a group.
Definition: gdalmultidim.cpp:8892
int GDALMDArraySetScaleEx(GDALMDArrayH hArray, double dfScale, GDALDataType eStorageType)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9444
GDALRasterAttributeTableH GDALGetDefaultRAT(GDALRasterBandH hBand)
Fetch default Raster Attribute Table.
Definition: gdalrasterband.cpp:5840
OGRFieldDomainH GDALDatasetGetFieldDomain(GDALDatasetH hDS, const char *pszName)
Get a field domain from its name.
Definition: gdaldataset.cpp:8440
const char * GDALDimensionGetDirection(GDALDimensionH hDim)
Return dimension direction.
Definition: gdalmultidim.cpp:10525
int GDALDereferenceDataset(GDALDatasetH)
Subtract one from dataset reference count.
Definition: gdaldataset.cpp:1397
double GDALMDArrayGetScale(GDALMDArrayH hArray, int *pbHasValue)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9501
GIntBig GDALGetCacheMax64(void)
Get maximum cache memory.
Definition: gdalrasterblock.cpp:239
const char * GDALGetMetadataItem(GDALMajorObjectH, const char *, const char *)
Fetch single metadata item.
Definition: gdalmajorobject.cpp:361
void GDALDatasetReleaseResultSet(GDALDatasetH, OGRLayerH)
Release results of ExecuteSQL().
Definition: gdaldataset.cpp:4347
const GDAL_GCP * GDALGetGCPs(GDALDatasetH)
Fetch GCPs.
Definition: gdaldataset.cpp:1711
GDALRATTableType GDALRATGetTableType(GDALRasterAttributeTableH hRAT)
Get Rat Table Type.
Definition: gdal_rat.cpp:571
CPLErr GDALFillRaster(GDALRasterBandH hBand, double dfRealValue, double dfImaginaryValue)
Fill this band with a constant value.
Definition: gdalrasterband.cpp:1458
OGRStyleTableH GDALDatasetGetStyleTable(GDALDatasetH)
Returns dataset style table.
Definition: gdaldataset.cpp:4847
int GDALRegisterDriver(GDALDriverH)
Register a driver for use.
Definition: gdaldrivermanager.cpp:522
void GDALInitGCPs(int, GDAL_GCP *)
Initialize an array of GCPs.
Definition: gdal_misc.cpp:1194
const char * GDALAttributeReadAsString(GDALAttributeH hAttr)
Return the value of an attribute as a string.
Definition: gdalmultidim.cpp:10206
struct GDALExtendedDataTypeHS * GDALExtendedDataTypeH
Opaque type for C++ GDALExtendedDataType.
Definition: gdal.h:311
int GDALReferenceDataset(GDALDatasetH)
Add one to dataset reference count.
Definition: gdaldataset.cpp:1362
char ** GDALGetRasterCategoryNames(GDALRasterBandH)
Fetch the list of category names for this raster.
Definition: gdalrasterband.cpp:1541
int GDALRATGetColumnCount(GDALRasterAttributeTableH)
Fetch table column count.
Definition: gdal_rat.cpp:1276
int GDALGetGCPCount(GDALDatasetH)
Get number of GCPs.
Definition: gdaldataset.cpp:1531
GDALRasterAttributeTableH GDALRATClone(const GDALRasterAttributeTableH)
Copy Raster Attribute Table.
Definition: gdal_rat.cpp:2212
int GDALMDArraySetNoDataValueAsDouble(GDALMDArrayH hArray, double dfNoDataValue)
Set the nodata value as a double.
Definition: gdalmultidim.cpp:9406
int GDALDataTypeIsFloating(GDALDataType)
Is data type floating? (might be complex)
Definition: gdal_misc.cpp:421
const char * GDALVersionInfo(const char *)
Get runtime version information.
Definition: gdal_misc.cpp:2189
int GDALDataTypeIsConversionLossy(GDALDataType eTypeFrom, GDALDataType eTypeTo)
Is conversion from eTypeFrom to eTypeTo potentially lossy.
Definition: gdal_misc.cpp:505
GDALPaletteInterp GDALGetPaletteInterpretation(GDALColorTableH)
Fetch palette interpretation.
Definition: gdalcolortable.cpp:356
CPLErr GDALSetGCPs(GDALDatasetH, int, const GDAL_GCP *, const char *)
Assign GCPs.
Definition: gdaldataset.cpp:1870
int GDALRATGetRowCount(GDALRasterAttributeTableH)
Fetch row count.
Definition: gdal_rat.cpp:1467
GDALExtendedDataTypeH GDALMDArrayGetDataType(GDALMDArrayH hArray)
Return the data type.
Definition: gdalmultidim.cpp:9104
void * GDALMajorObjectH
Opaque type used for the C bindings of the C++ GDALMajorObject class.
Definition: gdal.h:265
GDALAttributeH * GDALGroupGetAttributes(GDALGroupH hGroup, size_t *pnCount, CSLConstList papszOptions)
Return the list of attributes contained in this group.
Definition: gdalmultidim.cpp:8806
GDALColorInterp
Definition: gdal.h:204
@ GCI_YCbCr_YBand
Definition: gdal.h:219
@ GCI_Undefined
Definition: gdal.h:205
@ GCI_SaturationBand
Definition: gdal.h:213
@ GCI_LightnessBand
Definition: gdal.h:214
@ GCI_HueBand
Definition: gdal.h:212
@ GCI_CyanBand
Definition: gdal.h:215
@ GCI_MagentaBand
Definition: gdal.h:216
@ GCI_GrayIndex
Definition: gdal.h:206
@ GCI_BlueBand
Definition: gdal.h:210
@ GCI_PaletteIndex
Definition: gdal.h:207
@ GCI_RedBand
Definition: gdal.h:208
@ GCI_AlphaBand
Definition: gdal.h:211
@ GCI_Max
Definition: gdal.h:222
@ GCI_YCbCr_CrBand
Definition: gdal.h:221
@ GCI_GreenBand
Definition: gdal.h:209
@ GCI_YellowBand
Definition: gdal.h:217
@ GCI_BlackBand
Definition: gdal.h:218
@ GCI_YCbCr_CbBand
Definition: gdal.h:220
struct GDALGroupHS * GDALGroupH
Opaque type for C++ GDALGroup.
Definition: gdal.h:315
const char * GDALGetDescription(GDALMajorObjectH)
Fetch object description.
Definition: gdalmajorobject.cpp:95
int GDALARLockBuffer(GDALAsyncReaderH hARIO, double dfTimeout)
Lock image buffer.
Definition: gdaldefaultasync.cpp:233
CPLErr GDALFlushRasterCache(GDALRasterBandH hBand)
Flush raster data cache.
Definition: gdalrasterband.cpp:1054
const char * GDALGetColorInterpretationName(GDALColorInterp)
Get name of color interpretation.
Definition: gdal_misc.cpp:907
void * GDALGetInternalHandle(GDALDatasetH, const char *)
Fetch a format specific internally meaningful handle.
Definition: gdaldataset.cpp:1294
GDALRasterBandH GDALGetRasterSampleOverview(GDALRasterBandH, int)
Fetch best sampling overview.
Definition: gdalrasterband.cpp:2329
double GDALPackedDMSToDec(double)
Convert a packed DMS value (DDDMMMSSS.SS) into decimal degrees.
Definition: gdal_misc.cpp:2352
GDALAttributeH * GDALMDArrayGetAttributes(GDALMDArrayH hArray, size_t *pnCount, CSLConstList papszOptions)
Return the list of attributes contained in this array.
Definition: gdalmultidim.cpp:9271
int GDALExtendedDataTypeEquals(GDALExtendedDataTypeH hFirstEDT, GDALExtendedDataTypeH hSecondEDT)
Return whether this data type is equal to another one.
Definition: gdalmultidim.cpp:8325
void GDALApplyGeoTransform(double *, double, double, double *, double *)
Apply GeoTransform to x/y coordinate.
Definition: gdaltransformer.cpp:4001
GByte * GDALAttributeReadAsRaw(GDALAttributeH hAttr, size_t *pnSize)
Return the raw value of an attribute.
Definition: gdalmultidim.cpp:10149
void * GDALRATSerializeJSON(GDALRasterAttributeTableH)
Serialize Raster Attribute Table in Json format.
Definition: gdal_rat.cpp:2231
GDALColorTableH GDALRATTranslateToColorTable(GDALRasterAttributeTableH, int nEntryCount)
Translate to a color table.
Definition: gdal_rat.cpp:1107
const char * GDALAttributeGetFullName(GDALAttributeH hAttr)
Return the full name of the attribute.
Definition: gdalmultidim.cpp:10057
OGRLayerH GDALDatasetCopyLayer(GDALDatasetH, OGRLayerH, const char *, CSLConstList)
Duplicate an existing layer.
Definition: gdaldataset.cpp:4725
int GDALMDArrayAdviseRead(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count)
Advise driver of upcoming read requests.
Definition: gdalmultidim.cpp:9203
GDALDataType GDALDataTypeUnionWithValue(GDALDataType eDT, double dValue, int bComplex)
Union a data type with the one found for a value.
Definition: gdal_misc.cpp:175
GDALAsyncStatusType
status of the asynchronous stream
Definition: gdal.h:103
int GDALReadTabFile(const char *, double *, char **, int *, GDAL_GCP **)
Helper function for translator implementer wanting support for MapInfo .tab files.
Definition: gdal_misc.cpp:1764
const char * GDALGetPaletteInterpretationName(GDALPaletteInterp)
Get name of palette interpretation.
Definition: gdal_misc.cpp:867
void GDALReleaseAttributes(GDALAttributeH *attributes, size_t nCount)
Free the return of GDALGroupGetAttributes() or GDALMDArrayGetAttributes()
Definition: gdalmultidim.cpp:8850
CPLErr GDALSetDefaultRAT(GDALRasterBandH, GDALRasterAttributeTableH)
Set default Raster Attribute Table.
Definition: gdalrasterband.cpp:5895
const char * GDALRATGetValueAsString(GDALRasterAttributeTableH, int, int)
Fetch field value as a string.
Definition: gdal_rat.cpp:1534
void GDALCopyWords(const void *pSrcData, GDALDataType eSrcType, int nSrcPixelOffset, void *pDstData, GDALDataType eDstType, int nDstPixelOffset, int nWordCount)
Copy pixel words from buffer to buffer.
Definition: rasterio.cpp:3323
int GDALReadWorldFile(const char *, const char *, double *)
Read ESRI world file.
Definition: gdal_misc.cpp:1961
GDALMDArrayH GDALGroupCreateMDArray(GDALGroupH hGroup, const char *pszName, size_t nDimensions, GDALDimensionH *pahDimensions, GDALExtendedDataTypeH hEDT, CSLConstList papszOptions)
Create a multidimensional array within a group.
Definition: gdalmultidim.cpp:8921
int GDALReleaseDataset(GDALDatasetH)
Drop a reference to this object, and destroy if no longer referenced.
Definition: gdaldataset.cpp:1439
int GDALGetDataTypeSize(GDALDataType)
Get data type size in bits.
Definition: gdal_misc.cpp:375
int GDALDataTypeIsSigned(GDALDataType)
Is data type signed?
Definition: gdal_misc.cpp:478
CPLErr GDALSetRasterColorTable(GDALRasterBandH, GDALColorTableH)
Set the raster color table.
Definition: gdalrasterband.cpp:2129
CPLErr GDALGetGeoTransform(GDALDatasetH, double *)
Fetch the affine transformation coefficients.
Definition: gdaldataset.cpp:1203
void GDALSetCacheMax(int nBytes)
Set maximum cache memory.
Definition: gdalrasterblock.cpp:120
void * GDALDriverH
Opaque type used for the C bindings of the C++ GDALDriver class.
Definition: gdal.h:274
int GDALAttributeWriteInt(GDALAttributeH hAttr, int)
Write an attribute from a integer value.
Definition: gdalmultidim.cpp:10386
int GDALFlushCacheBlock(void)
Try to flush one cached raster block.
Definition: gdalrasterblock.cpp:372
double GDALAttributeReadAsDouble(GDALAttributeH hAttr)
Return the value of an attribute as a double.
Definition: gdalmultidim.cpp:10246
int GDALGetRasterYSize(GDALDatasetH)
Fetch raster height in pixels.
Definition: gdaldataset.cpp:746
void GDALEDTComponentRelease(GDALEDTComponentH hComp)
Release the GDAL in-memory object associated with a GDALEDTComponentH.
Definition: gdalmultidim.cpp:8428
CPLErr GDALAddDerivedBandPixelFunc(const char *pszName, GDALDerivedPixelFunc pfnPixelFunc)
This adds a pixel function to the global list of available pixel functions for derived bands.
Definition: vrtderivedrasterband.cpp:239
int GDALRATGetColOfUsage(GDALRasterAttributeTableH, GDALRATFieldUsage)
Fetch column index for given usage.
Definition: gdal_rat.cpp:1438
void GDALGetOpenDatasets(GDALDatasetH **hDS, int *pnCount)
Fetch all open GDAL dataset handles.
Definition: gdaldataset.cpp:2719
int GDALGetBandNumber(GDALRasterBandH)
Fetch the band number.
Definition: gdalrasterband.cpp:2822
GDALDatasetH GDALCreateMultiDimensional(GDALDriverH hDriver, const char *pszName, CSLConstList papszRootGroupOptions, CSLConstList papszOptions)
Create a new multidimensional dataset with this driver.
Definition: gdaldriver.cpp:368
GDALRWFlag
Definition: gdal.h:121
@ GF_Write
Definition: gdal.h:123
@ GF_Read
Definition: gdal.h:122
int GDALGCPsToGeoTransform(int nGCPCount, const GDAL_GCP *pasGCPs, double *padfGeoTransform, int bApproxOK)
Generate Geotransform from GCPs.
Definition: gdal_misc.cpp:2410
int GDALInvGeoTransform(double *padfGeoTransformIn, double *padfInvGeoTransformOut)
Invert Geotransform.
Definition: gdaltransformer.cpp:4027
void GDALCopyWords64(const void *pSrcData, GDALDataType eSrcType, int nSrcPixelOffset, void *pDstData, GDALDataType eDstType, int nDstPixelOffset, GPtrDiff_t nWordCount)
Copy pixel words from buffer to buffer.
Definition: rasterio.cpp:3383
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
void GDALMDArrayRelease(GDALMDArrayH hMDArray)
Release the GDAL in-memory object associated with a GDALMDArray.
Definition: gdalmultidim.cpp:8985
int GDALMDArraySetSpatialRef(GDALMDArrayH, OGRSpatialReferenceH)
Assign a spatial reference system object to the the array.
Definition: gdalmultidim.cpp:9868
GDALDriverH GDALGetDriverByName(const char *)
Fetch a driver based on the short name.
Definition: gdaldrivermanager.cpp:624
CPLErr GDALSetGeoTransform(GDALDatasetH, double *)
Set the affine transformation coefficients.
Definition: gdaldataset.cpp:1253
GDALDatasetH GDALOpen(const char *pszFilename, GDALAccess eAccess)
Open a raster file as a GDALDataset.
Definition: gdaldataset.cpp:3205
double * GDALAttributeReadAsDoubleArray(GDALAttributeH hAttr, size_t *pnCount)
Return the value of an attribute as an array of doubles.
Definition: gdalmultidim.cpp:10309
GDALColorInterp GDALGetRasterColorInterpretation(GDALRasterBandH)
How should this band be interpreted as color?
Definition: gdalrasterband.cpp:1985
CPLErr(* GDALDerivedPixelFunc)(void **papoSources, int nSources, void *pData, int nBufXSize, int nBufYSize, GDALDataType eSrcType, GDALDataType eBufType, int nPixelSpace, int nLineSpace)
Type of functions to pass to GDALAddDerivedBandPixelFunc.
Definition: gdal.h:933
int GDALMDArrayComputeStatistics(GDALMDArrayH hArray, GDALDatasetH, int bApproxOK, double *pdfMin, double *pdfMax, double *pdfMean, double *pdfStdDev, GUInt64 *pnValidCount, GDALProgressFunc, void *pProgressData)
Compute statistics.
Definition: gdalmultidim.cpp:9932
CPLErr GDALGetRasterHistogram(GDALRasterBandH hBand, double dfMin, double dfMax, int nBuckets, int *panHistogram, int bIncludeOutOfRange, int bApproxOK, GDALProgressFunc pfnProgress, void *pProgressData)
Compute raster histogram.
Definition: gdalrasterband.cpp:3362
void * GDALRasterBandH
Opaque type used for the C bindings of the C++ GDALRasterBand class.
Definition: gdal.h:271
CPLVirtualMem * GDALDatasetGetVirtualMem(GDALDatasetH hDS, GDALRWFlag eRWFlag, int nXOff, int nYOff, int nXSize, int nYSize, int nBufXSize, int nBufYSize, GDALDataType eBufType, int nBandCount, int *panBandMap, int nPixelSpace, GIntBig nLineSpace, GIntBig nBandSpace, size_t nCacheSize, size_t nPageSizeHint, int bSingleThreadUsage, CSLConstList papszOptions)
Create a CPLVirtualMem object from a GDAL dataset object.
Definition: gdalvirtualmem.cpp:959
GDALDriverH GDALCreateDriver(void)
Create a GDALDriver.
Definition: gdaldriver.cpp:94
const char * GDALGetDriverShortName(GDALDriverH)
Return the short name of a driver.
Definition: gdaldriver.cpp:1563
double GDALMDArrayGetScaleEx(GDALMDArrayH hArray, int *pbHasValue, GDALDataType *peStorageType)
Get the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9524
void * GDALColorTableH
Opaque type used for the C bindings of the C++ GDALColorTable class.
Definition: gdal.h:277
CPLErr GDALRasterIO(GDALRasterBandH hRBand, GDALRWFlag eRWFlag, int nDSXOff, int nDSYOff, int nDSXSize, int nDSYSize, void *pBuffer, int nBXSize, int nBYSize, GDALDataType eBDataType, int nPixelSpace, int nLineSpace)
Read/write a region of image data for this band.
Definition: gdalrasterband.cpp:401
GDALDatasetH GDALCreateCopy(GDALDriverH, const char *, GDALDatasetH, int, CSLConstList, GDALProgressFunc, void *)
Create a copy of a dataset.
Definition: gdaldriver.cpp:1093
int GDALMDArraySetOffset(GDALMDArrayH hArray, double dfOffset)
Set the scale value to apply to raw values.
Definition: gdalmultidim.cpp:9463
const char * GDALGroupGetName(GDALGroupH hGroup)
Return the name of the group.
Definition: gdalmultidim.cpp:8502
CPLErr GDALRegenerateOverviews(GDALRasterBandH hSrcBand, int nOverviewCount, GDALRasterBandH *pahOverviewBands, const char *pszResampling, GDALProgressFunc pfnProgress, void *pProgressData)
Generate downsampled overviews.
Definition: overview.cpp:4076
GDALRasterAttributeTableH GDALCreateRasterAttributeTable(void)
Construct empty table.
Definition: gdal_rat.cpp:1203
int GDALGetCacheMax(void)
Get maximum cache memory.
Definition: gdalrasterblock.cpp:200
void GDALComposeGeoTransforms(const double *padfGeoTransform1, const double *padfGeoTransform2, double *padfGeoTransformOut)
Compose two geotransforms.
Definition: gdal_misc.cpp:2711
int GDALMDArrayAdviseReadEx(GDALMDArrayH hArray, const GUInt64 *arrayStartIdx, const size_t *count, CSLConstList papszOptions)
Advise driver of upcoming read requests.
Definition: gdalmultidim.cpp:9222
void GDALDatasetSetStyleTable(GDALDatasetH, OGRStyleTableH)
Set dataset style table.
Definition: gdaldataset.cpp:4905
CPLErr GDALSetSpatialRef(GDALDatasetH, OGRSpatialReferenceH)
Set the spatial reference system for this dataset.
Definition: gdaldataset.cpp:1079
void GDALDestroyDriver(GDALDriverH)
Destroy a GDALDriver.
Definition: gdaldriver.cpp:113
size_t GDALEDTComponentGetOffset(GDALEDTComponentH hComp)
Return the offset (in bytes) of the component in the compound data type.
Definition: gdalmultidim.cpp:8457
GDALTileOrganization
! Enumeration to describe the tile organization
Definition: gdal.h:1478
@ GTO_BIT
Definition: gdal.h:1482
@ GTO_BSQ
Definition: gdal.h:1484
@ GTO_TIP
Definition: gdal.h:1480
void GDALCreateColorRamp(GDALColorTableH hTable, int nStartIndex, const GDALColorEntry *psStartColor, int nEndIndex, const GDALColorEntry *psEndColor)
Create color ramp.
Definition: gdalcolortable.cpp:447
GDALExtendedDataTypeH GDALExtendedDataTypeCreateCompound(const char *pszName, size_t nTotalSize, size_t nComponents, const GDALEDTComponentH *comps)
Return a new GDALExtendedDataType of class GEDTC_COMPOUND.
Definition: gdalmultidim.cpp:8190
const char * GDALDecToDMS(double, const char *, int)
Translate a decimal degrees value to a DMS string with hemisphere.
Definition: gdal_misc.cpp:2335
GDALMDArrayH GDALMDArrayGetUnscaled(GDALMDArrayH hArray)
Return an array that is the unscaled version of the current one.
Definition: gdalmultidim.cpp:9740
CPLErr GDALSetRasterStatistics(GDALRasterBandH hBand, double dfMin, double dfMax, double dfMean, double dfStdDev)
Set statistics on band.
Definition: gdalrasterband.cpp:5454
double GDALMDArrayGetNoDataValueAsDouble(GDALMDArrayH hArray, int *pbHasNoDataValue)
Return the nodata value as a double.
Definition: gdalmultidim.cpp:9362
const GDALColorEntry * GDALGetColorEntry(GDALColorTableH, int)
Fetch a color entry from table.
Definition: gdalcolortable.cpp:135
double GDALDecToPackedDMS(double)
Convert decimal degrees into packed DMS value (DDDMMMSSS.SS).
Definition: gdal_misc.cpp:2368
GUInt64 * GDALMDArrayGetBlockSize(GDALMDArrayH hArray, size_t *pnCount)
Return the "natural" block size of the array along all dimensions.
Definition: gdalmultidim.cpp:9606
GDALDataType GDALGetDataTypeByName(const char *)
Get data type by symbolic name.
Definition: gdal_misc.cpp:629
void GDALCopyBits(const GByte *pabySrcData, int nSrcOffset, int nSrcStep, GByte *pabyDstData, int nDstOffset, int nDstStep, int nBitCount, int nStepCount)
Bitwise word copying.
Definition: rasterio.cpp:3612
C API and defines for OGRFeature, OGRGeometry, and OGRDataSource related classes.
void * OGRGeometryH
Opaque type for a geometry.
Definition: ogr_api.h:65
void * OGRSpatialReferenceH
Opaque type for a spatial reference system.
Definition: ogr_api.h:80
void * OGRLayerH
Opaque type for a layer (OGRLayer)
Definition: ogr_api.h:589
void * OGRFeatureH
Opaque type for a feature (OGRFeature)
Definition: ogr_api.h:335
struct OGRFieldDomainHS * OGRFieldDomainH
Opaque type for a field domain definition (OGRFieldDomain)
Definition: ogr_api.h:343
void * OGRStyleTableH
Opaque type for a style table (OGRStyleTable)
Definition: ogr_api.h:337
OGRwkbGeometryType
List of well known binary geometry types.
Definition: ogr_core.h:346
int OGRErr
Type for a OGR error.
Definition: ogr_core.h:318
Document node structure.
Definition: cpl_minixml.h:70
Color tuple.
Definition: gdal.h:1287
short c4
Definition: gdal.h:1298
short c2
Definition: gdal.h:1292
short c3
Definition: gdal.h:1295
short c1
Definition: gdal.h:1289
Structure to store Rational Polynomial Coefficients / Rigorous Projection Model.
Definition: gdal.h:1248
double dfLAT_OFF
Definition: gdal.h:1251
double dfLONG_SCALE
Definition: gdal.h:1258
double dfHEIGHT_OFF
Definition: gdal.h:1253
double dfMAX_LAT
Definition: gdal.h:1269
double dfMIN_LAT
Definition: gdal.h:1267
double dfLINE_OFF
Definition: gdal.h:1249
double dfLONG_OFF
Definition: gdal.h:1252
double dfSAMP_SCALE
Definition: gdal.h:1256
double dfMAX_LONG
Definition: gdal.h:1268
double dfERR_BIAS
Definition: gdal.h:1272
double dfERR_RAND
Definition: gdal.h:1273
double dfLINE_SCALE
Definition: gdal.h:1255
double dfHEIGHT_SCALE
Definition: gdal.h:1259
double dfMIN_LONG
Definition: gdal.h:1266
double dfLAT_SCALE
Definition: gdal.h:1257
double dfSAMP_OFF
Definition: gdal.h:1250
Structure to pass extra arguments to RasterIO() method, must be initialized with INIT_RASTERIO_EXTRA_...
Definition: gdal.h:161
void * pProgressData
Definition: gdal.h:171
GDALRIOResampleAlg eResampleAlg
Definition: gdal.h:166
double dfXOff
Definition: gdal.h:179
int nVersion
Definition: gdal.h:163
double dfYSize
Definition: gdal.h:185
double dfYOff
Definition: gdal.h:181
double dfXSize
Definition: gdal.h:183
GDALProgressFunc pfnProgress
Definition: gdal.h:169
int bFloatingPointWindowValidity
Definition: gdal.h:177
Ground Control Point.
Definition: gdal.h:711
double dfGCPLine
Line (y) location of GCP on raster.
Definition: gdal.h:721
double dfGCPX
X position of GCP in georeferenced space.
Definition: gdal.h:724
char * pszId
Unique identifier, often numeric.
Definition: gdal.h:713
char * pszInfo
Informational message or "".
Definition: gdal.h:716
double dfGCPPixel
Pixel (x) location of GCP on raster.
Definition: gdal.h:719
double dfGCPY
Y position of GCP in georeferenced space.
Definition: gdal.h:727
double dfGCPZ
Elevation of GCP, or zero if not known.
Definition: gdal.h:730