|
GDAL
|
00001 /****************************************************************************** 00002 * $Id: gdalgrid.h 34931 2016-08-05 17:13:05Z rouault $ 00003 * 00004 * Project: GDAL Gridding API. 00005 * Purpose: Prototypes, and definitions for of GDAL scattered data gridder. 00006 * Author: Andrey Kiselev, dron@ak4719.spb.edu 00007 * 00008 ****************************************************************************** 00009 * Copyright (c) 2007, Andrey Kiselev <dron@ak4719.spb.edu> 00010 * Copyright (c) 2012, Even Rouault <even dot rouault at mines-paris dot org> 00011 * 00012 * Permission is hereby granted, free of charge, to any person obtaining a 00013 * copy of this software and associated documentation files (the "Software"), 00014 * to deal in the Software without restriction, including without limitation 00015 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 00016 * and/or sell copies of the Software, and to permit persons to whom the 00017 * Software is furnished to do so, subject to the following conditions: 00018 * 00019 * The above copyright notice and this permission notice shall be included 00020 * in all copies or substantial portions of the Software. 00021 * 00022 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 00023 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00024 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 00025 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 00026 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 00027 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 00028 * DEALINGS IN THE SOFTWARE. 00029 ****************************************************************************/ 00030 00031 #ifndef GDALGRID_H_INCLUDED 00032 #define GDALGRID_H_INCLUDED 00033 00040 #include "gdal_alg.h" 00041 00042 /* 00043 * GridCreate Algorithm names 00044 */ 00045 00046 static const char szAlgNameInvDist[] = "invdist"; 00047 static const char szAlgNameInvDistNearestNeighbor[] = "invdistnn"; 00048 static const char szAlgNameAverage[] = "average"; 00049 static const char szAlgNameNearest[] = "nearest"; 00050 static const char szAlgNameMinimum[] = "minimum"; 00051 static const char szAlgNameMaximum[] = "maximum"; 00052 static const char szAlgNameRange[] = "range"; 00053 static const char szAlgNameCount[] = "count"; 00054 static const char szAlgNameAverageDistance[] = "average_distance"; 00055 static const char szAlgNameAverageDistancePts[] = "average_distance_pts"; 00056 static const char szAlgNameLinear[] = "linear"; 00057 00058 CPL_C_START 00059 00061 typedef CPLErr (*GDALGridFunction)( const void *, GUInt32, 00062 const double *, const double *, 00063 const double *, 00064 double, double, double *, 00065 void* ); 00068 CPLErr 00069 GDALGridInverseDistanceToAPower( const void *, GUInt32, 00070 const double *, const double *, 00071 const double *, 00072 double, double, double *, 00073 void* ); 00074 CPLErr 00075 GDALGridInverseDistanceToAPowerNearestNeighbor( const void *, GUInt32, 00076 const double *, const double *, 00077 const double *, 00078 double, double, double *, 00079 void* ); 00080 CPLErr 00081 GDALGridInverseDistanceToAPowerNoSearch( const void *, GUInt32, 00082 const double *, const double *, 00083 const double *, 00084 double, double, double *, 00085 void* ); 00086 CPLErr 00087 GDALGridMovingAverage( const void *, GUInt32, 00088 const double *, const double *, const double *, 00089 double, double, double *, 00090 void* ); 00091 CPLErr 00092 GDALGridNearestNeighbor( const void *, GUInt32, 00093 const double *, const double *, const double *, 00094 double, double, double *, 00095 void* ); 00096 CPLErr 00097 GDALGridDataMetricMinimum( const void *, GUInt32, 00098 const double *, const double *, const double *, 00099 double, double, double *, 00100 void* ); 00101 CPLErr 00102 GDALGridDataMetricMaximum( const void *, GUInt32, 00103 const double *, const double *, const double *, 00104 double, double, double *, 00105 void* ); 00106 CPLErr 00107 GDALGridDataMetricRange( const void *, GUInt32, 00108 const double *, const double *, const double *, 00109 double, double, double *, 00110 void* ); 00111 CPLErr 00112 GDALGridDataMetricCount( const void *, GUInt32, 00113 const double *, const double *, const double *, 00114 double, double, double *, 00115 void* ); 00116 CPLErr 00117 GDALGridDataMetricAverageDistance( const void *, GUInt32, 00118 const double *, const double *, 00119 const double *, double, double, double *, 00120 void* ); 00121 CPLErr 00122 GDALGridDataMetricAverageDistancePts( const void *, GUInt32, 00123 const double *, const double *, 00124 const double *, double, double, 00125 double *, 00126 void* ); 00127 CPLErr 00128 GDALGridLinear( const void *, GUInt32, 00129 const double *, const double *, 00130 const double *, 00131 double, double, double *, 00132 void* ); 00133 00134 CPLErr CPL_DLL 00135 ParseAlgorithmAndOptions( const char *, 00136 GDALGridAlgorithm *, 00137 void ** ); 00138 CPL_C_END 00139 00140 #endif /* GDALGRID_H_INCLUDED */
1.7.6.1.