GDAL
gdal_utils.h
Go to the documentation of this file.
1/******************************************************************************
2 * $Id$
3 *
4 * Project: GDAL Utilities
5 * Purpose: GDAL Utilities Public Declarations.
6 * Author: Faza Mahamood, fazamhd at gmail dot com
7 *
8 * ****************************************************************************
9 * Copyright (c) 1998, Frank Warmerdam
10 * Copyright (c) 2007-2015, Even Rouault <even.rouault at spatialys.com>
11 * Copyright (c) 2015, Faza Mahamood
12 *
13 * Permission is hereby granted, free of charge, to any person obtaining a
14 * copy of this software and associated documentation files (the "Software"),
15 * to deal in the Software without restriction, including without limitation
16 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
17 * and/or sell copies of the Software, and to permit persons to whom the
18 * Software is furnished to do so, subject to the following conditions:
19 *
20 * The above copyright notice and this permission notice shall be included
21 * in all copies or substantial portions of the Software.
22 *
23 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
24 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
25 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
26 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
27 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
28 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
29 * DEALINGS IN THE SOFTWARE.
30 ****************************************************************************/
31
32#ifndef GDAL_UTILS_H_INCLUDED
33#define GDAL_UTILS_H_INCLUDED
34
43#include "cpl_port.h"
44#include "gdal.h"
45
47
50
53
54GDALInfoOptions CPL_DLL *
55GDALInfoOptionsNew(char **papszArgv,
56 GDALInfoOptionsForBinary *psOptionsForBinary);
57
58void CPL_DLL GDALInfoOptionsFree(GDALInfoOptions *psOptions);
59
60char CPL_DLL *GDALInfo(GDALDatasetH hDataset, const GDALInfoOptions *psOptions);
61
64
67
69GDALTranslateOptionsNew(char **papszArgv,
70 GDALTranslateOptionsForBinary *psOptionsForBinary);
71
72void CPL_DLL GDALTranslateOptionsFree(GDALTranslateOptions *psOptions);
73
75 GDALProgressFunc pfnProgress,
76 void *pProgressData);
77
78GDALDatasetH CPL_DLL GDALTranslate(const char *pszDestFilename,
79 GDALDatasetH hSrcDataset,
80 const GDALTranslateOptions *psOptions,
81 int *pbUsageError);
82
85
88
89GDALWarpAppOptions CPL_DLL *
90GDALWarpAppOptionsNew(char **papszArgv,
91 GDALWarpAppOptionsForBinary *psOptionsForBinary);
92
93void CPL_DLL GDALWarpAppOptionsFree(GDALWarpAppOptions *psOptions);
94
96 GDALProgressFunc pfnProgress,
97 void *pProgressData);
99 int bQuiet);
101 const char *pszKey,
102 const char *pszValue);
103
104GDALDatasetH CPL_DLL GDALWarp(const char *pszDest, GDALDatasetH hDstDS,
105 int nSrcCount, GDALDatasetH *pahSrcDS,
106 const GDALWarpAppOptions *psOptions,
107 int *pbUsageError);
108
111
115
117 char **papszArgv, GDALVectorTranslateOptionsForBinary *psOptionsForBinary);
118
119void CPL_DLL
121
123 GDALVectorTranslateOptions *psOptions, GDALProgressFunc pfnProgress,
124 void *pProgressData);
125
127 const char *pszDest, GDALDatasetH hDstDS, int nSrcCount,
128 GDALDatasetH *pahSrcDS, const GDALVectorTranslateOptions *psOptions,
129 int *pbUsageError);
130
133
137
139 char **papszArgv, GDALDEMProcessingOptionsForBinary *psOptionsForBinary);
140
142
144 GDALDEMProcessingOptions *psOptions, GDALProgressFunc pfnProgress,
145 void *pProgressData);
146
147GDALDatasetH CPL_DLL
148GDALDEMProcessing(const char *pszDestFilename, GDALDatasetH hSrcDataset,
149 const char *pszProcessing, const char *pszColorFilename,
150 const GDALDEMProcessingOptions *psOptions, int *pbUsageError);
151
154
157
158GDALNearblackOptions CPL_DLL *
159GDALNearblackOptionsNew(char **papszArgv,
160 GDALNearblackOptionsForBinary *psOptionsForBinary);
161
162void CPL_DLL GDALNearblackOptionsFree(GDALNearblackOptions *psOptions);
163
165 GDALProgressFunc pfnProgress,
166 void *pProgressData);
167
168GDALDatasetH CPL_DLL GDALNearblack(const char *pszDest, GDALDatasetH hDstDS,
169 GDALDatasetH hSrcDS,
170 const GDALNearblackOptions *psOptions,
171 int *pbUsageError);
172
175
178
179GDALGridOptions CPL_DLL *
180GDALGridOptionsNew(char **papszArgv,
181 GDALGridOptionsForBinary *psOptionsForBinary);
182
183void CPL_DLL GDALGridOptionsFree(GDALGridOptions *psOptions);
184
185void CPL_DLL GDALGridOptionsSetProgress(GDALGridOptions *psOptions,
186 GDALProgressFunc pfnProgress,
187 void *pProgressData);
188
189GDALDatasetH CPL_DLL GDALGrid(const char *pszDest, GDALDatasetH hSrcDS,
190 const GDALGridOptions *psOptions,
191 int *pbUsageError);
192
195
198
199GDALRasterizeOptions CPL_DLL *
200GDALRasterizeOptionsNew(char **papszArgv,
201 GDALRasterizeOptionsForBinary *psOptionsForBinary);
202
203void CPL_DLL GDALRasterizeOptionsFree(GDALRasterizeOptions *psOptions);
204
206 GDALProgressFunc pfnProgress,
207 void *pProgressData);
208
209GDALDatasetH CPL_DLL GDALRasterize(const char *pszDest, GDALDatasetH hDstDS,
210 GDALDatasetH hSrcDS,
211 const GDALRasterizeOptions *psOptions,
212 int *pbUsageError);
213
216
219
220GDALBuildVRTOptions CPL_DLL *
221GDALBuildVRTOptionsNew(char **papszArgv,
222 GDALBuildVRTOptionsForBinary *psOptionsForBinary);
223
224void CPL_DLL GDALBuildVRTOptionsFree(GDALBuildVRTOptions *psOptions);
225
227 GDALProgressFunc pfnProgress,
228 void *pProgressData);
229
230GDALDatasetH CPL_DLL GDALBuildVRT(const char *pszDest, int nSrcCount,
231 GDALDatasetH *pahSrcDS,
232 const char *const *papszSrcDSNames,
233 const GDALBuildVRTOptions *psOptions,
234 int *pbUsageError);
235
238
242
244 char **papszArgv, GDALMultiDimInfoOptionsForBinary *psOptionsForBinary);
245
247
248char CPL_DLL *GDALMultiDimInfo(GDALDatasetH hDataset,
249 const GDALMultiDimInfoOptions *psOptions);
250
253
257
259 char **papszArgv,
260 GDALMultiDimTranslateOptionsForBinary *psOptionsForBinary);
261
262void CPL_DLL
264
266 GDALMultiDimTranslateOptions *psOptions, GDALProgressFunc pfnProgress,
267 void *pProgressData);
268
270 const char *pszDest, GDALDatasetH hDstDataset, int nSrcCount,
271 GDALDatasetH *pahSrcDS, const GDALMultiDimTranslateOptions *psOptions,
272 int *pbUsageError);
273
275
276#endif /* GDAL_UTILS_H_INCLUDED */
Core portability definitions for CPL.
#define CPL_C_END
Macro to end a block of C symbols.
Definition cpl_port.h:317
#define CPL_C_START
Macro to start a block of C symbols.
Definition cpl_port.h:313
Public (C callable) GDAL entry points.
void * GDALDatasetH
Opaque type used for the C bindings of the C++ GDALDataset class.
Definition gdal.h:290
GDALMultiDimTranslateOptions * GDALMultiDimTranslateOptionsNew(char **papszArgv, GDALMultiDimTranslateOptionsForBinary *psOptionsForBinary)
Allocates a GDALMultiDimTranslateOptions struct.
Definition gdalmdimtranslate_lib.cpp:1770
char * GDALInfo(GDALDatasetH hDataset, const GDALInfoOptions *psOptions)
Lists various information about a GDAL supported raster dataset.
Definition gdalinfo_lib.cpp:237
GDALDatasetH GDALBuildVRT(const char *pszDest, int nSrcCount, GDALDatasetH *pahSrcDS, const char *const *papszSrcDSNames, const GDALBuildVRTOptions *psOptions, int *pbUsageError)
Build a VRT from a list of datasets.
Definition gdalbuildvrt_lib.cpp:1813
void GDALWarpAppOptionsFree(GDALWarpAppOptions *psOptions)
Frees the GDALWarpAppOptions struct.
Definition gdalwarp_lib.cpp:5371
struct GDALBuildVRTOptionsForBinary GDALBuildVRTOptionsForBinary
Opaque type.
Definition gdal_utils.h:218
struct GDALInfoOptions GDALInfoOptions
Definition gdal_utils.h:49
struct GDALInfoOptionsForBinary GDALInfoOptionsForBinary
Opaque type.
Definition gdal_utils.h:52
void GDALInfoOptionsFree(GDALInfoOptions *psOptions)
Frees the GDALInfoOptions struct.
Definition gdalinfo_lib.cpp:2232
GDALDatasetH GDALTranslate(const char *pszDestFilename, GDALDatasetH hSrcDataset, const GDALTranslateOptions *psOptions, int *pbUsageError)
Converts raster data between different formats.
Definition gdal_translate_lib.cpp:712
struct GDALMultiDimTranslateOptionsForBinary GDALMultiDimTranslateOptionsForBinary
Opaque type.
Definition gdal_utils.h:255
void GDALVectorTranslateOptionsFree(GDALVectorTranslateOptions *psOptions)
Frees the GDALVectorTranslateOptions struct.
Definition ogr2ogr_lib.cpp:6541
struct GDALVectorTranslateOptionsForBinary GDALVectorTranslateOptionsForBinary
Opaque type.
Definition gdal_utils.h:113
void GDALVectorTranslateOptionsSetProgress(GDALVectorTranslateOptions *psOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Set a progress function.
Definition ogr2ogr_lib.cpp:6605
GDALMultiDimInfoOptions * GDALMultiDimInfoOptionsNew(char **papszArgv, GDALMultiDimInfoOptionsForBinary *psOptionsForBinary)
Allocates a GDALMultiDimInfo struct.
Definition gdalmdiminfo_lib.cpp:1148
struct GDALDEMProcessingOptions GDALDEMProcessingOptions
Definition gdal_utils.h:132
GDALWarpAppOptions * GDALWarpAppOptionsNew(char **papszArgv, GDALWarpAppOptionsForBinary *psOptionsForBinary)
Allocates a GDALWarpAppOptions struct.
Definition gdalwarp_lib.cpp:4797
GDALDEMProcessingOptions * GDALDEMProcessingOptionsNew(char **papszArgv, GDALDEMProcessingOptionsForBinary *psOptionsForBinary)
Allocates a GDALDEMProcessingOptions struct.
Definition gdaldem_lib.cpp:3772
void GDALMultiDimTranslateOptionsFree(GDALMultiDimTranslateOptions *psOptions)
Frees the GDALMultiDimTranslateOptions struct.
Definition gdalmdimtranslate_lib.cpp:1912
struct GDALWarpAppOptionsForBinary GDALWarpAppOptionsForBinary
Opaque type.
Definition gdal_utils.h:87
void GDALNearblackOptionsSetProgress(GDALNearblackOptions *psOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Set a progress function.
Definition nearblack_lib.cpp:966
void GDALRasterizeOptionsFree(GDALRasterizeOptions *psOptions)
Frees the GDALRasterizeOptions struct.
Definition gdal_rasterize_lib.cpp:1375
GDALDatasetH GDALDEMProcessing(const char *pszDestFilename, GDALDatasetH hSrcDataset, const char *pszProcessing, const char *pszColorFilename, const GDALDEMProcessingOptions *psOptions, int *pbUsageError)
Apply a DEM processing.
Definition gdaldem_lib.cpp:3212
struct GDALNearblackOptions GDALNearblackOptions
Definition gdal_utils.h:153
struct GDALRasterizeOptions GDALRasterizeOptions
Definition gdal_utils.h:194
void GDALWarpAppOptionsSetProgress(GDALWarpAppOptions *psOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Set a progress function.
Definition gdalwarp_lib.cpp:5406
struct GDALDEMProcessingOptionsForBinary GDALDEMProcessingOptionsForBinary
Opaque type.
Definition gdal_utils.h:135
void GDALMultiDimInfoOptionsFree(GDALMultiDimInfoOptions *psOptions)
Frees the GDALMultiDimInfoOptions struct.
Definition gdalmdiminfo_lib.cpp:1247
void GDALBuildVRTOptionsFree(GDALBuildVRTOptions *psOptions)
Frees the GDALBuildVRTOptions struct.
Definition gdalbuildvrt_lib.cpp:2208
GDALTranslateOptions * GDALTranslateOptionsNew(char **papszArgv, GDALTranslateOptionsForBinary *psOptionsForBinary)
Allocates a GDALTranslateOptions struct.
Definition gdal_translate_lib.cpp:2717
void GDALMultiDimTranslateOptionsSetProgress(GDALMultiDimTranslateOptions *psOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Set a progress function.
Definition gdalmdimtranslate_lib.cpp:1931
GDALInfoOptions * GDALInfoOptionsNew(char **papszArgv, GDALInfoOptionsForBinary *psOptionsForBinary)
Allocates a GDALInfoOptions struct.
Definition gdalinfo_lib.cpp:2086
void GDALRasterizeOptionsSetProgress(GDALRasterizeOptions *psOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Set a progress function.
Definition gdal_rasterize_lib.cpp:1408
struct GDALTranslateOptions GDALTranslateOptions
Definition gdal_utils.h:63
void GDALGridOptionsFree(GDALGridOptions *psOptions)
Frees the GDALGridOptions struct.
Definition gdal_grid_lib.cpp:1358
struct GDALGridOptions GDALGridOptions
Definition gdal_utils.h:174
GDALNearblackOptions * GDALNearblackOptionsNew(char **papszArgv, GDALNearblackOptionsForBinary *psOptionsForBinary)
Allocates a GDALNearblackOptions struct.
Definition nearblack_lib.cpp:787
GDALDatasetH GDALVectorTranslate(const char *pszDest, GDALDatasetH hDstDS, int nSrcCount, GDALDatasetH *pahSrcDS, const GDALVectorTranslateOptions *psOptions, int *pbUsageError)
Converts vector data between file formats.
Definition ogr2ogr_lib.cpp:2122
struct GDALNearblackOptionsForBinary GDALNearblackOptionsForBinary
Opaque type.
Definition gdal_utils.h:156
void GDALDEMProcessingOptionsSetProgress(GDALDEMProcessingOptions *psOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Set a progress function.
Definition gdaldem_lib.cpp:4054
struct GDALGridOptionsForBinary GDALGridOptionsForBinary
Opaque type.
Definition gdal_utils.h:177
GDALDatasetH GDALWarp(const char *pszDest, GDALDatasetH hDstDS, int nSrcCount, GDALDatasetH *pahSrcDS, const GDALWarpAppOptions *psOptions, int *pbUsageError)
Image reprojection and warping function.
Definition gdalwarp_lib.cpp:1303
GDALVectorTranslateOptions * GDALVectorTranslateOptionsNew(char **papszArgv, GDALVectorTranslateOptionsForBinary *psOptionsForBinary)
allocates a GDALVectorTranslateOptions struct.
Definition ogr2ogr_lib.cpp:5726
GDALDatasetH GDALGrid(const char *pszDest, GDALDatasetH hSrcDS, const GDALGridOptions *psOptions, int *pbUsageError)
Create raster from the scattered data.
Definition gdal_grid_lib.cpp:618
char * GDALMultiDimInfo(GDALDatasetH hDataset, const GDALMultiDimInfoOptions *psOptions)
Lists various information about a GDAL multidimensional dataset.
Definition gdalmdiminfo_lib.cpp:1055
GDALBuildVRTOptions * GDALBuildVRTOptionsNew(char **papszArgv, GDALBuildVRTOptionsForBinary *psOptionsForBinary)
Allocates a GDALBuildVRTOptions struct.
Definition gdalbuildvrt_lib.cpp:1966
void GDALWarpAppOptionsSetWarpOption(GDALWarpAppOptions *psOptions, const char *pszKey, const char *pszValue)
Set a warp option.
Definition gdalwarp_lib.cpp:5448
void GDALBuildVRTOptionsSetProgress(GDALBuildVRTOptions *psOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Set a progress function.
Definition gdalbuildvrt_lib.cpp:2238
void GDALWarpAppOptionsSetQuiet(GDALWarpAppOptions *psOptions, int bQuiet)
Set a progress function.
Definition gdalwarp_lib.cpp:5429
struct GDALMultiDimTranslateOptions GDALMultiDimTranslateOptions
Definition gdal_utils.h:252
void GDALTranslateOptionsFree(GDALTranslateOptions *psOptions)
Frees the GDALTranslateOptions struct.
Definition gdal_translate_lib.cpp:3421
void GDALTranslateOptionsSetProgress(GDALTranslateOptions *psOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Set a progress function.
Definition gdal_translate_lib.cpp:3457
struct GDALMultiDimInfoOptionsForBinary GDALMultiDimInfoOptionsForBinary
Opaque type.
Definition gdal_utils.h:240
GDALDatasetH GDALNearblack(const char *pszDest, GDALDatasetH hDstDS, GDALDatasetH hSrcDS, const GDALNearblackOptions *psOptions, int *pbUsageError)
Convert nearly black/white borders to exact value.
Definition nearblack_lib.cpp:113
struct GDALMultiDimInfoOptions GDALMultiDimInfoOptions
Definition gdal_utils.h:237
GDALGridOptions * GDALGridOptionsNew(char **papszArgv, GDALGridOptionsForBinary *psOptionsForBinary)
Allocates a GDALGridOptions struct.
Definition gdal_grid_lib.cpp:947
struct GDALTranslateOptionsForBinary GDALTranslateOptionsForBinary
Opaque type.
Definition gdal_utils.h:66
struct GDALBuildVRTOptions GDALBuildVRTOptions
Definition gdal_utils.h:215
GDALDatasetH GDALMultiDimTranslate(const char *pszDest, GDALDatasetH hDstDataset, int nSrcCount, GDALDatasetH *pahSrcDS, const GDALMultiDimTranslateOptions *psOptions, int *pbUsageError)
Converts raster data between different formats.
Definition gdalmdimtranslate_lib.cpp:1596
struct GDALVectorTranslateOptions GDALVectorTranslateOptions
Definition gdal_utils.h:110
void GDALDEMProcessingOptionsFree(GDALDEMProcessingOptions *psOptions)
Frees the GDALDEMProcessingOptions struct.
Definition gdaldem_lib.cpp:4029
void GDALNearblackOptionsFree(GDALNearblackOptions *psOptions)
Frees the GDALNearblackOptions struct.
Definition nearblack_lib.cpp:941
struct GDALWarpAppOptions GDALWarpAppOptions
Definition gdal_utils.h:84
GDALRasterizeOptions * GDALRasterizeOptionsNew(char **papszArgv, GDALRasterizeOptionsForBinary *psOptionsForBinary)
Allocates a GDALRasterizeOptions struct.
Definition gdal_rasterize_lib.cpp:964
void GDALGridOptionsSetProgress(GDALGridOptions *psOptions, GDALProgressFunc pfnProgress, void *pProgressData)
Set a progress function.
Definition gdal_grid_lib.cpp:1394
GDALDatasetH GDALRasterize(const char *pszDest, GDALDatasetH hDstDS, GDALDatasetH hSrcDS, const GDALRasterizeOptions *psOptions, int *pbUsageError)
Burns vector geometries into a raster.
Definition gdal_rasterize_lib.cpp:660
struct GDALRasterizeOptionsForBinary GDALRasterizeOptionsForBinary
Opaque type.
Definition gdal_utils.h:197