30 #ifndef GDAL_ALG_H_INCLUDED
31 #define GDAL_ALG_H_INCLUDED
50 int (*pfnIncludePixel)(
int,
int,
void*),
54 void * pProgressArg );
62 void * pProgressArg );
65 int nXOff,
int nYOff,
int nXSize,
int nYSize );
67 CPLErr CPL_DLL CPL_STDCALL
72 void * pProgressArg );
74 CPLErr CPL_DLL CPL_STDCALL
77 double dfMaxSearchDist,
78 int bDeprecatedOption,
79 int nSmoothingIterations,
82 void * pProgressArg );
84 CPLErr CPL_DLL CPL_STDCALL
87 OGRLayerH hOutLayer,
int iPixValField,
90 void * pProgressArg );
92 CPLErr CPL_DLL CPL_STDCALL
95 OGRLayerH hOutLayer,
int iPixValField,
98 void * pProgressArg );
100 CPLErr CPL_DLL CPL_STDCALL
103 int nSizeThreshold,
int nConnectedness,
106 void * pProgressArg );
114 int bDstToSrc,
int nPointCount,
115 double *x,
double *y,
double *z,
int *panSuccess );
119 const char *pszClassName;
121 void (*pfnCleanup)(
void * );
125 void CPL_DLL GDALDestroyTransformer(
void *pTransformerArg );
126 int CPL_DLL GDALUseTransformer(
void *pTranformerArg,
127 int bDstToSrc,
int nPointCount,
128 double *x,
double *y,
double *z,
138 int bGCPUseOK,
double dfGCPErrorThreshold,
142 char **papszOptions );
145 const double *padfSrcGeoTransform,
146 const char *pszDstWKT,
147 const double *padfDstGeoTransform );
152 void *pTransformArg,
int bDstToSrc,
int nPointCount,
153 double *x,
double *y,
double *z,
int *panSuccess );
158 const char *pszDstWKT );
161 void *pTransformArg,
int bDstToSrc,
int nPointCount,
162 double *x,
double *y,
double *z,
int *panSuccess );
167 int nReqOrder,
int bReversed );
171 GDALCreateGCPRefineTransformer(
int nGCPCount,
const GDAL_GCP *pasGCPList,
172 int nReqOrder,
int bReversed,
double tolerance,
int minimumGcps);
176 void *pTransformArg,
int bDstToSrc,
int nPointCount,
177 double *x,
double *y,
double *z,
int *panSuccess );
186 void *pTransformArg,
int bDstToSrc,
int nPointCount,
187 double *x,
double *y,
double *z,
int *panSuccess );
193 double dfPixErrThreshold,
194 char **papszOptions );
195 void CPL_DLL GDALDestroyRPCTransformer(
void *pTransformArg );
196 int CPL_DLL GDALRPCTransform(
197 void *pTransformArg,
int bDstToSrc,
int nPointCount,
198 double *x,
double *y,
double *z,
int *panSuccess );
204 char **papszGeolocationInfo,
206 void CPL_DLL GDALDestroyGeoLocTransformer(
void *pTransformArg );
207 int CPL_DLL GDALGeoLocTransform(
208 void *pTransformArg,
int bDstToSrc,
int nPointCount,
209 double *x,
double *y,
double *z,
int *panSuccess );
214 void *pRawTransformerArg,
double dfMaxError );
215 void CPL_DLL GDALApproxTransformerOwnsSubtransformer(
void *pCBData,
219 void *pTransformArg,
int bDstToSrc,
int nPointCount,
220 double *x,
double *y,
double *z,
int *panSuccess );
225 int CPL_DLL CPL_STDCALL
228 int nBandCount,
int *panBandList,
233 char **papszWarpOptions );
235 CPLErr CPL_DLL CPL_STDCALL
239 double *padfGeoTransformOut,
240 int *pnPixels,
int *pnLines );
241 CPLErr CPL_DLL CPL_STDCALL
245 double *padfGeoTransformOut,
246 int *pnPixels,
int *pnLines,
252 CPLErr CPL_DLL GDALDeserializeTransformer(
CPLXMLNode *psTree,
254 void **ppTransformArg );
261 typedef CPLErr (*GDALContourWriter)(
double dfLevel,
int nPoints,
262 double *padfX,
double *padfY,
void * );
264 typedef void *GDALContourGeneratorH;
266 GDALContourGeneratorH CPL_DLL
267 GDAL_CG_Create(
int nWidth,
int nHeight,
268 int bNoDataSet,
double dfNoDataValue,
269 double dfContourInterval,
double dfContourBase,
270 GDALContourWriter pfnWriter,
void *pCBData );
271 CPLErr CPL_DLL GDAL_CG_FeedLine( GDALContourGeneratorH hCG,
272 double *padfScanline );
273 void CPL_DLL GDAL_CG_Destroy( GDALContourGeneratorH hCG );
279 double adfGeoTransform[6];
287 OGRContourWriter(
double,
int,
double *,
double *,
void *pInfo );
291 double dfContourInterval,
double dfContourBase,
292 int nFixedLevelCount,
double *padfFixedLevels,
293 int bUseNoData,
double dfNoDataValue,
294 void *hLayer,
int iIDField,
int iElevField,
303 int nBandCount,
int *panBandList,
304 int nGeomCount, OGRGeometryH *pahGeometries,
307 double *padfGeomBurnValue,
310 void * pProgressArg );
313 int nBandCount,
int *panBandList,
314 int nLayerCount, OGRLayerH *pahLayers,
317 double *padfLayerBurnValues,
320 void *pProgressArg );
325 int nLayerCount, OGRLayerH *pahLayers,
326 const char *pszDstProjection,
327 double *padfDstGeoTransform,
329 void *pTransformArg,
double dfBurnValue,
331 void *pProgressArg );
451 const double *,
const double *,
const double *,
452 double,
double,
double,
double,