@cpp.js/package-proj 1.0.0-beta.24 → 2.0.0-beta.1

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 (313) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +1 -1
  3. package/cppjs.config.js +11 -51
  4. package/package.json +8 -16
  5. package/dist/prebuilt/Android-arm64-v8a/include/geodesic.h +0 -837
  6. package/dist/prebuilt/Android-arm64-v8a/include/proj/common.hpp +0 -489
  7. package/dist/prebuilt/Android-arm64-v8a/include/proj/coordinateoperation.hpp +0 -2147
  8. package/dist/prebuilt/Android-arm64-v8a/include/proj/coordinates.hpp +0 -115
  9. package/dist/prebuilt/Android-arm64-v8a/include/proj/coordinatesystem.hpp +0 -892
  10. package/dist/prebuilt/Android-arm64-v8a/include/proj/crs.hpp +0 -1595
  11. package/dist/prebuilt/Android-arm64-v8a/include/proj/datum.hpp +0 -860
  12. package/dist/prebuilt/Android-arm64-v8a/include/proj/io.hpp +0 -1397
  13. package/dist/prebuilt/Android-arm64-v8a/include/proj/metadata.hpp +0 -470
  14. package/dist/prebuilt/Android-arm64-v8a/include/proj/nn.hpp +0 -385
  15. package/dist/prebuilt/Android-arm64-v8a/include/proj/util.hpp +0 -781
  16. package/dist/prebuilt/Android-arm64-v8a/include/proj.h +0 -2231
  17. package/dist/prebuilt/Android-arm64-v8a/include/proj_constants.h +0 -879
  18. package/dist/prebuilt/Android-arm64-v8a/include/proj_experimental.h +0 -52
  19. package/dist/prebuilt/Android-arm64-v8a/include/proj_symbol_rename.h +0 -434
  20. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj/proj-config-version.cmake +0 -52
  21. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj/proj-config.cmake +0 -79
  22. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj/proj-targets-release.cmake +0 -19
  23. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj/proj-targets.cmake +0 -106
  24. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj/proj4-targets-release.cmake +0 -19
  25. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj/proj4-targets.cmake +0 -106
  26. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj4/proj-targets-release.cmake +0 -19
  27. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj4/proj-targets.cmake +0 -106
  28. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj4/proj4-config-version.cmake +0 -52
  29. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj4/proj4-config.cmake +0 -79
  30. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj4/proj4-targets-release.cmake +0 -19
  31. package/dist/prebuilt/Android-arm64-v8a/lib/cmake/proj4/proj4-targets.cmake +0 -106
  32. package/dist/prebuilt/Android-arm64-v8a/lib/libproj.so +0 -0
  33. package/dist/prebuilt/Android-arm64-v8a/lib/pkgconfig/proj.pc +0 -14
  34. package/dist/prebuilt/Android-arm64-v8a/share/doc/proj/AUTHORS.md +0 -33
  35. package/dist/prebuilt/Android-arm64-v8a/share/doc/proj/COPYING +0 -34
  36. package/dist/prebuilt/Android-arm64-v8a/share/doc/proj/NEWS.md +0 -3084
  37. package/dist/prebuilt/Android-arm64-v8a/share/man/man1/cct.1 +0 -370
  38. package/dist/prebuilt/Android-arm64-v8a/share/man/man1/cs2cs.1 +0 -537
  39. package/dist/prebuilt/Android-arm64-v8a/share/man/man1/geod.1 +0 -263
  40. package/dist/prebuilt/Android-arm64-v8a/share/man/man1/gie.1 +0 -524
  41. package/dist/prebuilt/Android-arm64-v8a/share/man/man1/proj.1 +0 -326
  42. package/dist/prebuilt/Android-arm64-v8a/share/man/man1/projinfo.1 +0 -856
  43. package/dist/prebuilt/Android-arm64-v8a/share/man/man1/projsync.1 +0 -227
  44. package/dist/prebuilt/Android-arm64-v8a/share/proj/CH +0 -22
  45. package/dist/prebuilt/Android-arm64-v8a/share/proj/GL27 +0 -23
  46. package/dist/prebuilt/Android-arm64-v8a/share/proj/ITRF2000 +0 -24
  47. package/dist/prebuilt/Android-arm64-v8a/share/proj/ITRF2008 +0 -94
  48. package/dist/prebuilt/Android-arm64-v8a/share/proj/ITRF2014 +0 -55
  49. package/dist/prebuilt/Android-arm64-v8a/share/proj/ITRF2020 +0 -91
  50. package/dist/prebuilt/Android-arm64-v8a/share/proj/deformation_model.schema.json +0 -582
  51. package/dist/prebuilt/Android-arm64-v8a/share/proj/nad.lst +0 -142
  52. package/dist/prebuilt/Android-arm64-v8a/share/proj/nad27 +0 -810
  53. package/dist/prebuilt/Android-arm64-v8a/share/proj/nad83 +0 -745
  54. package/dist/prebuilt/Android-arm64-v8a/share/proj/other.extra +0 -53
  55. package/dist/prebuilt/Android-arm64-v8a/share/proj/proj.db +0 -0
  56. package/dist/prebuilt/Android-arm64-v8a/share/proj/proj.ini +0 -51
  57. package/dist/prebuilt/Android-arm64-v8a/share/proj/projjson.schema.json +0 -1174
  58. package/dist/prebuilt/Android-arm64-v8a/share/proj/triangulation.schema.json +0 -214
  59. package/dist/prebuilt/Android-arm64-v8a/share/proj/world +0 -214
  60. package/dist/prebuilt/Android-x86_64/include/geodesic.h +0 -837
  61. package/dist/prebuilt/Android-x86_64/include/proj/common.hpp +0 -489
  62. package/dist/prebuilt/Android-x86_64/include/proj/coordinateoperation.hpp +0 -2147
  63. package/dist/prebuilt/Android-x86_64/include/proj/coordinates.hpp +0 -115
  64. package/dist/prebuilt/Android-x86_64/include/proj/coordinatesystem.hpp +0 -892
  65. package/dist/prebuilt/Android-x86_64/include/proj/crs.hpp +0 -1595
  66. package/dist/prebuilt/Android-x86_64/include/proj/datum.hpp +0 -860
  67. package/dist/prebuilt/Android-x86_64/include/proj/io.hpp +0 -1397
  68. package/dist/prebuilt/Android-x86_64/include/proj/metadata.hpp +0 -470
  69. package/dist/prebuilt/Android-x86_64/include/proj/nn.hpp +0 -385
  70. package/dist/prebuilt/Android-x86_64/include/proj/util.hpp +0 -781
  71. package/dist/prebuilt/Android-x86_64/include/proj.h +0 -2231
  72. package/dist/prebuilt/Android-x86_64/include/proj_constants.h +0 -879
  73. package/dist/prebuilt/Android-x86_64/include/proj_experimental.h +0 -52
  74. package/dist/prebuilt/Android-x86_64/include/proj_symbol_rename.h +0 -434
  75. package/dist/prebuilt/Android-x86_64/lib/cmake/proj/proj-config-version.cmake +0 -52
  76. package/dist/prebuilt/Android-x86_64/lib/cmake/proj/proj-config.cmake +0 -79
  77. package/dist/prebuilt/Android-x86_64/lib/cmake/proj/proj-targets-release.cmake +0 -19
  78. package/dist/prebuilt/Android-x86_64/lib/cmake/proj/proj-targets.cmake +0 -106
  79. package/dist/prebuilt/Android-x86_64/lib/cmake/proj/proj4-targets-release.cmake +0 -19
  80. package/dist/prebuilt/Android-x86_64/lib/cmake/proj/proj4-targets.cmake +0 -106
  81. package/dist/prebuilt/Android-x86_64/lib/cmake/proj4/proj-targets-release.cmake +0 -19
  82. package/dist/prebuilt/Android-x86_64/lib/cmake/proj4/proj-targets.cmake +0 -106
  83. package/dist/prebuilt/Android-x86_64/lib/cmake/proj4/proj4-config-version.cmake +0 -52
  84. package/dist/prebuilt/Android-x86_64/lib/cmake/proj4/proj4-config.cmake +0 -79
  85. package/dist/prebuilt/Android-x86_64/lib/cmake/proj4/proj4-targets-release.cmake +0 -19
  86. package/dist/prebuilt/Android-x86_64/lib/cmake/proj4/proj4-targets.cmake +0 -106
  87. package/dist/prebuilt/Android-x86_64/lib/libproj.so +0 -0
  88. package/dist/prebuilt/Android-x86_64/lib/pkgconfig/proj.pc +0 -14
  89. package/dist/prebuilt/Android-x86_64/share/doc/proj/AUTHORS.md +0 -33
  90. package/dist/prebuilt/Android-x86_64/share/doc/proj/COPYING +0 -34
  91. package/dist/prebuilt/Android-x86_64/share/doc/proj/NEWS.md +0 -3084
  92. package/dist/prebuilt/Android-x86_64/share/man/man1/cct.1 +0 -370
  93. package/dist/prebuilt/Android-x86_64/share/man/man1/cs2cs.1 +0 -537
  94. package/dist/prebuilt/Android-x86_64/share/man/man1/geod.1 +0 -263
  95. package/dist/prebuilt/Android-x86_64/share/man/man1/gie.1 +0 -524
  96. package/dist/prebuilt/Android-x86_64/share/man/man1/proj.1 +0 -326
  97. package/dist/prebuilt/Android-x86_64/share/man/man1/projinfo.1 +0 -856
  98. package/dist/prebuilt/Android-x86_64/share/man/man1/projsync.1 +0 -227
  99. package/dist/prebuilt/Android-x86_64/share/proj/CH +0 -22
  100. package/dist/prebuilt/Android-x86_64/share/proj/GL27 +0 -23
  101. package/dist/prebuilt/Android-x86_64/share/proj/ITRF2000 +0 -24
  102. package/dist/prebuilt/Android-x86_64/share/proj/ITRF2008 +0 -94
  103. package/dist/prebuilt/Android-x86_64/share/proj/ITRF2014 +0 -55
  104. package/dist/prebuilt/Android-x86_64/share/proj/ITRF2020 +0 -91
  105. package/dist/prebuilt/Android-x86_64/share/proj/deformation_model.schema.json +0 -582
  106. package/dist/prebuilt/Android-x86_64/share/proj/nad.lst +0 -142
  107. package/dist/prebuilt/Android-x86_64/share/proj/nad27 +0 -810
  108. package/dist/prebuilt/Android-x86_64/share/proj/nad83 +0 -745
  109. package/dist/prebuilt/Android-x86_64/share/proj/other.extra +0 -53
  110. package/dist/prebuilt/Android-x86_64/share/proj/proj.db +0 -0
  111. package/dist/prebuilt/Android-x86_64/share/proj/proj.ini +0 -51
  112. package/dist/prebuilt/Android-x86_64/share/proj/projjson.schema.json +0 -1174
  113. package/dist/prebuilt/Android-x86_64/share/proj/triangulation.schema.json +0 -214
  114. package/dist/prebuilt/Android-x86_64/share/proj/world +0 -214
  115. package/dist/prebuilt/CMakeLists.txt +0 -44
  116. package/dist/prebuilt/Emscripten-x86_64/include/geodesic.h +0 -837
  117. package/dist/prebuilt/Emscripten-x86_64/include/proj/common.hpp +0 -489
  118. package/dist/prebuilt/Emscripten-x86_64/include/proj/coordinateoperation.hpp +0 -2147
  119. package/dist/prebuilt/Emscripten-x86_64/include/proj/coordinates.hpp +0 -115
  120. package/dist/prebuilt/Emscripten-x86_64/include/proj/coordinatesystem.hpp +0 -892
  121. package/dist/prebuilt/Emscripten-x86_64/include/proj/crs.hpp +0 -1595
  122. package/dist/prebuilt/Emscripten-x86_64/include/proj/datum.hpp +0 -860
  123. package/dist/prebuilt/Emscripten-x86_64/include/proj/io.hpp +0 -1397
  124. package/dist/prebuilt/Emscripten-x86_64/include/proj/metadata.hpp +0 -470
  125. package/dist/prebuilt/Emscripten-x86_64/include/proj/nn.hpp +0 -385
  126. package/dist/prebuilt/Emscripten-x86_64/include/proj/util.hpp +0 -781
  127. package/dist/prebuilt/Emscripten-x86_64/include/proj.h +0 -2231
  128. package/dist/prebuilt/Emscripten-x86_64/include/proj_constants.h +0 -879
  129. package/dist/prebuilt/Emscripten-x86_64/include/proj_experimental.h +0 -52
  130. package/dist/prebuilt/Emscripten-x86_64/include/proj_symbol_rename.h +0 -434
  131. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj/proj-config-version.cmake +0 -52
  132. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj/proj-config.cmake +0 -79
  133. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj/proj-targets-release.cmake +0 -19
  134. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj/proj-targets.cmake +0 -107
  135. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj/proj4-targets-release.cmake +0 -19
  136. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj/proj4-targets.cmake +0 -107
  137. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj4/proj-targets-release.cmake +0 -19
  138. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj4/proj-targets.cmake +0 -107
  139. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj4/proj4-config-version.cmake +0 -52
  140. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj4/proj4-config.cmake +0 -79
  141. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj4/proj4-targets-release.cmake +0 -19
  142. package/dist/prebuilt/Emscripten-x86_64/lib/cmake/proj4/proj4-targets.cmake +0 -107
  143. package/dist/prebuilt/Emscripten-x86_64/lib/libproj.a +0 -0
  144. package/dist/prebuilt/Emscripten-x86_64/lib/pkgconfig/proj.pc +0 -14
  145. package/dist/prebuilt/Emscripten-x86_64/share/doc/proj/AUTHORS.md +0 -33
  146. package/dist/prebuilt/Emscripten-x86_64/share/doc/proj/COPYING +0 -34
  147. package/dist/prebuilt/Emscripten-x86_64/share/doc/proj/NEWS.md +0 -3084
  148. package/dist/prebuilt/Emscripten-x86_64/share/man/man1/cct.1 +0 -370
  149. package/dist/prebuilt/Emscripten-x86_64/share/man/man1/cs2cs.1 +0 -537
  150. package/dist/prebuilt/Emscripten-x86_64/share/man/man1/geod.1 +0 -263
  151. package/dist/prebuilt/Emscripten-x86_64/share/man/man1/gie.1 +0 -524
  152. package/dist/prebuilt/Emscripten-x86_64/share/man/man1/proj.1 +0 -326
  153. package/dist/prebuilt/Emscripten-x86_64/share/man/man1/projinfo.1 +0 -856
  154. package/dist/prebuilt/Emscripten-x86_64/share/man/man1/projsync.1 +0 -227
  155. package/dist/prebuilt/Emscripten-x86_64/share/proj/CH +0 -22
  156. package/dist/prebuilt/Emscripten-x86_64/share/proj/GL27 +0 -23
  157. package/dist/prebuilt/Emscripten-x86_64/share/proj/ITRF2000 +0 -24
  158. package/dist/prebuilt/Emscripten-x86_64/share/proj/ITRF2008 +0 -94
  159. package/dist/prebuilt/Emscripten-x86_64/share/proj/ITRF2014 +0 -55
  160. package/dist/prebuilt/Emscripten-x86_64/share/proj/ITRF2020 +0 -91
  161. package/dist/prebuilt/Emscripten-x86_64/share/proj/deformation_model.schema.json +0 -582
  162. package/dist/prebuilt/Emscripten-x86_64/share/proj/nad.lst +0 -142
  163. package/dist/prebuilt/Emscripten-x86_64/share/proj/nad27 +0 -810
  164. package/dist/prebuilt/Emscripten-x86_64/share/proj/nad83 +0 -745
  165. package/dist/prebuilt/Emscripten-x86_64/share/proj/other.extra +0 -53
  166. package/dist/prebuilt/Emscripten-x86_64/share/proj/proj.db +0 -0
  167. package/dist/prebuilt/Emscripten-x86_64/share/proj/proj.ini +0 -51
  168. package/dist/prebuilt/Emscripten-x86_64/share/proj/projjson.schema.json +0 -1174
  169. package/dist/prebuilt/Emscripten-x86_64/share/proj/triangulation.schema.json +0 -214
  170. package/dist/prebuilt/Emscripten-x86_64/share/proj/world +0 -214
  171. package/dist/prebuilt/iOS-iphoneos/include/geodesic.h +0 -837
  172. package/dist/prebuilt/iOS-iphoneos/include/proj/common.hpp +0 -489
  173. package/dist/prebuilt/iOS-iphoneos/include/proj/coordinateoperation.hpp +0 -2147
  174. package/dist/prebuilt/iOS-iphoneos/include/proj/coordinates.hpp +0 -115
  175. package/dist/prebuilt/iOS-iphoneos/include/proj/coordinatesystem.hpp +0 -892
  176. package/dist/prebuilt/iOS-iphoneos/include/proj/crs.hpp +0 -1595
  177. package/dist/prebuilt/iOS-iphoneos/include/proj/datum.hpp +0 -860
  178. package/dist/prebuilt/iOS-iphoneos/include/proj/io.hpp +0 -1397
  179. package/dist/prebuilt/iOS-iphoneos/include/proj/metadata.hpp +0 -470
  180. package/dist/prebuilt/iOS-iphoneos/include/proj/nn.hpp +0 -385
  181. package/dist/prebuilt/iOS-iphoneos/include/proj/util.hpp +0 -781
  182. package/dist/prebuilt/iOS-iphoneos/include/proj.h +0 -2231
  183. package/dist/prebuilt/iOS-iphoneos/include/proj_constants.h +0 -879
  184. package/dist/prebuilt/iOS-iphoneos/include/proj_experimental.h +0 -52
  185. package/dist/prebuilt/iOS-iphoneos/include/proj_symbol_rename.h +0 -434
  186. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj/proj-config-version.cmake +0 -52
  187. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj/proj-config.cmake +0 -79
  188. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj/proj-targets-release.cmake +0 -19
  189. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj/proj-targets.cmake +0 -108
  190. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj/proj4-targets-release.cmake +0 -19
  191. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj/proj4-targets.cmake +0 -108
  192. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj4/proj-targets-release.cmake +0 -19
  193. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj4/proj-targets.cmake +0 -108
  194. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj4/proj4-config-version.cmake +0 -52
  195. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj4/proj4-config.cmake +0 -79
  196. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj4/proj4-targets-release.cmake +0 -19
  197. package/dist/prebuilt/iOS-iphoneos/lib/cmake/proj4/proj4-targets.cmake +0 -108
  198. package/dist/prebuilt/iOS-iphoneos/lib/libproj.a +0 -0
  199. package/dist/prebuilt/iOS-iphoneos/lib/pkgconfig/proj.pc +0 -14
  200. package/dist/prebuilt/iOS-iphoneos/share/doc/proj/AUTHORS.md +0 -33
  201. package/dist/prebuilt/iOS-iphoneos/share/doc/proj/COPYING +0 -34
  202. package/dist/prebuilt/iOS-iphoneos/share/doc/proj/NEWS.md +0 -3084
  203. package/dist/prebuilt/iOS-iphoneos/share/man/man1/cct.1 +0 -370
  204. package/dist/prebuilt/iOS-iphoneos/share/man/man1/cs2cs.1 +0 -537
  205. package/dist/prebuilt/iOS-iphoneos/share/man/man1/geod.1 +0 -263
  206. package/dist/prebuilt/iOS-iphoneos/share/man/man1/gie.1 +0 -524
  207. package/dist/prebuilt/iOS-iphoneos/share/man/man1/proj.1 +0 -326
  208. package/dist/prebuilt/iOS-iphoneos/share/man/man1/projinfo.1 +0 -856
  209. package/dist/prebuilt/iOS-iphoneos/share/man/man1/projsync.1 +0 -227
  210. package/dist/prebuilt/iOS-iphoneos/share/proj/CH +0 -22
  211. package/dist/prebuilt/iOS-iphoneos/share/proj/GL27 +0 -23
  212. package/dist/prebuilt/iOS-iphoneos/share/proj/ITRF2000 +0 -24
  213. package/dist/prebuilt/iOS-iphoneos/share/proj/ITRF2008 +0 -94
  214. package/dist/prebuilt/iOS-iphoneos/share/proj/ITRF2014 +0 -55
  215. package/dist/prebuilt/iOS-iphoneos/share/proj/ITRF2020 +0 -91
  216. package/dist/prebuilt/iOS-iphoneos/share/proj/deformation_model.schema.json +0 -582
  217. package/dist/prebuilt/iOS-iphoneos/share/proj/nad.lst +0 -142
  218. package/dist/prebuilt/iOS-iphoneos/share/proj/nad27 +0 -810
  219. package/dist/prebuilt/iOS-iphoneos/share/proj/nad83 +0 -745
  220. package/dist/prebuilt/iOS-iphoneos/share/proj/other.extra +0 -53
  221. package/dist/prebuilt/iOS-iphoneos/share/proj/proj.db +0 -0
  222. package/dist/prebuilt/iOS-iphoneos/share/proj/proj.ini +0 -51
  223. package/dist/prebuilt/iOS-iphoneos/share/proj/projjson.schema.json +0 -1174
  224. package/dist/prebuilt/iOS-iphoneos/share/proj/triangulation.schema.json +0 -214
  225. package/dist/prebuilt/iOS-iphoneos/share/proj/world +0 -214
  226. package/dist/prebuilt/iOS-iphonesimulator/include/geodesic.h +0 -837
  227. package/dist/prebuilt/iOS-iphonesimulator/include/proj/common.hpp +0 -489
  228. package/dist/prebuilt/iOS-iphonesimulator/include/proj/coordinateoperation.hpp +0 -2147
  229. package/dist/prebuilt/iOS-iphonesimulator/include/proj/coordinates.hpp +0 -115
  230. package/dist/prebuilt/iOS-iphonesimulator/include/proj/coordinatesystem.hpp +0 -892
  231. package/dist/prebuilt/iOS-iphonesimulator/include/proj/crs.hpp +0 -1595
  232. package/dist/prebuilt/iOS-iphonesimulator/include/proj/datum.hpp +0 -860
  233. package/dist/prebuilt/iOS-iphonesimulator/include/proj/io.hpp +0 -1397
  234. package/dist/prebuilt/iOS-iphonesimulator/include/proj/metadata.hpp +0 -470
  235. package/dist/prebuilt/iOS-iphonesimulator/include/proj/nn.hpp +0 -385
  236. package/dist/prebuilt/iOS-iphonesimulator/include/proj/util.hpp +0 -781
  237. package/dist/prebuilt/iOS-iphonesimulator/include/proj.h +0 -2231
  238. package/dist/prebuilt/iOS-iphonesimulator/include/proj_constants.h +0 -879
  239. package/dist/prebuilt/iOS-iphonesimulator/include/proj_experimental.h +0 -52
  240. package/dist/prebuilt/iOS-iphonesimulator/include/proj_symbol_rename.h +0 -434
  241. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj/proj-config-version.cmake +0 -52
  242. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj/proj-config.cmake +0 -79
  243. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj/proj-targets-release.cmake +0 -19
  244. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj/proj-targets.cmake +0 -108
  245. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj/proj4-targets-release.cmake +0 -19
  246. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj/proj4-targets.cmake +0 -108
  247. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj4/proj-targets-release.cmake +0 -19
  248. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj4/proj-targets.cmake +0 -108
  249. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj4/proj4-config-version.cmake +0 -52
  250. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj4/proj4-config.cmake +0 -79
  251. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj4/proj4-targets-release.cmake +0 -19
  252. package/dist/prebuilt/iOS-iphonesimulator/lib/cmake/proj4/proj4-targets.cmake +0 -108
  253. package/dist/prebuilt/iOS-iphonesimulator/lib/libproj.a +0 -0
  254. package/dist/prebuilt/iOS-iphonesimulator/lib/pkgconfig/proj.pc +0 -14
  255. package/dist/prebuilt/iOS-iphonesimulator/share/doc/proj/AUTHORS.md +0 -33
  256. package/dist/prebuilt/iOS-iphonesimulator/share/doc/proj/COPYING +0 -34
  257. package/dist/prebuilt/iOS-iphonesimulator/share/doc/proj/NEWS.md +0 -3084
  258. package/dist/prebuilt/iOS-iphonesimulator/share/man/man1/cct.1 +0 -370
  259. package/dist/prebuilt/iOS-iphonesimulator/share/man/man1/cs2cs.1 +0 -537
  260. package/dist/prebuilt/iOS-iphonesimulator/share/man/man1/geod.1 +0 -263
  261. package/dist/prebuilt/iOS-iphonesimulator/share/man/man1/gie.1 +0 -524
  262. package/dist/prebuilt/iOS-iphonesimulator/share/man/man1/proj.1 +0 -326
  263. package/dist/prebuilt/iOS-iphonesimulator/share/man/man1/projinfo.1 +0 -856
  264. package/dist/prebuilt/iOS-iphonesimulator/share/man/man1/projsync.1 +0 -227
  265. package/dist/prebuilt/iOS-iphonesimulator/share/proj/CH +0 -22
  266. package/dist/prebuilt/iOS-iphonesimulator/share/proj/GL27 +0 -23
  267. package/dist/prebuilt/iOS-iphonesimulator/share/proj/ITRF2000 +0 -24
  268. package/dist/prebuilt/iOS-iphonesimulator/share/proj/ITRF2008 +0 -94
  269. package/dist/prebuilt/iOS-iphonesimulator/share/proj/ITRF2014 +0 -55
  270. package/dist/prebuilt/iOS-iphonesimulator/share/proj/ITRF2020 +0 -91
  271. package/dist/prebuilt/iOS-iphonesimulator/share/proj/deformation_model.schema.json +0 -582
  272. package/dist/prebuilt/iOS-iphonesimulator/share/proj/nad.lst +0 -142
  273. package/dist/prebuilt/iOS-iphonesimulator/share/proj/nad27 +0 -810
  274. package/dist/prebuilt/iOS-iphonesimulator/share/proj/nad83 +0 -745
  275. package/dist/prebuilt/iOS-iphonesimulator/share/proj/other.extra +0 -53
  276. package/dist/prebuilt/iOS-iphonesimulator/share/proj/proj.db +0 -0
  277. package/dist/prebuilt/iOS-iphonesimulator/share/proj/proj.ini +0 -51
  278. package/dist/prebuilt/iOS-iphonesimulator/share/proj/projjson.schema.json +0 -1174
  279. package/dist/prebuilt/iOS-iphonesimulator/share/proj/triangulation.schema.json +0 -214
  280. package/dist/prebuilt/iOS-iphonesimulator/share/proj/world +0 -214
  281. package/proj.xcframework/Info.plist +0 -50
  282. package/proj.xcframework/ios-arm64_arm64e/Headers/geodesic.h +0 -837
  283. package/proj.xcframework/ios-arm64_arm64e/Headers/proj/common.hpp +0 -489
  284. package/proj.xcframework/ios-arm64_arm64e/Headers/proj/coordinateoperation.hpp +0 -2147
  285. package/proj.xcframework/ios-arm64_arm64e/Headers/proj/coordinates.hpp +0 -115
  286. package/proj.xcframework/ios-arm64_arm64e/Headers/proj/coordinatesystem.hpp +0 -892
  287. package/proj.xcframework/ios-arm64_arm64e/Headers/proj/crs.hpp +0 -1595
  288. package/proj.xcframework/ios-arm64_arm64e/Headers/proj/datum.hpp +0 -860
  289. package/proj.xcframework/ios-arm64_arm64e/Headers/proj/io.hpp +0 -1397
  290. package/proj.xcframework/ios-arm64_arm64e/Headers/proj/metadata.hpp +0 -470
  291. package/proj.xcframework/ios-arm64_arm64e/Headers/proj/nn.hpp +0 -385
  292. package/proj.xcframework/ios-arm64_arm64e/Headers/proj/util.hpp +0 -781
  293. package/proj.xcframework/ios-arm64_arm64e/Headers/proj.h +0 -2231
  294. package/proj.xcframework/ios-arm64_arm64e/Headers/proj_constants.h +0 -879
  295. package/proj.xcframework/ios-arm64_arm64e/Headers/proj_experimental.h +0 -52
  296. package/proj.xcframework/ios-arm64_arm64e/Headers/proj_symbol_rename.h +0 -434
  297. package/proj.xcframework/ios-arm64_arm64e/libproj.a +0 -0
  298. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/geodesic.h +0 -837
  299. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj/common.hpp +0 -489
  300. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj/coordinateoperation.hpp +0 -2147
  301. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj/coordinates.hpp +0 -115
  302. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj/coordinatesystem.hpp +0 -892
  303. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj/crs.hpp +0 -1595
  304. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj/datum.hpp +0 -860
  305. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj/io.hpp +0 -1397
  306. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj/metadata.hpp +0 -470
  307. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj/nn.hpp +0 -385
  308. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj/util.hpp +0 -781
  309. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj.h +0 -2231
  310. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj_constants.h +0 -879
  311. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj_experimental.h +0 -52
  312. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/Headers/proj_symbol_rename.h +0 -434
  313. package/proj.xcframework/ios-arm64_arm64e_x86_64-simulator/libproj.a +0 -0
@@ -1,781 +0,0 @@
1
- /******************************************************************************
2
- *
3
- * Project: PROJ
4
- * Purpose: ISO19111:2019 implementation
5
- * Author: Even Rouault <even dot rouault at spatialys dot com>
6
- *
7
- ******************************************************************************
8
- * Copyright (c) 2018, Even Rouault <even dot rouault at spatialys dot com>
9
- *
10
- * Permission is hereby granted, free of charge, to any person obtaining a
11
- * copy of this software and associated documentation files (the "Software"),
12
- * to deal in the Software without restriction, including without limitation
13
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
14
- * and/or sell copies of the Software, and to permit persons to whom the
15
- * Software is furnished to do so, subject to the following conditions:
16
- *
17
- * The above copyright notice and this permission notice shall be included
18
- * in all copies or substantial portions of the Software.
19
- *
20
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
21
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
23
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
25
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
26
- * DEALINGS IN THE SOFTWARE.
27
- ****************************************************************************/
28
-
29
- #ifndef UTIL_HH_INCLUDED
30
- #define UTIL_HH_INCLUDED
31
-
32
- #if !(__cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1900))
33
- #error Must have C++11 or newer.
34
- #endif
35
-
36
- // windows.h can conflict with Criterion::STRICT
37
- #ifdef STRICT
38
- #undef STRICT
39
- #endif
40
-
41
- #include <exception>
42
- #include <map>
43
- #include <memory>
44
- #include <string>
45
- #include <type_traits>
46
- #include <vector>
47
-
48
- #ifndef NS_PROJ
49
- /** osgeo namespace */
50
- namespace osgeo {
51
- /** osgeo.proj namespace */
52
- namespace proj {}
53
- } // namespace osgeo
54
- #endif
55
-
56
- //! @cond Doxygen_Suppress
57
-
58
- #ifndef PROJ_DLL
59
- #if defined(_MSC_VER)
60
- #ifdef PROJ_MSVC_DLL_EXPORT
61
- #define PROJ_DLL __declspec(dllexport)
62
- #else
63
- #define PROJ_DLL __declspec(dllimport)
64
- #endif
65
- #elif defined(__GNUC__)
66
- #define PROJ_DLL __attribute__((visibility("default")))
67
- #else
68
- #define PROJ_DLL
69
- #endif
70
- #endif
71
-
72
- #ifndef PROJ_MSVC_DLL
73
- #if defined(_MSC_VER)
74
- #define PROJ_MSVC_DLL PROJ_DLL
75
- #define PROJ_GCC_DLL
76
- #define PROJ_INTERNAL
77
- #elif defined(__GNUC__)
78
- #define PROJ_MSVC_DLL
79
- #define PROJ_GCC_DLL PROJ_DLL
80
- #if !defined(__MINGW32__)
81
- #define PROJ_INTERNAL __attribute__((visibility("hidden")))
82
- #else
83
- #define PROJ_INTERNAL
84
- #endif
85
- #else
86
- #define PROJ_MSVC_DLL
87
- #define PROJ_GCC_DLL
88
- #define PROJ_INTERNAL
89
- #endif
90
- #define PROJ_FOR_TEST PROJ_DLL
91
- #endif
92
-
93
- #include "nn.hpp"
94
-
95
- /* To allow customizing the base namespace of PROJ */
96
- #ifdef PROJ_INTERNAL_CPP_NAMESPACE
97
- #define NS_PROJ osgeo::internalproj
98
- #define NS_PROJ_START \
99
- namespace osgeo { \
100
- namespace internalproj {
101
- #define NS_PROJ_END \
102
- } \
103
- }
104
- #else
105
- #ifndef NS_PROJ
106
- #define NS_PROJ osgeo::proj
107
- #define NS_PROJ_START \
108
- namespace osgeo { \
109
- namespace proj {
110
- #define NS_PROJ_END \
111
- } \
112
- }
113
- #endif
114
- #endif
115
-
116
- // Private-implementation (Pimpl) pattern
117
- #define PROJ_OPAQUE_PRIVATE_DATA \
118
- private: \
119
- struct PROJ_INTERNAL Private; \
120
- std::unique_ptr<Private> d; \
121
- \
122
- protected: \
123
- PROJ_INTERNAL Private *getPrivate() noexcept { return d.get(); } \
124
- PROJ_INTERNAL const Private *getPrivate() const noexcept { \
125
- return d.get(); \
126
- } \
127
- \
128
- private:
129
-
130
- // To include in the protected/private section of a class definition,
131
- // to be able to call make_shared on a protected/private constructor
132
- #define INLINED_MAKE_SHARED \
133
- template <typename T, typename... Args> \
134
- static std::shared_ptr<T> make_shared(Args &&...args) { \
135
- return std::shared_ptr<T>(new T(std::forward<Args>(args)...)); \
136
- } \
137
- template <typename T, typename... Args> \
138
- static util::nn_shared_ptr<T> nn_make_shared(Args &&...args) { \
139
- return util::nn_shared_ptr<T>( \
140
- util::i_promise_i_checked_for_null, \
141
- std::shared_ptr<T>(new T(std::forward<Args>(args)...))); \
142
- }
143
-
144
- // To include in the protected/private section of a class definition,
145
- // to be able to call make_unique on a protected/private constructor
146
- #define INLINED_MAKE_UNIQUE \
147
- template <typename T, typename... Args> \
148
- static std::unique_ptr<T> make_unique(Args &&...args) { \
149
- return std::unique_ptr<T>(new T(std::forward<Args>(args)...)); \
150
- }
151
-
152
- #ifdef DOXYGEN_ENABLED
153
- #define PROJ_FRIEND(mytype)
154
- #define PROJ_FRIEND_OPTIONAL(mytype)
155
- #else
156
- #define PROJ_FRIEND(mytype) friend class mytype
157
- #define PROJ_FRIEND_OPTIONAL(mytype) friend class util::optional<mytype>
158
- #endif
159
-
160
- #ifndef PROJ_PRIVATE
161
- #define PROJ_PRIVATE public
162
- #endif
163
-
164
- #if defined(__GNUC__)
165
- #define PROJ_NO_INLINE __attribute__((noinline))
166
- #define PROJ_NO_RETURN __attribute__((noreturn))
167
- // Applies to a function that has no side effect.
168
- #define PROJ_PURE_DECL const noexcept __attribute__((pure))
169
- #else
170
- #define PROJ_NO_RETURN
171
- #define PROJ_NO_INLINE
172
- #define PROJ_PURE_DECL const noexcept
173
- #endif
174
- #define PROJ_PURE_DEFN const noexcept
175
-
176
- //! @endcond
177
-
178
- NS_PROJ_START
179
-
180
- //! @cond Doxygen_Suppress
181
- namespace io {
182
- class DatabaseContext;
183
- using DatabaseContextPtr = std::shared_ptr<DatabaseContext>;
184
- } // namespace io
185
- //! @endcond
186
-
187
- /** osgeo.proj.util namespace.
188
- *
189
- * \brief A set of base types from ISO 19103, \ref GeoAPI and other PROJ
190
- * specific classes.
191
- */
192
- namespace util {
193
-
194
- //! @cond Doxygen_Suppress
195
- // Import a few classes from nn.hpp to expose them under our ::util namespace
196
- // for conveniency.
197
- using ::dropbox::oxygen::i_promise_i_checked_for_null;
198
- using ::dropbox::oxygen::nn;
199
- using ::dropbox::oxygen::nn_dynamic_pointer_cast;
200
- using ::dropbox::oxygen::nn_make_shared;
201
-
202
- // For return statements, to convert from derived type to base type
203
- using ::dropbox::oxygen::nn_static_pointer_cast;
204
-
205
- template <typename T> using nn_shared_ptr = nn<std::shared_ptr<T>>;
206
-
207
- // Possible implementation of C++14 std::remove_reference_t
208
- // (cf https://en.cppreference.com/w/cpp/types/remove_cv)
209
- template <class T>
210
- using remove_reference_t = typename std::remove_reference<T>::type;
211
-
212
- // Possible implementation of C++14 std::remove_cv_t
213
- // (cf https://en.cppreference.com/w/cpp/types/remove_cv)
214
- template <class T> using remove_cv_t = typename std::remove_cv<T>::type;
215
-
216
- // Possible implementation of C++20 std::remove_cvref
217
- // (cf https://en.cppreference.com/w/cpp/types/remove_cvref)
218
- template <class T> struct remove_cvref {
219
- typedef remove_cv_t<remove_reference_t<T>> type;
220
- };
221
-
222
- #define NN_NO_CHECK(p) \
223
- ::dropbox::oxygen::nn< \
224
- typename ::NS_PROJ::util::remove_cvref<decltype(p)>::type>( \
225
- ::dropbox::oxygen::i_promise_i_checked_for_null, (p))
226
-
227
- //! @endcond
228
-
229
- // To avoid formatting differences between clang-format 3.8 and 7
230
- #define PROJ_NOEXCEPT noexcept
231
-
232
- //! @cond Doxygen_Suppress
233
- // isOfExactType<MyType>(*p) checks that the type of *p is exactly MyType
234
- template <typename TemplateT, typename ObjectT>
235
- inline bool isOfExactType(const ObjectT &o) {
236
- return typeid(TemplateT).hash_code() == typeid(o).hash_code();
237
- }
238
- //! @endcond
239
-
240
- /** \brief Loose transposition of [std::optional]
241
- * (https://en.cppreference.com/w/cpp/utility/optional) available from C++17. */
242
- template <class T> class optional {
243
- public:
244
- //! @cond Doxygen_Suppress
245
- inline optional() : hasVal_(false) {}
246
- inline explicit optional(const T &val) : hasVal_(true), val_(val) {}
247
- inline explicit optional(T &&val)
248
- : hasVal_(true), val_(std::forward<T>(val)) {}
249
-
250
- inline optional(const optional &) = default;
251
- inline optional(optional &&other) PROJ_NOEXCEPT
252
- : hasVal_(other.hasVal_),
253
- // cppcheck-suppress functionStatic
254
- val_(std::forward<T>(other.val_)) {
255
- other.hasVal_ = false;
256
- }
257
-
258
- inline optional &operator=(const T &val) {
259
- hasVal_ = true;
260
- val_ = val;
261
- return *this;
262
- }
263
- inline optional &operator=(T &&val) noexcept {
264
- hasVal_ = true;
265
- val_ = std::forward<T>(val);
266
- return *this;
267
- }
268
- inline optional &operator=(const optional &) = default;
269
- inline optional &operator=(optional &&other) noexcept {
270
- hasVal_ = other.hasVal_;
271
- val_ = std::forward<T>(other.val_);
272
- other.hasVal_ = false;
273
- return *this;
274
- }
275
-
276
- inline T *operator->() { return &val_; }
277
- inline T &operator*() { return val_; }
278
-
279
- //! @endcond
280
-
281
- /** Returns a pointer to the contained value. */
282
- inline const T *operator->() const { return &val_; }
283
-
284
- /** Returns a reference to the contained value. */
285
- inline const T &operator*() const { return val_; }
286
-
287
- /** Return whether the optional has a value */
288
- inline explicit operator bool() const noexcept { return hasVal_; }
289
-
290
- /** Return whether the optional has a value */
291
- inline bool has_value() const noexcept { return hasVal_; }
292
-
293
- private:
294
- bool hasVal_;
295
- T val_{};
296
- };
297
-
298
- // ---------------------------------------------------------------------------
299
-
300
- class BaseObject;
301
- /** Shared pointer of BaseObject. */
302
- using BaseObjectPtr = std::shared_ptr<BaseObject>;
303
- #if 1
304
- /** Non-null shared pointer of BaseObject. */
305
- struct BaseObjectNNPtr : public util::nn<BaseObjectPtr> {
306
- // This trick enables to avoid inlining of the destructor.
307
- // This is mostly an alias of the base class.
308
- //! @cond Doxygen_Suppress
309
- template <class T>
310
- // cppcheck-suppress noExplicitConstructor
311
- BaseObjectNNPtr(const util::nn<std::shared_ptr<T>> &x)
312
- : util::nn<BaseObjectPtr>(x) {}
313
-
314
- template <class T>
315
- // cppcheck-suppress noExplicitConstructor
316
- BaseObjectNNPtr(util::nn<std::shared_ptr<T>> &&x) noexcept
317
- : util::nn<BaseObjectPtr>(NN_NO_CHECK(std::move(x.as_nullable()))) {}
318
-
319
- explicit BaseObjectNNPtr(::dropbox::oxygen::i_promise_i_checked_for_null_t,
320
- BaseObjectPtr &&arg) noexcept
321
- : util::nn<BaseObjectPtr>(i_promise_i_checked_for_null,
322
- std::move(arg)) {}
323
- BaseObjectNNPtr(const BaseObjectNNPtr &) = default;
324
- BaseObjectNNPtr &operator=(const BaseObjectNNPtr &) = default;
325
-
326
- PROJ_DLL ~BaseObjectNNPtr();
327
- //! @endcond
328
- };
329
- #else
330
- using BaseObjectNNPtr = util::nn<BaseObjectPtr>;
331
- #endif
332
-
333
- /** \brief Class that can be derived from, to emulate Java's Object behavior.
334
- */
335
- class PROJ_GCC_DLL BaseObject {
336
- public:
337
- //! @cond Doxygen_Suppress
338
- virtual PROJ_DLL ~BaseObject();
339
- //! @endcond
340
-
341
- PROJ_PRIVATE :
342
- //! @cond Doxygen_Suppress
343
- PROJ_INTERNAL BaseObjectNNPtr
344
- shared_from_this() const;
345
- //! @endcond
346
-
347
- protected:
348
- PROJ_INTERNAL BaseObject();
349
- PROJ_INTERNAL void assignSelf(const BaseObjectNNPtr &self);
350
- PROJ_INTERNAL BaseObject &operator=(BaseObject &&other);
351
-
352
- private:
353
- PROJ_OPAQUE_PRIVATE_DATA
354
- };
355
-
356
- // ---------------------------------------------------------------------------
357
-
358
- /** \brief Interface for an object that can be compared to another.
359
- */
360
- class PROJ_GCC_DLL IComparable {
361
- public:
362
- //! @cond Doxygen_Suppress
363
- PROJ_DLL virtual ~IComparable();
364
- //! @endcond
365
-
366
- /** \brief Comparison criterion. */
367
- enum class PROJ_MSVC_DLL Criterion {
368
- /** All properties are identical. */
369
- STRICT,
370
-
371
- /** The objects are equivalent for the purpose of coordinate
372
- * operations. They can differ by the name of their objects,
373
- * identifiers, other metadata.
374
- * Parameters may be expressed in different units, provided that the
375
- * value is (with some tolerance) the same once expressed in a
376
- * common unit.
377
- */
378
- EQUIVALENT,
379
-
380
- /** Same as EQUIVALENT, relaxed with an exception that the axis order
381
- * of the base CRS of a DerivedCRS/ProjectedCRS or the axis order of
382
- * a GeographicCRS is ignored. Only to be used
383
- * with DerivedCRS/ProjectedCRS/GeographicCRS */
384
- EQUIVALENT_EXCEPT_AXIS_ORDER_GEOGCRS,
385
- };
386
-
387
- PROJ_DLL bool
388
- isEquivalentTo(const IComparable *other,
389
- Criterion criterion = Criterion::STRICT,
390
- const io::DatabaseContextPtr &dbContext = nullptr) const;
391
-
392
- PROJ_PRIVATE :
393
-
394
- //! @cond Doxygen_Suppress
395
- PROJ_INTERNAL virtual bool
396
- _isEquivalentTo(
397
- const IComparable *other, Criterion criterion = Criterion::STRICT,
398
- const io::DatabaseContextPtr &dbContext = nullptr) const = 0;
399
- //! @endcond
400
- };
401
-
402
- // ---------------------------------------------------------------------------
403
-
404
- /** \brief Encapsulate standard datatypes in an object.
405
- */
406
- class BoxedValue final : public BaseObject {
407
- public:
408
- //! @cond Doxygen_Suppress
409
- /** Type of data stored in the BoxedValue. */
410
- enum class Type {
411
- /** a std::string */
412
- STRING,
413
- /** an integer */
414
- INTEGER,
415
- /** a boolean */
416
- BOOLEAN
417
- };
418
- //! @endcond
419
-
420
- // cppcheck-suppress noExplicitConstructor
421
- PROJ_DLL BoxedValue(const char *stringValueIn); // needed to avoid the bool
422
- // constructor to be taken !
423
- // cppcheck-suppress noExplicitConstructor
424
- PROJ_DLL BoxedValue(const std::string &stringValueIn);
425
- // cppcheck-suppress noExplicitConstructor
426
- PROJ_DLL BoxedValue(int integerValueIn);
427
- // cppcheck-suppress noExplicitConstructor
428
- PROJ_DLL BoxedValue(bool booleanValueIn);
429
-
430
- PROJ_PRIVATE :
431
- //! @cond Doxygen_Suppress
432
- PROJ_INTERNAL
433
- BoxedValue(const BoxedValue &other);
434
-
435
- PROJ_DLL ~BoxedValue() override;
436
-
437
- PROJ_INTERNAL const Type &type() const;
438
- PROJ_INTERNAL const std::string &stringValue() const;
439
- PROJ_INTERNAL int integerValue() const;
440
- PROJ_INTERNAL bool booleanValue() const;
441
- //! @endcond
442
-
443
- private:
444
- PROJ_OPAQUE_PRIVATE_DATA
445
- BoxedValue &operator=(const BoxedValue &) = delete;
446
-
447
- PROJ_INTERNAL BoxedValue();
448
- };
449
-
450
- /** Shared pointer of BoxedValue. */
451
- using BoxedValuePtr = std::shared_ptr<BoxedValue>;
452
- /** Non-null shared pointer of BoxedValue. */
453
- using BoxedValueNNPtr = util::nn<BoxedValuePtr>;
454
-
455
- // ---------------------------------------------------------------------------
456
-
457
- class ArrayOfBaseObject;
458
- /** Shared pointer of ArrayOfBaseObject. */
459
- using ArrayOfBaseObjectPtr = std::shared_ptr<ArrayOfBaseObject>;
460
- /** Non-null shared pointer of ArrayOfBaseObject. */
461
- using ArrayOfBaseObjectNNPtr = util::nn<ArrayOfBaseObjectPtr>;
462
-
463
- /** \brief Array of BaseObject.
464
- */
465
- class ArrayOfBaseObject final : public BaseObject {
466
- public:
467
- //! @cond Doxygen_Suppress
468
- PROJ_DLL ~ArrayOfBaseObject() override;
469
- //! @endcond
470
-
471
- PROJ_DLL void add(const BaseObjectNNPtr &obj);
472
-
473
- PROJ_DLL static ArrayOfBaseObjectNNPtr create();
474
-
475
- PROJ_PRIVATE :
476
- //! @cond Doxygen_Suppress
477
- std::vector<BaseObjectNNPtr>::const_iterator
478
- begin() const;
479
- std::vector<BaseObjectNNPtr>::const_iterator end() const;
480
- bool empty() const;
481
- //! @endcond
482
-
483
- protected:
484
- ArrayOfBaseObject();
485
- INLINED_MAKE_SHARED
486
-
487
- private:
488
- ArrayOfBaseObject(const ArrayOfBaseObject &other) = delete;
489
- ArrayOfBaseObject &operator=(const ArrayOfBaseObject &other) = delete;
490
- PROJ_OPAQUE_PRIVATE_DATA
491
- };
492
-
493
- // ---------------------------------------------------------------------------
494
-
495
- /** \brief Wrapper of a std::map<std::string, BaseObjectNNPtr> */
496
- class PropertyMap {
497
- public:
498
- PROJ_DLL PropertyMap();
499
- //! @cond Doxygen_Suppress
500
- PROJ_DLL PropertyMap(const PropertyMap &other);
501
- PROJ_DLL ~PropertyMap();
502
- //! @endcond
503
-
504
- PROJ_DLL PropertyMap &set(const std::string &key,
505
- const BaseObjectNNPtr &val);
506
-
507
- //! @cond Doxygen_Suppress
508
- template <class T>
509
- inline PropertyMap &set(const std::string &key,
510
- const nn_shared_ptr<T> &val) {
511
- return set(
512
- key, BaseObjectNNPtr(i_promise_i_checked_for_null,
513
- BaseObjectPtr(val.as_nullable(), val.get())));
514
- }
515
- //! @endcond
516
-
517
- // needed to avoid the bool constructor to be taken !
518
- PROJ_DLL PropertyMap &set(const std::string &key, const char *val);
519
-
520
- PROJ_DLL PropertyMap &set(const std::string &key, const std::string &val);
521
-
522
- PROJ_DLL PropertyMap &set(const std::string &key, int val);
523
-
524
- PROJ_DLL PropertyMap &set(const std::string &key, bool val);
525
-
526
- PROJ_DLL PropertyMap &set(const std::string &key,
527
- const std::vector<std::string> &array);
528
-
529
- PROJ_PRIVATE :
530
- //! @cond Doxygen_Suppress
531
- const BaseObjectNNPtr *
532
- get(const std::string &key) const;
533
-
534
- // throw(InvalidValueTypeException)
535
- bool getStringValue(const std::string &key, std::string &outVal) const;
536
- bool getStringValue(const std::string &key,
537
- optional<std::string> &outVal) const;
538
- void unset(const std::string &key);
539
-
540
- static PropertyMap createAndSetName(const char *name);
541
- static PropertyMap createAndSetName(const std::string &name);
542
- //! @endcond
543
-
544
- private:
545
- PropertyMap &operator=(const PropertyMap &) = delete;
546
-
547
- PROJ_OPAQUE_PRIVATE_DATA
548
- };
549
-
550
- // ---------------------------------------------------------------------------
551
-
552
- class LocalName;
553
- /** Shared pointer of LocalName. */
554
- using LocalNamePtr = std::shared_ptr<LocalName>;
555
- /** Non-null shared pointer of LocalName. */
556
- using LocalNameNNPtr = util::nn<LocalNamePtr>;
557
-
558
- class NameSpace;
559
- /** Shared pointer of NameSpace. */
560
- using NameSpacePtr = std::shared_ptr<NameSpace>;
561
- /** Non-null shared pointer of NameSpace. */
562
- using NameSpaceNNPtr = util::nn<NameSpacePtr>;
563
-
564
- class GenericName;
565
- /** Shared pointer of GenericName. */
566
- using GenericNamePtr = std::shared_ptr<GenericName>;
567
- /** Non-null shared pointer of GenericName. */
568
- using GenericNameNNPtr = util::nn<GenericNamePtr>;
569
-
570
- // ---------------------------------------------------------------------------
571
-
572
- /** \brief A sequence of identifiers rooted within the context of a namespace.
573
- *
574
- * \remark Simplified version of [GenericName]
575
- * (http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/GenericName.html)
576
- * from \ref GeoAPI
577
- */
578
- class GenericName : public BaseObject {
579
- public:
580
- //! @cond Doxygen_Suppress
581
- PROJ_DLL virtual ~GenericName() override;
582
- //! @endcond
583
-
584
- /** \brief Return the scope of the object, possibly a global one. */
585
- PROJ_DLL virtual const NameSpacePtr scope() const = 0;
586
-
587
- /** \brief Return the LocalName as a string. */
588
- PROJ_DLL virtual std::string toString() const = 0;
589
-
590
- /** \brief Return a fully qualified name corresponding to the local name.
591
- *
592
- * The namespace of the resulting name is a global one.
593
- */
594
- PROJ_DLL virtual GenericNameNNPtr toFullyQualifiedName() const = 0;
595
-
596
- protected:
597
- GenericName();
598
- GenericName(const GenericName &other);
599
-
600
- private:
601
- PROJ_OPAQUE_PRIVATE_DATA
602
- GenericName &operator=(const GenericName &other) = delete;
603
- };
604
-
605
- // ---------------------------------------------------------------------------
606
-
607
- /** \brief A domain in which names given by strings are defined.
608
- *
609
- * \remark Simplified version of [NameSpace]
610
- * (http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html)
611
- * from \ref GeoAPI
612
- */
613
- class NameSpace {
614
- public:
615
- //! @cond Doxygen_Suppress
616
- PROJ_DLL ~NameSpace();
617
- //! @endcond
618
-
619
- PROJ_DLL bool isGlobal() const;
620
- PROJ_DLL const GenericNamePtr &name() const;
621
-
622
- protected:
623
- PROJ_FRIEND(NameFactory);
624
- PROJ_FRIEND(LocalName);
625
- explicit NameSpace(const GenericNamePtr &name);
626
- NameSpace(const NameSpace &other);
627
- NameSpaceNNPtr getGlobalFromThis() const;
628
- const std::string &separator() const;
629
- static const NameSpaceNNPtr GLOBAL;
630
- INLINED_MAKE_SHARED
631
-
632
- private:
633
- PROJ_OPAQUE_PRIVATE_DATA
634
- NameSpace &operator=(const NameSpace &other) = delete;
635
-
636
- static NameSpaceNNPtr createGLOBAL();
637
- };
638
-
639
- // ---------------------------------------------------------------------------
640
-
641
- /** \brief Identifier within a NameSpace for a local object.
642
- *
643
- * Local names are names which are directly accessible to and maintained by a
644
- * NameSpace within which they are local, indicated by the scope.
645
- *
646
- * \remark Simplified version of [LocalName]
647
- * (http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/LocalName.html)
648
- * from \ref GeoAPI
649
- */
650
- class LocalName : public GenericName {
651
- public:
652
- //! @cond Doxygen_Suppress
653
- PROJ_DLL ~LocalName() override;
654
- //! @endcond
655
-
656
- PROJ_DLL const NameSpacePtr scope() const override;
657
- PROJ_DLL std::string toString() const override;
658
- PROJ_DLL GenericNameNNPtr toFullyQualifiedName() const override;
659
-
660
- protected:
661
- PROJ_FRIEND(NameFactory);
662
- PROJ_FRIEND(NameSpace);
663
- explicit LocalName(const std::string &nameIn);
664
- LocalName(const LocalName &other);
665
- LocalName(const NameSpacePtr &ns, const std::string &name);
666
- INLINED_MAKE_SHARED
667
-
668
- private:
669
- PROJ_OPAQUE_PRIVATE_DATA
670
- LocalName &operator=(const LocalName &other) = delete;
671
- };
672
-
673
- // ---------------------------------------------------------------------------
674
-
675
- /** \brief Factory for generic names.
676
- *
677
- * \remark Simplified version of [NameFactory]
678
- * (http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameFactory.html)
679
- * from \ref GeoAPI
680
- */
681
- class NameFactory {
682
- public:
683
- PROJ_DLL static NameSpaceNNPtr
684
- createNameSpace(const GenericNameNNPtr &name,
685
- const PropertyMap &properties);
686
- PROJ_DLL static LocalNameNNPtr createLocalName(const NameSpacePtr &scope,
687
- const std::string &name);
688
- PROJ_DLL static GenericNameNNPtr
689
- createGenericName(const NameSpacePtr &scope,
690
- const std::vector<std::string> &parsedNames);
691
- };
692
-
693
- // ---------------------------------------------------------------------------
694
-
695
- /** \brief Abstract class to define an enumeration of values.
696
- */
697
- class CodeList {
698
- public:
699
- //! @cond Doxygen_Suppress
700
- PROJ_DLL ~CodeList();
701
- //! @endcond
702
-
703
- /** Return the CodeList item as a string. */
704
- // cppcheck-suppress functionStatic
705
- inline const std::string &toString() PROJ_PURE_DECL { return name_; }
706
-
707
- /** Return the CodeList item as a string. */
708
- inline operator std::string() PROJ_PURE_DECL { return toString(); }
709
-
710
- //! @cond Doxygen_Suppress
711
- inline bool operator==(const CodeList &other) PROJ_PURE_DECL {
712
- return name_ == other.name_;
713
- }
714
- inline bool operator!=(const CodeList &other) PROJ_PURE_DECL {
715
- return name_ != other.name_;
716
- }
717
- //! @endcond
718
- protected:
719
- explicit CodeList(const std::string &nameIn) : name_(nameIn) {}
720
- CodeList(const CodeList &) = default;
721
- CodeList &operator=(const CodeList &other);
722
-
723
- private:
724
- std::string name_{};
725
- };
726
-
727
- // ---------------------------------------------------------------------------
728
-
729
- /** \brief Root exception class.
730
- */
731
- class PROJ_GCC_DLL Exception : public std::exception {
732
- std::string msg_;
733
-
734
- public:
735
- //! @cond Doxygen_Suppress
736
- PROJ_INTERNAL explicit Exception(const char *message);
737
- PROJ_INTERNAL explicit Exception(const std::string &message);
738
- PROJ_DLL Exception(const Exception &other);
739
- PROJ_DLL ~Exception() override;
740
- //! @endcond
741
- PROJ_DLL virtual const char *what() const noexcept override;
742
- };
743
-
744
- // ---------------------------------------------------------------------------
745
-
746
- /** \brief Exception thrown when an invalid value type is set as the value of
747
- * a key of a PropertyMap.
748
- */
749
- class PROJ_GCC_DLL InvalidValueTypeException : public Exception {
750
- public:
751
- //! @cond Doxygen_Suppress
752
- PROJ_INTERNAL explicit InvalidValueTypeException(const char *message);
753
- PROJ_INTERNAL explicit InvalidValueTypeException(
754
- const std::string &message);
755
- PROJ_DLL InvalidValueTypeException(const InvalidValueTypeException &other);
756
- PROJ_DLL ~InvalidValueTypeException() override;
757
- //! @endcond
758
- };
759
-
760
- // ---------------------------------------------------------------------------
761
-
762
- /** \brief Exception Thrown to indicate that the requested operation is not
763
- * supported.
764
- */
765
- class PROJ_GCC_DLL UnsupportedOperationException : public Exception {
766
- public:
767
- //! @cond Doxygen_Suppress
768
- PROJ_INTERNAL explicit UnsupportedOperationException(const char *message);
769
- PROJ_INTERNAL explicit UnsupportedOperationException(
770
- const std::string &message);
771
- PROJ_DLL
772
- UnsupportedOperationException(const UnsupportedOperationException &other);
773
- PROJ_DLL ~UnsupportedOperationException() override;
774
- //! @endcond
775
- };
776
-
777
- } // namespace util
778
-
779
- NS_PROJ_END
780
-
781
- #endif // UTIL_HH_INCLUDED