GDAL

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

- File List
- File Members

gdal_utils_priv.h
1 /******************************************************************************
2 * $Id$
3 *
4 * Project: GDAL Utilities
5 * Purpose: GDAL Utilities Private Declarations.
6 * Author: Even Rouault <even.rouault at spatialys.com>
7 *
8 * ****************************************************************************
9 * Copyright (c) 2015, Even Rouault <even.rouault at spatialys.com>
10 *
11 * Permission is hereby granted, free of charge, to any person obtaining a
12 * copy of this software and associated documentation files (the "Software"),
13 * to deal in the Software without restriction, including without limitation
14 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
15 * and/or sell copies of the Software, and to permit persons to whom the
16 * Software is furnished to do so, subject to the following conditions:
17 *
18 * The above copyright notice and this permission notice shall be included
19 * in all copies or substantial portions of the Software.
20 *
21 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
22 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
24 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
26 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
27 * DEALINGS IN THE SOFTWARE.
28 ****************************************************************************/
29
30 #ifndef GDAL_UTILS_PRIV_H_INCLUDED
31 #define GDAL_UTILS_PRIV_H_INCLUDED
32
33 #ifndef DOXYGEN_SKIP
34
35 #include "cpl_port.h"
36 #include "gdal_utils.h"
37
38 /* This file is only meant at being used by the XXXX_bin.cpp and XXXX_lib.cpp files */
39
40 CPL_C_START
41
42 struct GDALInfoOptionsForBinary
43 {
44 /* Filename to open. */
45 char* pszFilename;
46
47 /* Open options. */
48 char** papszOpenOptions;
49
50 /* > for reporting on a particular subdataset */
51 int nSubdataset;
52 };
53
54 struct GDALTranslateOptionsForBinary
55 {
56 char* pszSource;
57 char* pszDest;
58 int bQuiet;
59 int bCopySubDatasets;
60 char** papszOpenOptions;
61 char* pszFormat;
62 };
63
64 struct GDALWarpAppOptionsForBinary
65 {
66 char** papszSrcFiles;
67 char* pszDstFilename;
68 int bQuiet;
69 char** papszOpenOptions;
70
72 char **papszDestOpenOptions;
73
74 char **papszCreateOptions;
75
76 int bOverwrite;
77 int bCreateOutput;
78 };
79
80 /* Access modes */
81 typedef enum
82 {
83 ACCESS_CREATION,
84 ACCESS_UPDATE, /* open existing output datasource in update mode rather than trying to create a new one */
85 ACCESS_APPEND, /* append to existing layer instead of creating new */
86 ACCESS_OVERWRITE /* delete the output layer and recreate it empty */
87 } GDALVectorTranslateAccessMode;
88
89 struct GDALVectorTranslateOptionsForBinary
90 {
91 char* pszDataSource;
92 char* pszDestDataSource;
93 int bQuiet;
94 char** papszOpenOptions;
95 char* pszFormat;
96 GDALVectorTranslateAccessMode eAccessMode;
97 };
98
99 struct GDALDEMProcessingOptionsForBinary
100 {
101 char* pszProcessing;
102 char* pszSrcFilename;
103 char* pszColorFilename;
104 char* pszDstFilename;
105 int bQuiet;
106 };
107
108 struct GDALNearblackOptionsForBinary
109 {
110 char* pszInFile;
111 char* pszOutFile;
112 int bQuiet;
113 };
114
115 struct GDALGridOptionsForBinary
116 {
117 char* pszSource;
118 char* pszDest;
119 int bQuiet;
120 char* pszFormat;
121 };
122
123 struct GDALRasterizeOptionsForBinary
124 {
125 char* pszSource;
126 char* pszDest;
127 int bQuiet;
128 char* pszFormat;
129 int bCreateOutput;
130 };
131
132 struct GDALBuildVRTOptionsForBinary
133 {
134 int nSrcFiles;
135 char** papszSrcFiles;
136 char* pszDstFilename;
137 int bQuiet;
138 int bOverwrite;
139 };
140
141 struct GDALMultiDimInfoOptionsForBinary
142 {
143 /* Filename to open. */
144 char* pszFilename;
145
146 /* Open options. */
147 char** papszOpenOptions;
148 };
149
150 struct GDALMultiDimTranslateOptionsForBinary
151 {
152 char* pszSource;
153 char* pszDest;
154 char* pszFormat;
155 int bQuiet;
156 int bUpdate;
157 };
158
159 CPL_C_END
160
161 #endif /* #ifndef DOXYGEN_SKIP */
162
163 #endif /* GDAL_UTILS_PRIV_H_INCLUDED */
GDALBuildVRTOptionsForBinary
struct GDALBuildVRTOptionsForBinary GDALBuildVRTOptionsForBinary
Opaque type.
Definition: gdal_utils.h:206
cpl_port.h
Core portability definitions for CPL.
CPL_C_START
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:337
GDALRasterizeOptionsForBinary
struct GDALRasterizeOptionsForBinary GDALRasterizeOptionsForBinary
Opaque type.
Definition: gdal_utils.h:187
GDALTranslateOptionsForBinary
struct GDALTranslateOptionsForBinary GDALTranslateOptionsForBinary
Opaque type.
Definition: gdal_utils.h:64
gdal_utils.h
Public (C callable) GDAL Utilities entry points.
GDALWarpAppOptionsForBinary
struct GDALWarpAppOptionsForBinary GDALWarpAppOptionsForBinary
Opaque type.
Definition: gdal_utils.h:84
GDALNearblackOptionsForBinary
struct GDALNearblackOptionsForBinary GDALNearblackOptionsForBinary
Opaque type.
Definition: gdal_utils.h:149
GDALGridOptionsForBinary
struct GDALGridOptionsForBinary GDALGridOptionsForBinary
Opaque type.
Definition: gdal_utils.h:168
GDALDEMProcessingOptionsForBinary
struct GDALDEMProcessingOptionsForBinary GDALDEMProcessingOptionsForBinary
Opaque type.
Definition: gdal_utils.h:127
GDALInfoOptionsForBinary
struct GDALInfoOptionsForBinary GDALInfoOptionsForBinary
Opaque type.
Definition: gdal_utils.h:52
GDALVectorTranslateOptionsForBinary
struct GDALVectorTranslateOptionsForBinary GDALVectorTranslateOptionsForBinary
Opaque type.
Definition: gdal_utils.h:108
GDALMultiDimInfoOptionsForBinary
struct GDALMultiDimInfoOptionsForBinary GDALMultiDimInfoOptionsForBinary
Opaque type.
Definition: gdal_utils.h:226
GDALMultiDimTranslateOptionsForBinary
struct GDALMultiDimTranslateOptionsForBinary GDALMultiDimTranslateOptionsForBinary
Opaque type.
Definition: gdal_utils.h:239
CPL_C_END
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:339