@cpp.js/package-gdal 1.0.0-beta.22 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (255) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/README.md +1 -1
  3. package/cppjs.build.js +1 -0
  4. package/dist/prebuilt/Android-arm64-v8a/include/gdal_version.h +3 -3
  5. package/dist/prebuilt/Android-arm64-v8a/include/ogr_api.h +4 -4
  6. package/dist/prebuilt/Android-arm64-v8a/include/ogr_feature.h +2 -2
  7. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/gdal/GDALConfigVersion.cmake +3 -3
  8. package/dist/prebuilt/Android-arm64-v8a/lib/libgdal.so +0 -0
  9. package/dist/prebuilt/Android-arm64-v8a/lib/pkgconfig/gdal.pc +1 -1
  10. package/dist/prebuilt/Android-arm64-v8a/share/gdal/gdalvrt.xsd +30 -24
  11. package/dist/prebuilt/Android-x86_64/include/cpl_atomic_ops.h +90 -0
  12. package/dist/prebuilt/Android-x86_64/include/cpl_auto_close.h +73 -0
  13. package/dist/prebuilt/Android-x86_64/include/cpl_compressor.h +112 -0
  14. package/dist/prebuilt/Android-x86_64/include/cpl_config.h +215 -0
  15. package/dist/prebuilt/Android-x86_64/include/cpl_config_extras.h +34 -0
  16. package/dist/prebuilt/Android-x86_64/include/cpl_conv.h +417 -0
  17. package/dist/prebuilt/Android-x86_64/include/cpl_csv.h +71 -0
  18. package/dist/prebuilt/Android-x86_64/include/cpl_error.h +344 -0
  19. package/dist/prebuilt/Android-x86_64/include/cpl_hash_set.h +83 -0
  20. package/dist/prebuilt/Android-x86_64/include/cpl_http.h +319 -0
  21. package/dist/prebuilt/Android-x86_64/include/cpl_json.h +301 -0
  22. package/dist/prebuilt/Android-x86_64/include/cpl_list.h +59 -0
  23. package/dist/prebuilt/Android-x86_64/include/cpl_minixml.h +211 -0
  24. package/dist/prebuilt/Android-x86_64/include/cpl_multiproc.h +241 -0
  25. package/dist/prebuilt/Android-x86_64/include/cpl_port.h +1182 -0
  26. package/dist/prebuilt/Android-x86_64/include/cpl_progress.h +49 -0
  27. package/dist/prebuilt/Android-x86_64/include/cpl_quad_tree.h +105 -0
  28. package/dist/prebuilt/Android-x86_64/include/cpl_spawn.h +60 -0
  29. package/dist/prebuilt/Android-x86_64/include/cpl_string.h +863 -0
  30. package/dist/prebuilt/Android-x86_64/include/cpl_time.h +29 -0
  31. package/dist/prebuilt/Android-x86_64/include/cpl_virtualmem.h +365 -0
  32. package/dist/prebuilt/Android-x86_64/include/cpl_vsi.h +830 -0
  33. package/dist/prebuilt/Android-x86_64/include/cpl_vsi_error.h +55 -0
  34. package/dist/prebuilt/Android-x86_64/include/cpl_vsi_virtual.h +580 -0
  35. package/dist/prebuilt/Android-x86_64/include/cplkeywordparser.h +61 -0
  36. package/dist/prebuilt/Android-x86_64/include/gdal.h +2667 -0
  37. package/dist/prebuilt/Android-x86_64/include/gdal_alg.h +717 -0
  38. package/dist/prebuilt/Android-x86_64/include/gdal_alg_priv.h +386 -0
  39. package/dist/prebuilt/Android-x86_64/include/gdal_csv.h +25 -0
  40. package/dist/prebuilt/Android-x86_64/include/gdal_frmts.h +236 -0
  41. package/dist/prebuilt/Android-x86_64/include/gdal_mdreader.h +240 -0
  42. package/dist/prebuilt/Android-x86_64/include/gdal_pam.h +461 -0
  43. package/dist/prebuilt/Android-x86_64/include/gdal_priv.h +4599 -0
  44. package/dist/prebuilt/Android-x86_64/include/gdal_proxy.h +470 -0
  45. package/dist/prebuilt/Android-x86_64/include/gdal_rat.h +390 -0
  46. package/dist/prebuilt/Android-x86_64/include/gdal_simplesurf.h +579 -0
  47. package/dist/prebuilt/Android-x86_64/include/gdal_utils.h +313 -0
  48. package/dist/prebuilt/Android-x86_64/include/gdal_version.h +33 -0
  49. package/dist/prebuilt/Android-x86_64/include/gdal_vrt.h +89 -0
  50. package/dist/prebuilt/Android-x86_64/include/gdalcachedpixelaccessor.h +439 -0
  51. package/dist/prebuilt/Android-x86_64/include/gdalgeorefpamdataset.h +73 -0
  52. package/dist/prebuilt/Android-x86_64/include/gdalgrid.h +102 -0
  53. package/dist/prebuilt/Android-x86_64/include/gdalgrid_priv.h +67 -0
  54. package/dist/prebuilt/Android-x86_64/include/gdaljp2abstractdataset.h +61 -0
  55. package/dist/prebuilt/Android-x86_64/include/gdaljp2metadata.h +237 -0
  56. package/dist/prebuilt/Android-x86_64/include/gdalpansharpen.h +258 -0
  57. package/dist/prebuilt/Android-x86_64/include/gdalsubdatasetinfo.h +104 -0
  58. package/dist/prebuilt/Android-x86_64/include/gdalwarper.h +622 -0
  59. package/dist/prebuilt/Android-x86_64/include/gnm.h +750 -0
  60. package/dist/prebuilt/Android-x86_64/include/gnm_api.h +101 -0
  61. package/dist/prebuilt/Android-x86_64/include/gnmgraph.h +258 -0
  62. package/dist/prebuilt/Android-x86_64/include/memdataset.h +176 -0
  63. package/dist/prebuilt/Android-x86_64/include/ogr_api.h +1024 -0
  64. package/dist/prebuilt/Android-x86_64/include/ogr_core.h +1321 -0
  65. package/dist/prebuilt/Android-x86_64/include/ogr_feature.h +1981 -0
  66. package/dist/prebuilt/Android-x86_64/include/ogr_featurestyle.h +858 -0
  67. package/dist/prebuilt/Android-x86_64/include/ogr_geocoding.h +46 -0
  68. package/dist/prebuilt/Android-x86_64/include/ogr_geomcoordinateprecision.h +79 -0
  69. package/dist/prebuilt/Android-x86_64/include/ogr_geometry.h +4346 -0
  70. package/dist/prebuilt/Android-x86_64/include/ogr_p.h +324 -0
  71. package/dist/prebuilt/Android-x86_64/include/ogr_recordbatch.h +125 -0
  72. package/dist/prebuilt/Android-x86_64/include/ogr_spatialref.h +1007 -0
  73. package/dist/prebuilt/Android-x86_64/include/ogr_srs_api.h +1088 -0
  74. package/dist/prebuilt/Android-x86_64/include/ogr_swq.h +529 -0
  75. package/dist/prebuilt/Android-x86_64/include/ogrsf_frmts.h +746 -0
  76. package/dist/prebuilt/Android-x86_64/include/rawdataset.h +255 -0
  77. package/dist/prebuilt/Android-x86_64/include/vrtdataset.h +2426 -0
  78. package/dist/prebuilt/Android-x86_64/lib/cmake/gdal/GDAL-targets-release.cmake +19 -0
  79. package/dist/prebuilt/Android-x86_64/lib/cmake/gdal/GDAL-targets.cmake +106 -0
  80. package/dist/prebuilt/Android-x86_64/lib/cmake/gdal/GDALConfig.cmake +21 -0
  81. package/dist/prebuilt/Android-x86_64/lib/cmake/gdal/GDALConfigVersion.cmake +85 -0
  82. package/dist/prebuilt/Android-x86_64/lib/gdalplugins/drivers.ini +290 -0
  83. package/dist/prebuilt/Android-x86_64/lib/libgdal.so +0 -0
  84. package/dist/prebuilt/Android-x86_64/lib/pkgconfig/gdal.pc +17 -0
  85. package/dist/prebuilt/Android-x86_64/share/gdal/GDALLogoBW.svg +138 -0
  86. package/dist/prebuilt/Android-x86_64/share/gdal/GDALLogoColor.svg +126 -0
  87. package/dist/prebuilt/Android-x86_64/share/gdal/GDALLogoGS.svg +126 -0
  88. package/dist/prebuilt/Android-x86_64/share/gdal/LICENSE.TXT +467 -0
  89. package/dist/prebuilt/Android-x86_64/share/gdal/MM_m_idofic.csv +321 -0
  90. package/dist/prebuilt/Android-x86_64/share/gdal/cubewerx_extra.wkt +48 -0
  91. package/dist/prebuilt/Android-x86_64/share/gdal/default.rsc +0 -0
  92. package/dist/prebuilt/Android-x86_64/share/gdal/ecw_cs.wkt +1453 -0
  93. package/dist/prebuilt/Android-x86_64/share/gdal/epsg.wkt +1 -0
  94. package/dist/prebuilt/Android-x86_64/share/gdal/esri_StatePlane_extra.wkt +631 -0
  95. package/dist/prebuilt/Android-x86_64/share/gdal/gdalicon.png +0 -0
  96. package/dist/prebuilt/Android-x86_64/share/gdal/gdalinfo_output.schema.json +346 -0
  97. package/dist/prebuilt/Android-x86_64/share/gdal/gdalmdiminfo_output.schema.json +321 -0
  98. package/dist/prebuilt/Android-x86_64/share/gdal/gdaltileindex.xsd +253 -0
  99. package/dist/prebuilt/Android-x86_64/share/gdal/gdalvrt.xsd +887 -0
  100. package/dist/prebuilt/Android-x86_64/share/gdal/gfs.xsd +246 -0
  101. package/dist/prebuilt/Android-x86_64/share/gdal/gml_registry.xml +117 -0
  102. package/dist/prebuilt/Android-x86_64/share/gdal/gml_registry.xsd +66 -0
  103. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_center.csv +251 -0
  104. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_process.csv +102 -0
  105. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_subcenter.csv +63 -0
  106. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_0.csv +261 -0
  107. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_1.csv +261 -0
  108. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_13.csv +261 -0
  109. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_14.csv +261 -0
  110. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_15.csv +261 -0
  111. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_16.csv +261 -0
  112. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_17.csv +11 -0
  113. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_18.csv +261 -0
  114. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_19.csv +261 -0
  115. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_190.csv +261 -0
  116. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_191.csv +261 -0
  117. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_2.csv +261 -0
  118. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_20.csv +261 -0
  119. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_21.csv +261 -0
  120. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_3.csv +261 -0
  121. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_4.csv +261 -0
  122. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_5.csv +261 -0
  123. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_6.csv +261 -0
  124. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_0_7.csv +261 -0
  125. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_10_0.csv +261 -0
  126. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_10_1.csv +261 -0
  127. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_10_191.csv +261 -0
  128. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_10_2.csv +261 -0
  129. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_10_3.csv +261 -0
  130. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_10_4.csv +261 -0
  131. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_1_0.csv +261 -0
  132. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_1_1.csv +261 -0
  133. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_1_2.csv +261 -0
  134. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_20_0.csv +261 -0
  135. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_20_1.csv +261 -0
  136. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_20_2.csv +261 -0
  137. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_2_0.csv +261 -0
  138. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_2_3.csv +261 -0
  139. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_2_4.csv +261 -0
  140. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_2_5.csv +261 -0
  141. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_2_6.csv +261 -0
  142. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_3_0.csv +261 -0
  143. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_3_1.csv +261 -0
  144. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_3_2.csv +28 -0
  145. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_3_3.csv +8 -0
  146. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_3_4.csv +14 -0
  147. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_3_5.csv +11 -0
  148. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_3_6.csv +11 -0
  149. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_0.csv +261 -0
  150. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_1.csv +261 -0
  151. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_10.csv +261 -0
  152. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_2.csv +261 -0
  153. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_3.csv +261 -0
  154. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_4.csv +261 -0
  155. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_5.csv +261 -0
  156. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_6.csv +261 -0
  157. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_7.csv +261 -0
  158. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_8.csv +261 -0
  159. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_4_9.csv +261 -0
  160. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_local_Canada.csv +5 -0
  161. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_local_HPC.csv +2 -0
  162. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_local_MRMS.csv +175 -0
  163. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_local_NCEP.csv +401 -0
  164. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_local_NDFD.csv +38 -0
  165. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_2_local_index.csv +7 -0
  166. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_4_5.csv +261 -0
  167. package/dist/prebuilt/Android-x86_64/share/gdal/grib2_table_versions.csv +3 -0
  168. package/dist/prebuilt/Android-x86_64/share/gdal/gt_datum.csv +229 -0
  169. package/dist/prebuilt/Android-x86_64/share/gdal/gt_ellips.csv +24 -0
  170. package/dist/prebuilt/Android-x86_64/share/gdal/header.dxf +1124 -0
  171. package/dist/prebuilt/Android-x86_64/share/gdal/inspire_cp_BasicPropertyUnit.gfs +57 -0
  172. package/dist/prebuilt/Android-x86_64/share/gdal/inspire_cp_CadastralBoundary.gfs +60 -0
  173. package/dist/prebuilt/Android-x86_64/share/gdal/inspire_cp_CadastralParcel.gfs +81 -0
  174. package/dist/prebuilt/Android-x86_64/share/gdal/inspire_cp_CadastralZoning.gfs +161 -0
  175. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_AdmArea.gfs +59 -0
  176. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_AdmBdry.gfs +49 -0
  177. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_AdmPt.gfs +59 -0
  178. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_BldA.gfs +54 -0
  179. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_BldL.gfs +54 -0
  180. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_Cntr.gfs +54 -0
  181. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_CommBdry.gfs +49 -0
  182. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_CommPt.gfs +59 -0
  183. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_Cstline.gfs +54 -0
  184. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_ElevPt.gfs +54 -0
  185. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_GCP.gfs +94 -0
  186. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_LeveeEdge.gfs +49 -0
  187. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_RailCL.gfs +54 -0
  188. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_RdASL.gfs +44 -0
  189. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_RdArea.gfs +54 -0
  190. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_RdCompt.gfs +59 -0
  191. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_RdEdg.gfs +59 -0
  192. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_RdMgtBdry.gfs +49 -0
  193. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_RdSgmtA.gfs +59 -0
  194. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_RvrMgtBdry.gfs +49 -0
  195. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_SBAPt.gfs +49 -0
  196. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_SBArea.gfs +54 -0
  197. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_SBBdry.gfs +44 -0
  198. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_WA.gfs +54 -0
  199. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_WL.gfs +54 -0
  200. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_WStrA.gfs +54 -0
  201. package/dist/prebuilt/Android-x86_64/share/gdal/jpfgdgml_WStrL.gfs +54 -0
  202. package/dist/prebuilt/Android-x86_64/share/gdal/nitf_spec.xml +3290 -0
  203. package/dist/prebuilt/Android-x86_64/share/gdal/nitf_spec.xsd +173 -0
  204. package/dist/prebuilt/Android-x86_64/share/gdal/ogrinfo_output.schema.json +528 -0
  205. package/dist/prebuilt/Android-x86_64/share/gdal/ogrvrt.xsd +530 -0
  206. package/dist/prebuilt/Android-x86_64/share/gdal/osmconf.ini +134 -0
  207. package/dist/prebuilt/Android-x86_64/share/gdal/ozi_datum.csv +131 -0
  208. package/dist/prebuilt/Android-x86_64/share/gdal/ozi_ellips.csv +35 -0
  209. package/dist/prebuilt/Android-x86_64/share/gdal/pci_datum.txt +530 -0
  210. package/dist/prebuilt/Android-x86_64/share/gdal/pci_ellips.txt +129 -0
  211. package/dist/prebuilt/Android-x86_64/share/gdal/pdfcomposition.xsd +705 -0
  212. package/dist/prebuilt/Android-x86_64/share/gdal/ruian_vf_ob_v1.gfs +1455 -0
  213. package/dist/prebuilt/Android-x86_64/share/gdal/ruian_vf_st_uvoh_v1.gfs +86 -0
  214. package/dist/prebuilt/Android-x86_64/share/gdal/ruian_vf_st_v1.gfs +1489 -0
  215. package/dist/prebuilt/Android-x86_64/share/gdal/ruian_vf_v1.gfs +2126 -0
  216. package/dist/prebuilt/Android-x86_64/share/gdal/s57agencies.csv +249 -0
  217. package/dist/prebuilt/Android-x86_64/share/gdal/s57attributes.csv +484 -0
  218. package/dist/prebuilt/Android-x86_64/share/gdal/s57expectedinput.csv +1008 -0
  219. package/dist/prebuilt/Android-x86_64/share/gdal/s57objectclasses.csv +287 -0
  220. package/dist/prebuilt/Android-x86_64/share/gdal/seed_2d.dgn +0 -0
  221. package/dist/prebuilt/Android-x86_64/share/gdal/seed_3d.dgn +0 -0
  222. package/dist/prebuilt/Android-x86_64/share/gdal/stateplane.csv +259 -0
  223. package/dist/prebuilt/Android-x86_64/share/gdal/tms_LINZAntarticaMapTileGrid.json +190 -0
  224. package/dist/prebuilt/Android-x86_64/share/gdal/tms_MapML_APSTILE.json +268 -0
  225. package/dist/prebuilt/Android-x86_64/share/gdal/tms_MapML_CBMTILE.json +346 -0
  226. package/dist/prebuilt/Android-x86_64/share/gdal/tms_NZTM2000.json +243 -0
  227. package/dist/prebuilt/Android-x86_64/share/gdal/trailer.dxf +434 -0
  228. package/dist/prebuilt/Android-x86_64/share/gdal/vdv452.xml +351 -0
  229. package/dist/prebuilt/Android-x86_64/share/gdal/vdv452.xsd +47 -0
  230. package/dist/prebuilt/Emscripten-x86_64/include/gdal_version.h +3 -3
  231. package/dist/prebuilt/Emscripten-x86_64/include/ogr_api.h +4 -4
  232. package/dist/prebuilt/Emscripten-x86_64/include/ogr_feature.h +2 -2
  233. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/gdal/GDALConfigVersion.cmake +3 -3
  234. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/gdal/thirdparty/FindDotnet.cmake +33 -36
  235. package/dist/prebuilt/Emscripten-x86_64/lib/libgdal.a +0 -0
  236. package/dist/prebuilt/Emscripten-x86_64/lib/pkgconfig/gdal.pc +1 -1
  237. package/dist/prebuilt/Emscripten-x86_64/share/gdal/gdalvrt.xsd +30 -24
  238. package/dist/prebuilt/iOS-iphoneos/include/gdal_version.h +3 -3
  239. package/dist/prebuilt/iOS-iphoneos/include/ogr_api.h +4 -4
  240. package/dist/prebuilt/iOS-iphoneos/include/ogr_feature.h +2 -2
  241. package/dist/prebuilt/iOS-iphoneos/share/gdal/gdalvrt.xsd +30 -24
  242. package/dist/prebuilt/iOS-iphonesimulator/include/gdal_version.h +3 -3
  243. package/dist/prebuilt/iOS-iphonesimulator/include/ogr_api.h +4 -4
  244. package/dist/prebuilt/iOS-iphonesimulator/include/ogr_feature.h +2 -2
  245. package/dist/prebuilt/iOS-iphonesimulator/share/gdal/gdalvrt.xsd +30 -24
  246. package/gdal.xcframework/ios-arm64_arm64e/Headers/gdal_version.h +3 -3
  247. package/gdal.xcframework/ios-arm64_arm64e/Headers/ogr_api.h +4 -4
  248. package/gdal.xcframework/ios-arm64_arm64e/Headers/ogr_feature.h +2 -2
  249. package/gdal.xcframework/ios-arm64_arm64e/libgdal.a +0 -0
  250. package/gdal.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/gdal_version.h +3 -3
  251. package/gdal.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/ogr_api.h +4 -4
  252. package/gdal.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/ogr_feature.h +2 -2
  253. package/gdal.xcframework/ios-arm64_arm64e_x86_64-simulator/libgdal.a +0 -0
  254. package/package.json +13 -13
  255. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/gdal/packages/FindDB2.cmake +0 -103
@@ -0,0 +1,439 @@
1
+ /******************************************************************************
2
+ *
3
+ * Project: GDAL
4
+ * Purpose: Fast access to individual pixels in a GDALRasterBand
5
+ * Author: Even Rouault <even dot rouault at spatialys.com>
6
+ *
7
+ ******************************************************************************
8
+ * Copyright (c) 2022, Planet Labs
9
+ *
10
+ * SPDX-License-Identifier: MIT
11
+ ****************************************************************************/
12
+
13
+ #ifndef GDAL_CACHED_PIXEL_ACCESSOR_INCLUDED
14
+ #define GDAL_CACHED_PIXEL_ACCESSOR_INCLUDED
15
+
16
+ #include "gdal_priv.h"
17
+ #include "cpl_error.h"
18
+
19
+ #include <algorithm>
20
+ #include <array>
21
+ #include <vector>
22
+
23
+ /************************************************************************/
24
+ /* GDALCachedPixelAccessor */
25
+ /************************************************************************/
26
+
27
+ /** Class to have reasonably fast random pixel access to a raster band, when
28
+ * accessing multiple pixels that are close to each other.
29
+ *
30
+ * This gives faster access than using GDALRasterBand::RasterIO() with
31
+ * a 1x1 window.
32
+ *
33
+ * @since GDAL 3.5
34
+ */
35
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT = 4>
36
+ class GDALCachedPixelAccessor
37
+ {
38
+ GDALRasterBand *m_poBand = nullptr;
39
+
40
+ struct CachedTile
41
+ {
42
+ std::vector<Type> m_data{};
43
+ int m_nTileX = -1;
44
+ int m_nTileY = -1;
45
+ bool m_bModified = false;
46
+ };
47
+
48
+ int m_nCachedTileCount = 0;
49
+ std::array<CachedTile, CACHED_TILE_COUNT> m_aCachedTiles{};
50
+
51
+ bool LoadTile(int nTileX, int nTileY);
52
+ bool FlushTile(int iSlot);
53
+
54
+ Type GetSlowPath(int nTileX, int nTileY, int nXInTile, int nYInTile,
55
+ bool *pbSuccess);
56
+ bool SetSlowPath(int nTileX, int nTileY, int nXInTile, int nYInTile,
57
+ Type val);
58
+
59
+ GDALCachedPixelAccessor(const GDALCachedPixelAccessor &) = delete;
60
+ GDALCachedPixelAccessor &
61
+ operator=(const GDALCachedPixelAccessor &) = delete;
62
+
63
+ public:
64
+ explicit GDALCachedPixelAccessor(GDALRasterBand *poBand);
65
+ ~GDALCachedPixelAccessor();
66
+
67
+ /** Assign the raster band if not known at construction time. */
68
+ void SetBand(GDALRasterBand *poBand)
69
+ {
70
+ m_poBand = poBand;
71
+ }
72
+
73
+ Type Get(int nX, int nY, bool *pbSuccess = nullptr);
74
+ bool Set(int nX, int nY, Type val);
75
+
76
+ bool FlushCache();
77
+ void ResetModifiedFlag();
78
+ };
79
+
80
+ /************************************************************************/
81
+ /* GDALCachedPixelAccessor() */
82
+ /************************************************************************/
83
+
84
+ /** Constructor.
85
+ *
86
+ * The template accepts the following parameters:
87
+ * - Type: should be one of GByte, GUInt16, GInt16, GUInt32, GInt32, GUInt64,
88
+ * GInt64, float or double
89
+ * - TILE_SIZE: the tile size for the cache of GDALCachedPixelAccessor.
90
+ * Use a power of two for faster computation.
91
+ * It doesn't need to be the same of the underlying raster
92
+ * - CACHED_TILE_COUNT: number of tiles to cache. Should be >= 1. Defaults to 4.
93
+ *
94
+ * @param poBand Raster band.
95
+ */
96
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT>
97
+ GDALCachedPixelAccessor<Type, TILE_SIZE, CACHED_TILE_COUNT>::
98
+ GDALCachedPixelAccessor(GDALRasterBand *poBand)
99
+ : m_poBand(poBand)
100
+ {
101
+ }
102
+
103
+ /************************************************************************/
104
+ /* ~GDALCachedPixelAccessor() */
105
+ /************************************************************************/
106
+
107
+ /** Destructor.
108
+ *
109
+ * Will call FlushCache()
110
+ */
111
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT>
112
+ GDALCachedPixelAccessor<Type, TILE_SIZE,
113
+ CACHED_TILE_COUNT>::~GDALCachedPixelAccessor()
114
+ {
115
+ FlushCache();
116
+ }
117
+
118
+ /************************************************************************/
119
+ /* Get() */
120
+ /************************************************************************/
121
+
122
+ /** Get the value of a pixel.
123
+ *
124
+ * No bound checking of nX, nY is done.
125
+ *
126
+ * @param nX X coordinate (between 0 and GetXSize()-1)
127
+ * @param nY Y coordinate (between 0 and GetYSize()-1)
128
+ * @param[out] pbSuccess Optional pointer to a success flag
129
+ * @return the pixel value
130
+ */
131
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT>
132
+ inline Type GDALCachedPixelAccessor<Type, TILE_SIZE, CACHED_TILE_COUNT>::Get(
133
+ int nX, int nY, bool *pbSuccess)
134
+ {
135
+ const int nTileX = nX / TILE_SIZE;
136
+ const int nTileY = nY / TILE_SIZE;
137
+ const int nXInTile = nX % TILE_SIZE;
138
+ const int nYInTile = nY % TILE_SIZE;
139
+ if (m_aCachedTiles[0].m_nTileX == nTileX &&
140
+ m_aCachedTiles[0].m_nTileY == nTileY)
141
+ {
142
+ if (pbSuccess)
143
+ *pbSuccess = true;
144
+ return m_aCachedTiles[0].m_data[nYInTile * TILE_SIZE + nXInTile];
145
+ }
146
+ return GetSlowPath(nTileX, nTileY, nXInTile, nYInTile, pbSuccess);
147
+ }
148
+
149
+ /************************************************************************/
150
+ /* GetSlowPath() */
151
+ /************************************************************************/
152
+
153
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT>
154
+ Type GDALCachedPixelAccessor<Type, TILE_SIZE, CACHED_TILE_COUNT>::GetSlowPath(
155
+ int nTileX, int nTileY, int nXInTile, int nYInTile, bool *pbSuccess)
156
+ {
157
+ for (int i = 1; i < m_nCachedTileCount; ++i)
158
+ {
159
+ const auto &cachedTile = m_aCachedTiles[i];
160
+ if (cachedTile.m_nTileX == nTileX && cachedTile.m_nTileY == nTileY)
161
+ {
162
+ const auto ret = cachedTile.m_data[nYInTile * TILE_SIZE + nXInTile];
163
+ CachedTile tmp = std::move(m_aCachedTiles[i]);
164
+ for (int j = i; j >= 1; --j)
165
+ m_aCachedTiles[j] = std::move(m_aCachedTiles[j - 1]);
166
+ m_aCachedTiles[0] = std::move(tmp);
167
+ if (pbSuccess)
168
+ *pbSuccess = true;
169
+ return ret;
170
+ }
171
+ }
172
+ if (!LoadTile(nTileX, nTileY))
173
+ {
174
+ if (pbSuccess)
175
+ *pbSuccess = false;
176
+ return 0;
177
+ }
178
+ if (pbSuccess)
179
+ *pbSuccess = true;
180
+ return m_aCachedTiles[0].m_data[nYInTile * TILE_SIZE + nXInTile];
181
+ }
182
+
183
+ /************************************************************************/
184
+ /* Set() */
185
+ /************************************************************************/
186
+
187
+ /** Set the value of a pixel.
188
+ *
189
+ * The actual modification of the underlying raster is deferred until the tile
190
+ * is implicit flushed while loading a new tile, or an explicit call to
191
+ * FlushCache().
192
+ *
193
+ * The destructor of GDALCachedPixelAccessor will take care of calling
194
+ * FlushCache(), if the user hasn't done it explicitly.
195
+ *
196
+ * No bound checking of nX, nY is done.
197
+ *
198
+ * @param nX X coordinate (between 0 and GetXSize()-1)
199
+ * @param nY Y coordinate (between 0 and GetYSize()-1)
200
+ * @param val pixel value
201
+ * @return true if success
202
+ */
203
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT>
204
+ inline bool
205
+ GDALCachedPixelAccessor<Type, TILE_SIZE, CACHED_TILE_COUNT>::Set(int nX, int nY,
206
+ Type val)
207
+ {
208
+ const int nTileX = nX / TILE_SIZE;
209
+ const int nTileY = nY / TILE_SIZE;
210
+ const int nXInTile = nX % TILE_SIZE;
211
+ const int nYInTile = nY % TILE_SIZE;
212
+ if (m_aCachedTiles[0].m_nTileX == nTileX &&
213
+ m_aCachedTiles[0].m_nTileY == nTileY)
214
+ {
215
+ m_aCachedTiles[0].m_data[nYInTile * TILE_SIZE + nXInTile] = val;
216
+ m_aCachedTiles[0].m_bModified = true;
217
+ return true;
218
+ }
219
+ return SetSlowPath(nTileX, nTileY, nXInTile, nYInTile, val);
220
+ }
221
+
222
+ /************************************************************************/
223
+ /* SetSlowPath() */
224
+ /************************************************************************/
225
+
226
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT>
227
+ bool GDALCachedPixelAccessor<Type, TILE_SIZE, CACHED_TILE_COUNT>::SetSlowPath(
228
+ int nTileX, int nTileY, int nXInTile, int nYInTile, Type val)
229
+ {
230
+ for (int i = 1; i < m_nCachedTileCount; ++i)
231
+ {
232
+ auto &cachedTile = m_aCachedTiles[i];
233
+ if (cachedTile.m_nTileX == nTileX && cachedTile.m_nTileY == nTileY)
234
+ {
235
+ cachedTile.m_data[nYInTile * TILE_SIZE + nXInTile] = val;
236
+ cachedTile.m_bModified = true;
237
+ if (i > 0)
238
+ {
239
+ CachedTile tmp = std::move(m_aCachedTiles[i]);
240
+ for (int j = i; j >= 1; --j)
241
+ m_aCachedTiles[j] = std::move(m_aCachedTiles[j - 1]);
242
+ m_aCachedTiles[0] = std::move(tmp);
243
+ }
244
+ return true;
245
+ }
246
+ }
247
+ if (!LoadTile(nTileX, nTileY))
248
+ {
249
+ return false;
250
+ }
251
+ m_aCachedTiles[0].m_data[nYInTile * TILE_SIZE + nXInTile] = val;
252
+ m_aCachedTiles[0].m_bModified = true;
253
+ return true;
254
+ }
255
+
256
+ /************************************************************************/
257
+ /* FlushCache() */
258
+ /************************************************************************/
259
+
260
+ /** Flush content of modified tiles and drop caches
261
+ *
262
+ * @return true if success
263
+ */
264
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT>
265
+ bool GDALCachedPixelAccessor<Type, TILE_SIZE, CACHED_TILE_COUNT>::FlushCache()
266
+ {
267
+ bool bRet = true;
268
+ for (int i = 0; i < m_nCachedTileCount; ++i)
269
+ {
270
+ if (!FlushTile(i))
271
+ bRet = false;
272
+ m_aCachedTiles[i].m_nTileX = -1;
273
+ m_aCachedTiles[i].m_nTileY = -1;
274
+ }
275
+ return bRet;
276
+ }
277
+
278
+ /************************************************************************/
279
+ /* ResetModifiedFlag() */
280
+ /************************************************************************/
281
+
282
+ /** Reset the modified flag for cached tiles.
283
+ */
284
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT>
285
+ void GDALCachedPixelAccessor<Type, TILE_SIZE,
286
+ CACHED_TILE_COUNT>::ResetModifiedFlag()
287
+ {
288
+ for (int i = 0; i < m_nCachedTileCount; ++i)
289
+ {
290
+ m_aCachedTiles[i].m_bModified = false;
291
+ }
292
+ }
293
+
294
+ /************************************************************************/
295
+ /* GDALCachedPixelAccessorGetDataType */
296
+ /************************************************************************/
297
+
298
+ /*! @cond Doxygen_Suppress */
299
+ template <class T> struct GDALCachedPixelAccessorGetDataType
300
+ {
301
+ };
302
+
303
+ template <> struct GDALCachedPixelAccessorGetDataType<GByte>
304
+ {
305
+ static constexpr GDALDataType DataType = GDT_Byte;
306
+ };
307
+
308
+ template <> struct GDALCachedPixelAccessorGetDataType<GInt8>
309
+ {
310
+ static constexpr GDALDataType DataType = GDT_Int8;
311
+ };
312
+
313
+ template <> struct GDALCachedPixelAccessorGetDataType<GUInt16>
314
+ {
315
+ static constexpr GDALDataType DataType = GDT_UInt16;
316
+ };
317
+
318
+ template <> struct GDALCachedPixelAccessorGetDataType<GInt16>
319
+ {
320
+ static constexpr GDALDataType DataType = GDT_Int16;
321
+ };
322
+
323
+ template <> struct GDALCachedPixelAccessorGetDataType<GUInt32>
324
+ {
325
+ static constexpr GDALDataType DataType = GDT_UInt32;
326
+ };
327
+
328
+ template <> struct GDALCachedPixelAccessorGetDataType<GInt32>
329
+ {
330
+ static constexpr GDALDataType DataType = GDT_Int32;
331
+ };
332
+ #if SIZEOF_UNSIGNED_LONG == 8
333
+ // std::uint64_t on Linux 64-bit resolves as unsigned long
334
+ template <> struct GDALCachedPixelAccessorGetDataType<unsigned long>
335
+ {
336
+ static constexpr GDALDataType DataType = GDT_UInt64;
337
+ };
338
+
339
+ template <> struct GDALCachedPixelAccessorGetDataType<long>
340
+ {
341
+ static constexpr GDALDataType DataType = GDT_Int64;
342
+ };
343
+ #endif
344
+ template <> struct GDALCachedPixelAccessorGetDataType<GUInt64>
345
+ {
346
+ static constexpr GDALDataType DataType = GDT_UInt64;
347
+ };
348
+
349
+ template <> struct GDALCachedPixelAccessorGetDataType<GInt64>
350
+ {
351
+ static constexpr GDALDataType DataType = GDT_Int64;
352
+ };
353
+
354
+ template <> struct GDALCachedPixelAccessorGetDataType<float>
355
+ {
356
+ static constexpr GDALDataType DataType = GDT_Float32;
357
+ };
358
+
359
+ template <> struct GDALCachedPixelAccessorGetDataType<double>
360
+ {
361
+ static constexpr GDALDataType DataType = GDT_Float64;
362
+ };
363
+
364
+ /*! @endcond */
365
+
366
+ /************************************************************************/
367
+ /* LoadTile() */
368
+ /************************************************************************/
369
+
370
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT>
371
+ bool GDALCachedPixelAccessor<Type, TILE_SIZE, CACHED_TILE_COUNT>::LoadTile(
372
+ int nTileX, int nTileY)
373
+ {
374
+ if (m_nCachedTileCount == CACHED_TILE_COUNT)
375
+ {
376
+ if (!FlushTile(CACHED_TILE_COUNT - 1))
377
+ return false;
378
+ CachedTile tmp = std::move(m_aCachedTiles[CACHED_TILE_COUNT - 1]);
379
+ for (int i = CACHED_TILE_COUNT - 1; i >= 1; --i)
380
+ m_aCachedTiles[i] = std::move(m_aCachedTiles[i - 1]);
381
+ m_aCachedTiles[0] = std::move(tmp);
382
+ }
383
+ else
384
+ {
385
+ if (m_nCachedTileCount > 0)
386
+ std::swap(m_aCachedTiles[0], m_aCachedTiles[m_nCachedTileCount]);
387
+ m_aCachedTiles[0].m_data.resize(TILE_SIZE * TILE_SIZE);
388
+ m_nCachedTileCount++;
389
+ }
390
+
391
+ #if 0
392
+ CPLDebug("GDAL", "Load tile(%d, %d) of band %d of dataset %s",
393
+ nTileX, nTileY, m_poBand->GetBand(),
394
+ m_poBand->GetDataset() ? m_poBand->GetDataset()->GetDescription() : "(unknown)");
395
+ #endif
396
+ CPLAssert(!m_aCachedTiles[0].m_bModified);
397
+ const int nXOff = nTileX * TILE_SIZE;
398
+ const int nYOff = nTileY * TILE_SIZE;
399
+ const int nReqXSize = std::min(m_poBand->GetXSize() - nXOff, TILE_SIZE);
400
+ const int nReqYSize = std::min(m_poBand->GetYSize() - nYOff, TILE_SIZE);
401
+ if (m_poBand->RasterIO(
402
+ GF_Read, nXOff, nYOff, nReqXSize, nReqYSize,
403
+ m_aCachedTiles[0].m_data.data(), nReqXSize, nReqYSize,
404
+ GDALCachedPixelAccessorGetDataType<Type>::DataType, sizeof(Type),
405
+ TILE_SIZE * sizeof(Type), nullptr) != CE_None)
406
+ {
407
+ m_aCachedTiles[0].m_nTileX = -1;
408
+ m_aCachedTiles[0].m_nTileY = -1;
409
+ return false;
410
+ }
411
+ m_aCachedTiles[0].m_nTileX = nTileX;
412
+ m_aCachedTiles[0].m_nTileY = nTileY;
413
+ return true;
414
+ }
415
+
416
+ /************************************************************************/
417
+ /* FlushTile() */
418
+ /************************************************************************/
419
+
420
+ template <class Type, int TILE_SIZE, int CACHED_TILE_COUNT>
421
+ bool GDALCachedPixelAccessor<Type, TILE_SIZE, CACHED_TILE_COUNT>::FlushTile(
422
+ int iSlot)
423
+ {
424
+ if (!m_aCachedTiles[iSlot].m_bModified)
425
+ return true;
426
+
427
+ m_aCachedTiles[iSlot].m_bModified = false;
428
+ const int nXOff = m_aCachedTiles[iSlot].m_nTileX * TILE_SIZE;
429
+ const int nYOff = m_aCachedTiles[iSlot].m_nTileY * TILE_SIZE;
430
+ const int nReqXSize = std::min(m_poBand->GetXSize() - nXOff, TILE_SIZE);
431
+ const int nReqYSize = std::min(m_poBand->GetYSize() - nYOff, TILE_SIZE);
432
+ return m_poBand->RasterIO(
433
+ GF_Write, nXOff, nYOff, nReqXSize, nReqYSize,
434
+ m_aCachedTiles[iSlot].m_data.data(), nReqXSize, nReqYSize,
435
+ GDALCachedPixelAccessorGetDataType<Type>::DataType, sizeof(Type),
436
+ TILE_SIZE * sizeof(Type), nullptr) == CE_None;
437
+ }
438
+
439
+ #endif // GDAL_PIXEL_ACCESSOR_INCLUDED
@@ -0,0 +1,73 @@
1
+ /******************************************************************************
2
+ * $Id$
3
+ *
4
+ * Project: GDAL
5
+ * Purpose: GDALPamDataset with internal storage for georeferencing, with
6
+ * priority for PAM over internal georeferencing
7
+ * Author: Even Rouault <even dot rouault at spatialys.com>
8
+ *
9
+ ******************************************************************************
10
+ * Copyright (c) 2013, Even Rouault <even dot rouault at spatialys.com>
11
+ *
12
+ * SPDX-License-Identifier: MIT
13
+ ****************************************************************************/
14
+
15
+ #ifndef GDAL_GEOREF_PAM_DATASET_H_INCLUDED
16
+ #define GDAL_GEOREF_PAM_DATASET_H_INCLUDED
17
+
18
+ #ifndef DOXYGEN_SKIP
19
+
20
+ #include "gdal_pam.h"
21
+
22
+ class CPL_DLL GDALGeorefPamDataset : public GDALPamDataset
23
+ {
24
+ protected:
25
+ bool bGeoTransformValid;
26
+ double adfGeoTransform[6];
27
+ OGRSpatialReference m_oSRS{};
28
+ int nGCPCount;
29
+ GDAL_GCP *pasGCPList;
30
+ char **m_papszRPC;
31
+ bool m_bPixelIsPoint;
32
+
33
+ int m_nGeoTransformGeorefSrcIndex;
34
+ int m_nGCPGeorefSrcIndex;
35
+ int m_nProjectionGeorefSrcIndex;
36
+ int m_nRPCGeorefSrcIndex;
37
+ int m_nPixelIsPointGeorefSrcIndex;
38
+
39
+ int GetPAMGeorefSrcIndex() const;
40
+ mutable bool m_bGotPAMGeorefSrcIndex;
41
+ mutable int m_nPAMGeorefSrcIndex;
42
+
43
+ bool m_bPAMLoaded;
44
+ char **m_papszMainMD;
45
+
46
+ CPL_DISALLOW_COPY_ASSIGN(GDALGeorefPamDataset)
47
+
48
+ public:
49
+ GDALGeorefPamDataset();
50
+ ~GDALGeorefPamDataset() override;
51
+
52
+ CPLErr TryLoadXML(CSLConstList papszSiblingFiles = nullptr) override;
53
+
54
+ CPLErr GetGeoTransform(double *) override;
55
+
56
+ const OGRSpatialReference *GetSpatialRef() const override;
57
+
58
+ int GetGCPCount() override;
59
+ const OGRSpatialReference *GetGCPSpatialRef() const override;
60
+ const GDAL_GCP *GetGCPs() override;
61
+
62
+ char **GetMetadata(const char *pszDomain = "") override;
63
+ const char *GetMetadataItem(const char *pszName,
64
+ const char *pszDomain = "") override;
65
+ CPLErr SetMetadata(char **papszMetadata,
66
+ const char *pszDomain = "") override;
67
+ CPLErr SetMetadataItem(const char *pszName, const char *pszValue,
68
+ const char *pszDomain = "") override;
69
+ };
70
+
71
+ #endif /* #ifndef DOXYGEN_SKIP */
72
+
73
+ #endif /* GDAL_GEOREF_PAM_DATASET_H_INCLUDED */
@@ -0,0 +1,102 @@
1
+ /******************************************************************************
2
+ * $Id$
3
+ *
4
+ * Project: GDAL Gridding API.
5
+ * Purpose: Prototypes, and definitions for of GDAL scattered data gridder.
6
+ * Author: Andrey Kiselev, dron@ak4719.spb.edu
7
+ *
8
+ ******************************************************************************
9
+ * Copyright (c) 2007, Andrey Kiselev <dron@ak4719.spb.edu>
10
+ * Copyright (c) 2012, Even Rouault <even dot rouault at spatialys.com>
11
+ *
12
+ * SPDX-License-Identifier: MIT
13
+ ****************************************************************************/
14
+
15
+ #ifndef GDALGRID_H_INCLUDED
16
+ #define GDALGRID_H_INCLUDED
17
+
18
+ /**
19
+ * \file gdalgrid.h
20
+ *
21
+ * GDAL gridder related entry points and definitions.
22
+ */
23
+
24
+ #include "gdal_alg.h"
25
+
26
+ /*
27
+ * GridCreate Algorithm names
28
+ */
29
+
30
+ static const char szAlgNameInvDist[] = "invdist";
31
+ static const char szAlgNameInvDistNearestNeighbor[] = "invdistnn";
32
+ static const char szAlgNameAverage[] = "average";
33
+ static const char szAlgNameNearest[] = "nearest";
34
+ static const char szAlgNameMinimum[] = "minimum";
35
+ static const char szAlgNameMaximum[] = "maximum";
36
+ static const char szAlgNameRange[] = "range";
37
+ static const char szAlgNameCount[] = "count";
38
+ static const char szAlgNameAverageDistance[] = "average_distance";
39
+ static const char szAlgNameAverageDistancePts[] = "average_distance_pts";
40
+ static const char szAlgNameLinear[] = "linear";
41
+
42
+ CPL_C_START
43
+
44
+ /*! @cond Doxygen_Suppress */
45
+ typedef CPLErr (*GDALGridFunction)(const void *, GUInt32, const double *,
46
+ const double *, const double *, double,
47
+ double, double *, void *);
48
+ /*! @endcond */
49
+
50
+ CPLErr GDALGridInverseDistanceToAPower(const void *, GUInt32, const double *,
51
+ const double *, const double *, double,
52
+ double, double *, void *);
53
+ CPLErr GDALGridInverseDistanceToAPowerNearestNeighbor(const void *, GUInt32,
54
+ const double *,
55
+ const double *,
56
+ const double *, double,
57
+ double, double *, void *);
58
+ CPLErr GDALGridInverseDistanceToAPowerNoSearch(const void *, GUInt32,
59
+ const double *, const double *,
60
+ const double *, double, double,
61
+ double *, void *);
62
+ CPLErr GDALGridMovingAverage(const void *, GUInt32, const double *,
63
+ const double *, const double *, double, double,
64
+ double *, void *);
65
+ CPLErr GDALGridNearestNeighbor(const void *, GUInt32, const double *,
66
+ const double *, const double *, double, double,
67
+ double *, void *);
68
+ CPLErr GDALGridDataMetricMinimum(const void *, GUInt32, const double *,
69
+ const double *, const double *, double, double,
70
+ double *, void *);
71
+ CPLErr GDALGridDataMetricMaximum(const void *, GUInt32, const double *,
72
+ const double *, const double *, double, double,
73
+ double *, void *);
74
+ CPLErr GDALGridDataMetricRange(const void *, GUInt32, const double *,
75
+ const double *, const double *, double, double,
76
+ double *, void *);
77
+ CPLErr GDALGridDataMetricCount(const void *, GUInt32, const double *,
78
+ const double *, const double *, double, double,
79
+ double *, void *);
80
+ CPLErr GDALGridDataMetricAverageDistance(const void *, GUInt32, const double *,
81
+ const double *, const double *, double,
82
+ double, double *, void *);
83
+ CPLErr GDALGridDataMetricAverageDistancePts(const void *, GUInt32,
84
+ const double *, const double *,
85
+ const double *, double, double,
86
+ double *, void *);
87
+ CPLErr GDALGridLinear(const void *, GUInt32, const double *, const double *,
88
+ const double *, double, double, double *, void *);
89
+
90
+ #ifndef GDAL_COMPILATION
91
+ /* ParseAlgorithmAndOptions() is used by PostGIS Raster, hence this alias */
92
+
93
+ /** Compatibility deprecated alias for GDALGridParseAlgorithmAndOptions() */
94
+ #define ParseAlgorithmAndOptions GDALGridParseAlgorithmAndOptions
95
+ #endif
96
+
97
+ CPLErr CPL_DLL GDALGridParseAlgorithmAndOptions(const char *,
98
+ GDALGridAlgorithm *, void **);
99
+
100
+ CPL_C_END
101
+
102
+ #endif /* GDALGRID_H_INCLUDED */
@@ -0,0 +1,67 @@
1
+ /******************************************************************************
2
+ * $Id$
3
+ *
4
+ * Project: GDAL Gridding API.
5
+ * Purpose: Prototypes, and definitions for of GDAL scattered data gridder.
6
+ * Author: Even Rouault, <even dot rouault at spatialys.com>
7
+ *
8
+ ******************************************************************************
9
+ * Copyright (c) 2013, Even Rouault <even dot rouault at spatialys.com>
10
+ *
11
+ * SPDX-License-Identifier: MIT
12
+ ****************************************************************************/
13
+
14
+ #ifndef GDALGRID_PRIV_H
15
+ #define GDALGRID_PRIV_H
16
+
17
+ #include "cpl_error.h"
18
+ #include "cpl_quad_tree.h"
19
+
20
+ #include "gdal_alg.h"
21
+
22
+ //! @cond Doxygen_Suppress
23
+
24
+ typedef struct
25
+ {
26
+ const double *padfX;
27
+ const double *padfY;
28
+ } GDALGridXYArrays;
29
+
30
+ typedef struct
31
+ {
32
+ GDALGridXYArrays *psXYArrays;
33
+ int i;
34
+ } GDALGridPoint;
35
+
36
+ typedef struct
37
+ {
38
+ CPLQuadTree *hQuadTree;
39
+ double dfInitialSearchRadius;
40
+ float *pafX; // Aligned to be usable with AVX
41
+ float *pafY;
42
+ float *pafZ;
43
+ GDALTriangulation *psTriangulation;
44
+ int nInitialFacetIdx;
45
+ /*! Weighting power divided by 2 (pre-computation). */
46
+ double dfPowerDiv2PreComp;
47
+ /*! The radius of search circle squared (pre-computation). */
48
+ double dfRadiusPower2PreComp;
49
+ } GDALGridExtraParameters;
50
+
51
+ #ifdef HAVE_SSE_AT_COMPILE_TIME
52
+ CPLErr GDALGridInverseDistanceToAPower2NoSmoothingNoSearchSSE(
53
+ const void *poOptions, GUInt32 nPoints, const double *unused_padfX,
54
+ const double *unused_padfY, const double *unused_padfZ, double dfXPoint,
55
+ double dfYPoint, double *pdfValue, void *hExtraParamsIn);
56
+ #endif
57
+
58
+ #ifdef HAVE_AVX_AT_COMPILE_TIME
59
+ CPLErr GDALGridInverseDistanceToAPower2NoSmoothingNoSearchAVX(
60
+ const void *poOptions, GUInt32 nPoints, const double *unused_padfX,
61
+ const double *unused_padfY, const double *unused_padfZ, double dfXPoint,
62
+ double dfYPoint, double *pdfValue, void *hExtraParamsIn);
63
+ #endif
64
+
65
+ //! @endcond
66
+
67
+ #endif // GDALGRID_PRIV_H