react-native-nitro-ar 2026.2.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 (261) hide show
  1. package/README.md +347 -0
  2. package/app.plugin.js +24 -0
  3. package/ios/Bridge.h +8 -0
  4. package/ios/HybridARAnchor.swift +58 -0
  5. package/ios/HybridARBoundingBoxBuilder.swift +142 -0
  6. package/ios/HybridARDepthData.swift +138 -0
  7. package/ios/HybridARFrame.swift +121 -0
  8. package/ios/HybridARLightEstimate.swift +58 -0
  9. package/ios/HybridARMeasurement.swift +33 -0
  10. package/ios/HybridARMeshAnchor.swift +108 -0
  11. package/ios/HybridARPlaneAnchor.swift +114 -0
  12. package/ios/HybridARRaycastResult.swift +53 -0
  13. package/ios/HybridARSession.swift +505 -0
  14. package/ios/HybridARView.swift +725 -0
  15. package/ios/HybridARVolume.swift +52 -0
  16. package/ios/HybridARWorldMap.swift +55 -0
  17. package/lib/commonjs/index.js +24 -0
  18. package/lib/commonjs/index.js.map +1 -0
  19. package/lib/commonjs/package.json +3 -0
  20. package/lib/commonjs/specs/ARAnchor.nitro.js +6 -0
  21. package/lib/commonjs/specs/ARAnchor.nitro.js.map +1 -0
  22. package/lib/commonjs/specs/ARBoundingBoxBuilder.nitro.js +6 -0
  23. package/lib/commonjs/specs/ARBoundingBoxBuilder.nitro.js.map +1 -0
  24. package/lib/commonjs/specs/ARDepthData.nitro.js +6 -0
  25. package/lib/commonjs/specs/ARDepthData.nitro.js.map +1 -0
  26. package/lib/commonjs/specs/ARFrame.nitro.js +6 -0
  27. package/lib/commonjs/specs/ARFrame.nitro.js.map +1 -0
  28. package/lib/commonjs/specs/ARLightEstimate.nitro.js +6 -0
  29. package/lib/commonjs/specs/ARLightEstimate.nitro.js.map +1 -0
  30. package/lib/commonjs/specs/ARMeasurement.nitro.js +6 -0
  31. package/lib/commonjs/specs/ARMeasurement.nitro.js.map +1 -0
  32. package/lib/commonjs/specs/ARPlaneAnchor.nitro.js +6 -0
  33. package/lib/commonjs/specs/ARPlaneAnchor.nitro.js.map +1 -0
  34. package/lib/commonjs/specs/ARRaycastResult.nitro.js +6 -0
  35. package/lib/commonjs/specs/ARRaycastResult.nitro.js.map +1 -0
  36. package/lib/commonjs/specs/ARSceneMesh.nitro.js +6 -0
  37. package/lib/commonjs/specs/ARSceneMesh.nitro.js.map +1 -0
  38. package/lib/commonjs/specs/ARSession.nitro.js +6 -0
  39. package/lib/commonjs/specs/ARSession.nitro.js.map +1 -0
  40. package/lib/commonjs/specs/ARView.nitro.js +6 -0
  41. package/lib/commonjs/specs/ARView.nitro.js.map +1 -0
  42. package/lib/commonjs/specs/ARVolume.nitro.js +6 -0
  43. package/lib/commonjs/specs/ARVolume.nitro.js.map +1 -0
  44. package/lib/commonjs/specs/ARWorldMap.nitro.js +6 -0
  45. package/lib/commonjs/specs/ARWorldMap.nitro.js.map +1 -0
  46. package/lib/module/index.js +18 -0
  47. package/lib/module/index.js.map +1 -0
  48. package/lib/module/specs/ARAnchor.nitro.js +4 -0
  49. package/lib/module/specs/ARAnchor.nitro.js.map +1 -0
  50. package/lib/module/specs/ARBoundingBoxBuilder.nitro.js +4 -0
  51. package/lib/module/specs/ARBoundingBoxBuilder.nitro.js.map +1 -0
  52. package/lib/module/specs/ARDepthData.nitro.js +4 -0
  53. package/lib/module/specs/ARDepthData.nitro.js.map +1 -0
  54. package/lib/module/specs/ARFrame.nitro.js +4 -0
  55. package/lib/module/specs/ARFrame.nitro.js.map +1 -0
  56. package/lib/module/specs/ARLightEstimate.nitro.js +4 -0
  57. package/lib/module/specs/ARLightEstimate.nitro.js.map +1 -0
  58. package/lib/module/specs/ARMeasurement.nitro.js +4 -0
  59. package/lib/module/specs/ARMeasurement.nitro.js.map +1 -0
  60. package/lib/module/specs/ARPlaneAnchor.nitro.js +4 -0
  61. package/lib/module/specs/ARPlaneAnchor.nitro.js.map +1 -0
  62. package/lib/module/specs/ARRaycastResult.nitro.js +4 -0
  63. package/lib/module/specs/ARRaycastResult.nitro.js.map +1 -0
  64. package/lib/module/specs/ARSceneMesh.nitro.js +4 -0
  65. package/lib/module/specs/ARSceneMesh.nitro.js.map +1 -0
  66. package/lib/module/specs/ARSession.nitro.js +4 -0
  67. package/lib/module/specs/ARSession.nitro.js.map +1 -0
  68. package/lib/module/specs/ARView.nitro.js +4 -0
  69. package/lib/module/specs/ARView.nitro.js.map +1 -0
  70. package/lib/module/specs/ARVolume.nitro.js +4 -0
  71. package/lib/module/specs/ARVolume.nitro.js.map +1 -0
  72. package/lib/module/specs/ARWorldMap.nitro.js +4 -0
  73. package/lib/module/specs/ARWorldMap.nitro.js.map +1 -0
  74. package/lib/typescript/src/index.d.ts +20 -0
  75. package/lib/typescript/src/index.d.ts.map +1 -0
  76. package/lib/typescript/src/specs/ARAnchor.nitro.d.ts +18 -0
  77. package/lib/typescript/src/specs/ARAnchor.nitro.d.ts.map +1 -0
  78. package/lib/typescript/src/specs/ARBoundingBoxBuilder.nitro.d.ts +11 -0
  79. package/lib/typescript/src/specs/ARBoundingBoxBuilder.nitro.d.ts.map +1 -0
  80. package/lib/typescript/src/specs/ARDepthData.nitro.d.ts +26 -0
  81. package/lib/typescript/src/specs/ARDepthData.nitro.d.ts.map +1 -0
  82. package/lib/typescript/src/specs/ARFrame.nitro.d.ts +32 -0
  83. package/lib/typescript/src/specs/ARFrame.nitro.d.ts.map +1 -0
  84. package/lib/typescript/src/specs/ARLightEstimate.nitro.d.ts +18 -0
  85. package/lib/typescript/src/specs/ARLightEstimate.nitro.d.ts.map +1 -0
  86. package/lib/typescript/src/specs/ARMeasurement.nitro.d.ts +11 -0
  87. package/lib/typescript/src/specs/ARMeasurement.nitro.d.ts.map +1 -0
  88. package/lib/typescript/src/specs/ARPlaneAnchor.nitro.d.ts +32 -0
  89. package/lib/typescript/src/specs/ARPlaneAnchor.nitro.d.ts.map +1 -0
  90. package/lib/typescript/src/specs/ARRaycastResult.nitro.d.ts +26 -0
  91. package/lib/typescript/src/specs/ARRaycastResult.nitro.d.ts.map +1 -0
  92. package/lib/typescript/src/specs/ARSceneMesh.nitro.d.ts +47 -0
  93. package/lib/typescript/src/specs/ARSceneMesh.nitro.d.ts.map +1 -0
  94. package/lib/typescript/src/specs/ARSession.nitro.d.ts +75 -0
  95. package/lib/typescript/src/specs/ARSession.nitro.d.ts.map +1 -0
  96. package/lib/typescript/src/specs/ARView.nitro.d.ts +51 -0
  97. package/lib/typescript/src/specs/ARView.nitro.d.ts.map +1 -0
  98. package/lib/typescript/src/specs/ARVolume.nitro.d.ts +14 -0
  99. package/lib/typescript/src/specs/ARVolume.nitro.d.ts.map +1 -0
  100. package/lib/typescript/src/specs/ARWorldMap.nitro.d.ts +17 -0
  101. package/lib/typescript/src/specs/ARWorldMap.nitro.d.ts.map +1 -0
  102. package/nitro.json +23 -0
  103. package/nitrogen/generated/.gitattributes +1 -0
  104. package/nitrogen/generated/ios/NitroAR+autolinking.rb +60 -0
  105. package/nitrogen/generated/ios/NitroAR-Swift-Cxx-Bridge.cpp +335 -0
  106. package/nitrogen/generated/ios/NitroAR-Swift-Cxx-Bridge.hpp +934 -0
  107. package/nitrogen/generated/ios/NitroAR-Swift-Cxx-Umbrella.hpp +169 -0
  108. package/nitrogen/generated/ios/NitroARAutolinking.mm +49 -0
  109. package/nitrogen/generated/ios/NitroARAutolinking.swift +50 -0
  110. package/nitrogen/generated/ios/c++/HybridARAnchorSpecSwift.cpp +11 -0
  111. package/nitrogen/generated/ios/c++/HybridARAnchorSpecSwift.hpp +99 -0
  112. package/nitrogen/generated/ios/c++/HybridARBoundingBoxBuilderSpecSwift.cpp +11 -0
  113. package/nitrogen/generated/ios/c++/HybridARBoundingBoxBuilderSpecSwift.hpp +95 -0
  114. package/nitrogen/generated/ios/c++/HybridARDepthDataSpecSwift.cpp +11 -0
  115. package/nitrogen/generated/ios/c++/HybridARDepthDataSpecSwift.hpp +103 -0
  116. package/nitrogen/generated/ios/c++/HybridARDirectionalLightEstimateSpecSwift.cpp +11 -0
  117. package/nitrogen/generated/ios/c++/HybridARDirectionalLightEstimateSpecSwift.hpp +88 -0
  118. package/nitrogen/generated/ios/c++/HybridARFrameSpecSwift.cpp +11 -0
  119. package/nitrogen/generated/ios/c++/HybridARFrameSpecSwift.hpp +135 -0
  120. package/nitrogen/generated/ios/c++/HybridARLightEstimateSpecSwift.cpp +11 -0
  121. package/nitrogen/generated/ios/c++/HybridARLightEstimateSpecSwift.hpp +80 -0
  122. package/nitrogen/generated/ios/c++/HybridARMeasurementSpecSwift.cpp +11 -0
  123. package/nitrogen/generated/ios/c++/HybridARMeasurementSpecSwift.hpp +90 -0
  124. package/nitrogen/generated/ios/c++/HybridARMeshAnchorSpecSwift.cpp +11 -0
  125. package/nitrogen/generated/ios/c++/HybridARMeshAnchorSpecSwift.hpp +107 -0
  126. package/nitrogen/generated/ios/c++/HybridARPlaneAnchorSpecSwift.cpp +11 -0
  127. package/nitrogen/generated/ios/c++/HybridARPlaneAnchorSpecSwift.hpp +116 -0
  128. package/nitrogen/generated/ios/c++/HybridARPlaneGeometrySpecSwift.cpp +11 -0
  129. package/nitrogen/generated/ios/c++/HybridARPlaneGeometrySpecSwift.hpp +90 -0
  130. package/nitrogen/generated/ios/c++/HybridARRaycastResultSpecSwift.cpp +11 -0
  131. package/nitrogen/generated/ios/c++/HybridARRaycastResultSpecSwift.hpp +97 -0
  132. package/nitrogen/generated/ios/c++/HybridARSessionSpecSwift.cpp +11 -0
  133. package/nitrogen/generated/ios/c++/HybridARSessionSpecSwift.hpp +296 -0
  134. package/nitrogen/generated/ios/c++/HybridARViewSpecSwift.cpp +11 -0
  135. package/nitrogen/generated/ios/c++/HybridARViewSpecSwift.hpp +243 -0
  136. package/nitrogen/generated/ios/c++/HybridARVolumeSpecSwift.cpp +11 -0
  137. package/nitrogen/generated/ios/c++/HybridARVolumeSpecSwift.hpp +94 -0
  138. package/nitrogen/generated/ios/c++/HybridARWorldMapSpecSwift.cpp +11 -0
  139. package/nitrogen/generated/ios/c++/HybridARWorldMapSpecSwift.hpp +97 -0
  140. package/nitrogen/generated/ios/c++/views/HybridARViewComponent.mm +152 -0
  141. package/nitrogen/generated/ios/swift/ARSessionConfiguration.swift +189 -0
  142. package/nitrogen/generated/ios/swift/ARViewHitResult.swift +39 -0
  143. package/nitrogen/generated/ios/swift/CameraPose.swift +46 -0
  144. package/nitrogen/generated/ios/swift/EnvironmentTexturing.swift +44 -0
  145. package/nitrogen/generated/ios/swift/Func_void.swift +46 -0
  146. package/nitrogen/generated/ios/swift/Func_void_TrackingState_TrackingStateReason.swift +46 -0
  147. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
  148. package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_HybridARFrameSpec_.swift +50 -0
  149. package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_HybridARWorldMapSpec_.swift +50 -0
  150. package/nitrogen/generated/ios/swift/Func_void_std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__string_.swift +54 -0
  151. package/nitrogen/generated/ios/swift/Func_void_std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__string_.swift +54 -0
  152. package/nitrogen/generated/ios/swift/Func_void_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__string_.swift +54 -0
  153. package/nitrogen/generated/ios/swift/HybridARAnchorSpec.swift +60 -0
  154. package/nitrogen/generated/ios/swift/HybridARAnchorSpec_cxx.swift +192 -0
  155. package/nitrogen/generated/ios/swift/HybridARBoundingBoxBuilderSpec.swift +56 -0
  156. package/nitrogen/generated/ios/swift/HybridARBoundingBoxBuilderSpec_cxx.swift +161 -0
  157. package/nitrogen/generated/ios/swift/HybridARDepthDataSpec.swift +59 -0
  158. package/nitrogen/generated/ios/swift/HybridARDepthDataSpec_cxx.swift +188 -0
  159. package/nitrogen/generated/ios/swift/HybridARDirectionalLightEstimateSpec.swift +57 -0
  160. package/nitrogen/generated/ios/swift/HybridARDirectionalLightEstimateSpec_cxx.swift +162 -0
  161. package/nitrogen/generated/ios/swift/HybridARFrameSpec.swift +65 -0
  162. package/nitrogen/generated/ios/swift/HybridARFrameSpec_cxx.swift +285 -0
  163. package/nitrogen/generated/ios/swift/HybridARLightEstimateSpec.swift +56 -0
  164. package/nitrogen/generated/ios/swift/HybridARLightEstimateSpec_cxx.swift +140 -0
  165. package/nitrogen/generated/ios/swift/HybridARMeasurementSpec.swift +58 -0
  166. package/nitrogen/generated/ios/swift/HybridARMeasurementSpec_cxx.swift +160 -0
  167. package/nitrogen/generated/ios/swift/HybridARMeshAnchorSpec.swift +62 -0
  168. package/nitrogen/generated/ios/swift/HybridARMeshAnchorSpec_cxx.swift +212 -0
  169. package/nitrogen/generated/ios/swift/HybridARPlaneAnchorSpec.swift +62 -0
  170. package/nitrogen/generated/ios/swift/HybridARPlaneAnchorSpec_cxx.swift +209 -0
  171. package/nitrogen/generated/ios/swift/HybridARPlaneGeometrySpec.swift +58 -0
  172. package/nitrogen/generated/ios/swift/HybridARPlaneGeometrySpec_cxx.swift +178 -0
  173. package/nitrogen/generated/ios/swift/HybridARRaycastResultSpec.swift +59 -0
  174. package/nitrogen/generated/ios/swift/HybridARRaycastResultSpec_cxx.swift +179 -0
  175. package/nitrogen/generated/ios/swift/HybridARSessionSpec.swift +78 -0
  176. package/nitrogen/generated/ios/swift/HybridARSessionSpec_cxx.swift +591 -0
  177. package/nitrogen/generated/ios/swift/HybridARViewSpec.swift +78 -0
  178. package/nitrogen/generated/ios/swift/HybridARViewSpec_cxx.swift +561 -0
  179. package/nitrogen/generated/ios/swift/HybridARVolumeSpec.swift +60 -0
  180. package/nitrogen/generated/ios/swift/HybridARVolumeSpec_cxx.swift +180 -0
  181. package/nitrogen/generated/ios/swift/HybridARWorldMapSpec.swift +58 -0
  182. package/nitrogen/generated/ios/swift/HybridARWorldMapSpec_cxx.swift +176 -0
  183. package/nitrogen/generated/ios/swift/LiDARCapabilities.swift +39 -0
  184. package/nitrogen/generated/ios/swift/MeshClassification.swift +64 -0
  185. package/nitrogen/generated/ios/swift/PlaneAlignment.swift +40 -0
  186. package/nitrogen/generated/ios/swift/PlaneClassification.swift +64 -0
  187. package/nitrogen/generated/ios/swift/PlaneDetectionMode.swift +40 -0
  188. package/nitrogen/generated/ios/swift/RaycastAlignment.swift +44 -0
  189. package/nitrogen/generated/ios/swift/RaycastQuery.swift +44 -0
  190. package/nitrogen/generated/ios/swift/RaycastTarget.swift +48 -0
  191. package/nitrogen/generated/ios/swift/SceneReconstructionMode.swift +44 -0
  192. package/nitrogen/generated/ios/swift/TrackingState.swift +44 -0
  193. package/nitrogen/generated/ios/swift/TrackingStateReason.swift +52 -0
  194. package/nitrogen/generated/ios/swift/WorldAlignment.swift +44 -0
  195. package/nitrogen/generated/ios/swift/WorldMappingStatus.swift +48 -0
  196. package/nitrogen/generated/shared/c++/ARSessionConfiguration.hpp +132 -0
  197. package/nitrogen/generated/shared/c++/ARViewHitResult.hpp +91 -0
  198. package/nitrogen/generated/shared/c++/CameraPose.hpp +87 -0
  199. package/nitrogen/generated/shared/c++/EnvironmentTexturing.hpp +80 -0
  200. package/nitrogen/generated/shared/c++/HybridARAnchorSpec.cpp +26 -0
  201. package/nitrogen/generated/shared/c++/HybridARAnchorSpec.hpp +69 -0
  202. package/nitrogen/generated/shared/c++/HybridARBoundingBoxBuilderSpec.cpp +23 -0
  203. package/nitrogen/generated/shared/c++/HybridARBoundingBoxBuilderSpec.hpp +68 -0
  204. package/nitrogen/generated/shared/c++/HybridARDepthDataSpec.cpp +26 -0
  205. package/nitrogen/generated/shared/c++/HybridARDepthDataSpec.hpp +66 -0
  206. package/nitrogen/generated/shared/c++/HybridARDirectionalLightEstimateSpec.cpp +24 -0
  207. package/nitrogen/generated/shared/c++/HybridARDirectionalLightEstimateSpec.hpp +67 -0
  208. package/nitrogen/generated/shared/c++/HybridARFrameSpec.cpp +32 -0
  209. package/nitrogen/generated/shared/c++/HybridARFrameSpec.hpp +83 -0
  210. package/nitrogen/generated/shared/c++/HybridARLightEstimateSpec.cpp +22 -0
  211. package/nitrogen/generated/shared/c++/HybridARLightEstimateSpec.hpp +63 -0
  212. package/nitrogen/generated/shared/c++/HybridARMeasurementSpec.cpp +24 -0
  213. package/nitrogen/generated/shared/c++/HybridARMeasurementSpec.hpp +67 -0
  214. package/nitrogen/generated/shared/c++/HybridARMeshAnchorSpec.cpp +28 -0
  215. package/nitrogen/generated/shared/c++/HybridARMeshAnchorSpec.hpp +72 -0
  216. package/nitrogen/generated/shared/c++/HybridARPlaneAnchorSpec.cpp +28 -0
  217. package/nitrogen/generated/shared/c++/HybridARPlaneAnchorSpec.hpp +79 -0
  218. package/nitrogen/generated/shared/c++/HybridARPlaneGeometrySpec.cpp +24 -0
  219. package/nitrogen/generated/shared/c++/HybridARPlaneGeometrySpec.hpp +65 -0
  220. package/nitrogen/generated/shared/c++/HybridARRaycastResultSpec.cpp +25 -0
  221. package/nitrogen/generated/shared/c++/HybridARRaycastResultSpec.hpp +70 -0
  222. package/nitrogen/generated/shared/c++/HybridARSessionSpec.cpp +45 -0
  223. package/nitrogen/generated/shared/c++/HybridARSessionSpec.hpp +131 -0
  224. package/nitrogen/generated/shared/c++/HybridARViewSpec.cpp +55 -0
  225. package/nitrogen/generated/shared/c++/HybridARViewSpec.hpp +101 -0
  226. package/nitrogen/generated/shared/c++/HybridARVolumeSpec.cpp +26 -0
  227. package/nitrogen/generated/shared/c++/HybridARVolumeSpec.hpp +67 -0
  228. package/nitrogen/generated/shared/c++/HybridARWorldMapSpec.cpp +25 -0
  229. package/nitrogen/generated/shared/c++/HybridARWorldMapSpec.hpp +66 -0
  230. package/nitrogen/generated/shared/c++/LiDARCapabilities.hpp +91 -0
  231. package/nitrogen/generated/shared/c++/MeshClassification.hpp +100 -0
  232. package/nitrogen/generated/shared/c++/PlaneAlignment.hpp +76 -0
  233. package/nitrogen/generated/shared/c++/PlaneClassification.hpp +100 -0
  234. package/nitrogen/generated/shared/c++/PlaneDetectionMode.hpp +76 -0
  235. package/nitrogen/generated/shared/c++/RaycastAlignment.hpp +80 -0
  236. package/nitrogen/generated/shared/c++/RaycastQuery.hpp +99 -0
  237. package/nitrogen/generated/shared/c++/RaycastTarget.hpp +84 -0
  238. package/nitrogen/generated/shared/c++/SceneReconstructionMode.hpp +80 -0
  239. package/nitrogen/generated/shared/c++/TrackingState.hpp +80 -0
  240. package/nitrogen/generated/shared/c++/TrackingStateReason.hpp +88 -0
  241. package/nitrogen/generated/shared/c++/WorldAlignment.hpp +80 -0
  242. package/nitrogen/generated/shared/c++/WorldMappingStatus.hpp +84 -0
  243. package/nitrogen/generated/shared/c++/views/HybridARViewComponent.cpp +182 -0
  244. package/nitrogen/generated/shared/c++/views/HybridARViewComponent.hpp +120 -0
  245. package/nitrogen/generated/shared/json/ARViewConfig.json +19 -0
  246. package/package.json +98 -0
  247. package/react-native-nitro-ar.podspec +40 -0
  248. package/src/index.ts +60 -0
  249. package/src/specs/ARAnchor.nitro.ts +21 -0
  250. package/src/specs/ARBoundingBoxBuilder.nitro.ts +11 -0
  251. package/src/specs/ARDepthData.nitro.ts +29 -0
  252. package/src/specs/ARFrame.nitro.ts +41 -0
  253. package/src/specs/ARLightEstimate.nitro.ts +20 -0
  254. package/src/specs/ARMeasurement.nitro.ts +10 -0
  255. package/src/specs/ARPlaneAnchor.nitro.ts +46 -0
  256. package/src/specs/ARRaycastResult.nitro.ts +32 -0
  257. package/src/specs/ARSceneMesh.nitro.ts +63 -0
  258. package/src/specs/ARSession.nitro.ts +112 -0
  259. package/src/specs/ARView.nitro.ts +84 -0
  260. package/src/specs/ARVolume.nitro.ts +15 -0
  261. package/src/specs/ARWorldMap.nitro.ts +20 -0
@@ -0,0 +1,934 @@
1
+ ///
2
+ /// NitroAR-Swift-Cxx-Bridge.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ // Forward declarations of C++ defined types
11
+ // Forward declaration of `ARSessionConfiguration` to properly resolve imports.
12
+ namespace margelo::nitro::ar { struct ARSessionConfiguration; }
13
+ // Forward declaration of `ARViewHitResult` to properly resolve imports.
14
+ namespace margelo::nitro::ar { struct ARViewHitResult; }
15
+ // Forward declaration of `CameraPose` to properly resolve imports.
16
+ namespace margelo::nitro::ar { struct CameraPose; }
17
+ // Forward declaration of `EnvironmentTexturing` to properly resolve imports.
18
+ namespace margelo::nitro::ar { enum class EnvironmentTexturing; }
19
+ // Forward declaration of `HybridARAnchorSpec` to properly resolve imports.
20
+ namespace margelo::nitro::ar { class HybridARAnchorSpec; }
21
+ // Forward declaration of `HybridARBoundingBoxBuilderSpec` to properly resolve imports.
22
+ namespace margelo::nitro::ar { class HybridARBoundingBoxBuilderSpec; }
23
+ // Forward declaration of `HybridARDepthDataSpec` to properly resolve imports.
24
+ namespace margelo::nitro::ar { class HybridARDepthDataSpec; }
25
+ // Forward declaration of `HybridARDirectionalLightEstimateSpec` to properly resolve imports.
26
+ namespace margelo::nitro::ar { class HybridARDirectionalLightEstimateSpec; }
27
+ // Forward declaration of `HybridARFrameSpec` to properly resolve imports.
28
+ namespace margelo::nitro::ar { class HybridARFrameSpec; }
29
+ // Forward declaration of `HybridARLightEstimateSpec` to properly resolve imports.
30
+ namespace margelo::nitro::ar { class HybridARLightEstimateSpec; }
31
+ // Forward declaration of `HybridARMeasurementSpec` to properly resolve imports.
32
+ namespace margelo::nitro::ar { class HybridARMeasurementSpec; }
33
+ // Forward declaration of `HybridARMeshAnchorSpec` to properly resolve imports.
34
+ namespace margelo::nitro::ar { class HybridARMeshAnchorSpec; }
35
+ // Forward declaration of `HybridARPlaneAnchorSpec` to properly resolve imports.
36
+ namespace margelo::nitro::ar { class HybridARPlaneAnchorSpec; }
37
+ // Forward declaration of `HybridARPlaneGeometrySpec` to properly resolve imports.
38
+ namespace margelo::nitro::ar { class HybridARPlaneGeometrySpec; }
39
+ // Forward declaration of `HybridARRaycastResultSpec` to properly resolve imports.
40
+ namespace margelo::nitro::ar { class HybridARRaycastResultSpec; }
41
+ // Forward declaration of `HybridARSessionSpec` to properly resolve imports.
42
+ namespace margelo::nitro::ar { class HybridARSessionSpec; }
43
+ // Forward declaration of `HybridARViewSpec` to properly resolve imports.
44
+ namespace margelo::nitro::ar { class HybridARViewSpec; }
45
+ // Forward declaration of `HybridARVolumeSpec` to properly resolve imports.
46
+ namespace margelo::nitro::ar { class HybridARVolumeSpec; }
47
+ // Forward declaration of `HybridARWorldMapSpec` to properly resolve imports.
48
+ namespace margelo::nitro::ar { class HybridARWorldMapSpec; }
49
+ // Forward declaration of `LiDARCapabilities` to properly resolve imports.
50
+ namespace margelo::nitro::ar { struct LiDARCapabilities; }
51
+ // Forward declaration of `MeshClassification` to properly resolve imports.
52
+ namespace margelo::nitro::ar { enum class MeshClassification; }
53
+ // Forward declaration of `PlaneDetectionMode` to properly resolve imports.
54
+ namespace margelo::nitro::ar { enum class PlaneDetectionMode; }
55
+ // Forward declaration of `SceneReconstructionMode` to properly resolve imports.
56
+ namespace margelo::nitro::ar { enum class SceneReconstructionMode; }
57
+ // Forward declaration of `TrackingStateReason` to properly resolve imports.
58
+ namespace margelo::nitro::ar { enum class TrackingStateReason; }
59
+ // Forward declaration of `TrackingState` to properly resolve imports.
60
+ namespace margelo::nitro::ar { enum class TrackingState; }
61
+ // Forward declaration of `WorldAlignment` to properly resolve imports.
62
+ namespace margelo::nitro::ar { enum class WorldAlignment; }
63
+
64
+ // Forward declarations of Swift defined types
65
+ // Forward declaration of `HybridARAnchorSpec_cxx` to properly resolve imports.
66
+ namespace NitroAR { class HybridARAnchorSpec_cxx; }
67
+ // Forward declaration of `HybridARBoundingBoxBuilderSpec_cxx` to properly resolve imports.
68
+ namespace NitroAR { class HybridARBoundingBoxBuilderSpec_cxx; }
69
+ // Forward declaration of `HybridARDepthDataSpec_cxx` to properly resolve imports.
70
+ namespace NitroAR { class HybridARDepthDataSpec_cxx; }
71
+ // Forward declaration of `HybridARDirectionalLightEstimateSpec_cxx` to properly resolve imports.
72
+ namespace NitroAR { class HybridARDirectionalLightEstimateSpec_cxx; }
73
+ // Forward declaration of `HybridARFrameSpec_cxx` to properly resolve imports.
74
+ namespace NitroAR { class HybridARFrameSpec_cxx; }
75
+ // Forward declaration of `HybridARLightEstimateSpec_cxx` to properly resolve imports.
76
+ namespace NitroAR { class HybridARLightEstimateSpec_cxx; }
77
+ // Forward declaration of `HybridARMeasurementSpec_cxx` to properly resolve imports.
78
+ namespace NitroAR { class HybridARMeasurementSpec_cxx; }
79
+ // Forward declaration of `HybridARMeshAnchorSpec_cxx` to properly resolve imports.
80
+ namespace NitroAR { class HybridARMeshAnchorSpec_cxx; }
81
+ // Forward declaration of `HybridARPlaneAnchorSpec_cxx` to properly resolve imports.
82
+ namespace NitroAR { class HybridARPlaneAnchorSpec_cxx; }
83
+ // Forward declaration of `HybridARPlaneGeometrySpec_cxx` to properly resolve imports.
84
+ namespace NitroAR { class HybridARPlaneGeometrySpec_cxx; }
85
+ // Forward declaration of `HybridARRaycastResultSpec_cxx` to properly resolve imports.
86
+ namespace NitroAR { class HybridARRaycastResultSpec_cxx; }
87
+ // Forward declaration of `HybridARSessionSpec_cxx` to properly resolve imports.
88
+ namespace NitroAR { class HybridARSessionSpec_cxx; }
89
+ // Forward declaration of `HybridARViewSpec_cxx` to properly resolve imports.
90
+ namespace NitroAR { class HybridARViewSpec_cxx; }
91
+ // Forward declaration of `HybridARVolumeSpec_cxx` to properly resolve imports.
92
+ namespace NitroAR { class HybridARVolumeSpec_cxx; }
93
+ // Forward declaration of `HybridARWorldMapSpec_cxx` to properly resolve imports.
94
+ namespace NitroAR { class HybridARWorldMapSpec_cxx; }
95
+
96
+ // Include C++ defined types
97
+ #include "ARSessionConfiguration.hpp"
98
+ #include "ARViewHitResult.hpp"
99
+ #include "CameraPose.hpp"
100
+ #include "EnvironmentTexturing.hpp"
101
+ #include "HybridARAnchorSpec.hpp"
102
+ #include "HybridARBoundingBoxBuilderSpec.hpp"
103
+ #include "HybridARDepthDataSpec.hpp"
104
+ #include "HybridARDirectionalLightEstimateSpec.hpp"
105
+ #include "HybridARFrameSpec.hpp"
106
+ #include "HybridARLightEstimateSpec.hpp"
107
+ #include "HybridARMeasurementSpec.hpp"
108
+ #include "HybridARMeshAnchorSpec.hpp"
109
+ #include "HybridARPlaneAnchorSpec.hpp"
110
+ #include "HybridARPlaneGeometrySpec.hpp"
111
+ #include "HybridARRaycastResultSpec.hpp"
112
+ #include "HybridARSessionSpec.hpp"
113
+ #include "HybridARViewSpec.hpp"
114
+ #include "HybridARVolumeSpec.hpp"
115
+ #include "HybridARWorldMapSpec.hpp"
116
+ #include "LiDARCapabilities.hpp"
117
+ #include "MeshClassification.hpp"
118
+ #include "PlaneDetectionMode.hpp"
119
+ #include "SceneReconstructionMode.hpp"
120
+ #include "TrackingState.hpp"
121
+ #include "TrackingStateReason.hpp"
122
+ #include "WorldAlignment.hpp"
123
+ #include <NitroModules/Promise.hpp>
124
+ #include <NitroModules/PromiseHolder.hpp>
125
+ #include <NitroModules/Result.hpp>
126
+ #include <exception>
127
+ #include <functional>
128
+ #include <memory>
129
+ #include <optional>
130
+ #include <string>
131
+ #include <vector>
132
+
133
+ /**
134
+ * Contains specialized versions of C++ templated types so they can be accessed from Swift,
135
+ * as well as helper functions to interact with those C++ types from Swift.
136
+ */
137
+ namespace margelo::nitro::ar::bridge::swift {
138
+
139
+ // pragma MARK: std::vector<double>
140
+ /**
141
+ * Specialized version of `std::vector<double>`.
142
+ */
143
+ using std__vector_double_ = std::vector<double>;
144
+ inline std::vector<double> create_std__vector_double_(size_t size) noexcept {
145
+ std::vector<double> vector;
146
+ vector.reserve(size);
147
+ return vector;
148
+ }
149
+
150
+ // pragma MARK: std::optional<std::string>
151
+ /**
152
+ * Specialized version of `std::optional<std::string>`.
153
+ */
154
+ using std__optional_std__string_ = std::optional<std::string>;
155
+ inline std::optional<std::string> create_std__optional_std__string_(const std::string& value) noexcept {
156
+ return std::optional<std::string>(value);
157
+ }
158
+ inline bool has_value_std__optional_std__string_(const std::optional<std::string>& optional) noexcept {
159
+ return optional.has_value();
160
+ }
161
+ inline std::string get_std__optional_std__string_(const std::optional<std::string>& optional) noexcept {
162
+ return *optional;
163
+ }
164
+
165
+ // pragma MARK: std::shared_ptr<HybridARAnchorSpec>
166
+ /**
167
+ * Specialized version of `std::shared_ptr<HybridARAnchorSpec>`.
168
+ */
169
+ using std__shared_ptr_HybridARAnchorSpec_ = std::shared_ptr<HybridARAnchorSpec>;
170
+ std::shared_ptr<HybridARAnchorSpec> create_std__shared_ptr_HybridARAnchorSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
171
+ void* NON_NULL get_std__shared_ptr_HybridARAnchorSpec_(std__shared_ptr_HybridARAnchorSpec_ cppType);
172
+
173
+ // pragma MARK: std::weak_ptr<HybridARAnchorSpec>
174
+ using std__weak_ptr_HybridARAnchorSpec_ = std::weak_ptr<HybridARAnchorSpec>;
175
+ inline std__weak_ptr_HybridARAnchorSpec_ weakify_std__shared_ptr_HybridARAnchorSpec_(const std::shared_ptr<HybridARAnchorSpec>& strong) noexcept { return strong; }
176
+
177
+ // pragma MARK: std::shared_ptr<HybridARVolumeSpec>
178
+ /**
179
+ * Specialized version of `std::shared_ptr<HybridARVolumeSpec>`.
180
+ */
181
+ using std__shared_ptr_HybridARVolumeSpec_ = std::shared_ptr<HybridARVolumeSpec>;
182
+ std::shared_ptr<HybridARVolumeSpec> create_std__shared_ptr_HybridARVolumeSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
183
+ void* NON_NULL get_std__shared_ptr_HybridARVolumeSpec_(std__shared_ptr_HybridARVolumeSpec_ cppType);
184
+
185
+ // pragma MARK: std::weak_ptr<HybridARVolumeSpec>
186
+ using std__weak_ptr_HybridARVolumeSpec_ = std::weak_ptr<HybridARVolumeSpec>;
187
+ inline std__weak_ptr_HybridARVolumeSpec_ weakify_std__shared_ptr_HybridARVolumeSpec_(const std::shared_ptr<HybridARVolumeSpec>& strong) noexcept { return strong; }
188
+
189
+ // pragma MARK: std::shared_ptr<HybridARBoundingBoxBuilderSpec>
190
+ /**
191
+ * Specialized version of `std::shared_ptr<HybridARBoundingBoxBuilderSpec>`.
192
+ */
193
+ using std__shared_ptr_HybridARBoundingBoxBuilderSpec_ = std::shared_ptr<HybridARBoundingBoxBuilderSpec>;
194
+ std::shared_ptr<HybridARBoundingBoxBuilderSpec> create_std__shared_ptr_HybridARBoundingBoxBuilderSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
195
+ void* NON_NULL get_std__shared_ptr_HybridARBoundingBoxBuilderSpec_(std__shared_ptr_HybridARBoundingBoxBuilderSpec_ cppType);
196
+
197
+ // pragma MARK: std::weak_ptr<HybridARBoundingBoxBuilderSpec>
198
+ using std__weak_ptr_HybridARBoundingBoxBuilderSpec_ = std::weak_ptr<HybridARBoundingBoxBuilderSpec>;
199
+ inline std__weak_ptr_HybridARBoundingBoxBuilderSpec_ weakify_std__shared_ptr_HybridARBoundingBoxBuilderSpec_(const std::shared_ptr<HybridARBoundingBoxBuilderSpec>& strong) noexcept { return strong; }
200
+
201
+ // pragma MARK: Result<void>
202
+ using Result_void_ = Result<void>;
203
+ inline Result_void_ create_Result_void_() noexcept {
204
+ return Result<void>::withValue();
205
+ }
206
+ inline Result_void_ create_Result_void_(const std::exception_ptr& error) noexcept {
207
+ return Result<void>::withError(error);
208
+ }
209
+
210
+ // pragma MARK: Result<std::shared_ptr<HybridARVolumeSpec>>
211
+ using Result_std__shared_ptr_HybridARVolumeSpec__ = Result<std::shared_ptr<HybridARVolumeSpec>>;
212
+ inline Result_std__shared_ptr_HybridARVolumeSpec__ create_Result_std__shared_ptr_HybridARVolumeSpec__(const std::shared_ptr<HybridARVolumeSpec>& value) noexcept {
213
+ return Result<std::shared_ptr<HybridARVolumeSpec>>::withValue(value);
214
+ }
215
+ inline Result_std__shared_ptr_HybridARVolumeSpec__ create_Result_std__shared_ptr_HybridARVolumeSpec__(const std::exception_ptr& error) noexcept {
216
+ return Result<std::shared_ptr<HybridARVolumeSpec>>::withError(error);
217
+ }
218
+
219
+ // pragma MARK: std::shared_ptr<HybridARDepthDataSpec>
220
+ /**
221
+ * Specialized version of `std::shared_ptr<HybridARDepthDataSpec>`.
222
+ */
223
+ using std__shared_ptr_HybridARDepthDataSpec_ = std::shared_ptr<HybridARDepthDataSpec>;
224
+ std::shared_ptr<HybridARDepthDataSpec> create_std__shared_ptr_HybridARDepthDataSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
225
+ void* NON_NULL get_std__shared_ptr_HybridARDepthDataSpec_(std__shared_ptr_HybridARDepthDataSpec_ cppType);
226
+
227
+ // pragma MARK: std::weak_ptr<HybridARDepthDataSpec>
228
+ using std__weak_ptr_HybridARDepthDataSpec_ = std::weak_ptr<HybridARDepthDataSpec>;
229
+ inline std__weak_ptr_HybridARDepthDataSpec_ weakify_std__shared_ptr_HybridARDepthDataSpec_(const std::shared_ptr<HybridARDepthDataSpec>& strong) noexcept { return strong; }
230
+
231
+ // pragma MARK: Result<double>
232
+ using Result_double_ = Result<double>;
233
+ inline Result_double_ create_Result_double_(double value) noexcept {
234
+ return Result<double>::withValue(std::move(value));
235
+ }
236
+ inline Result_double_ create_Result_double_(const std::exception_ptr& error) noexcept {
237
+ return Result<double>::withError(error);
238
+ }
239
+
240
+ // pragma MARK: std::shared_ptr<HybridARLightEstimateSpec>
241
+ /**
242
+ * Specialized version of `std::shared_ptr<HybridARLightEstimateSpec>`.
243
+ */
244
+ using std__shared_ptr_HybridARLightEstimateSpec_ = std::shared_ptr<HybridARLightEstimateSpec>;
245
+ std::shared_ptr<HybridARLightEstimateSpec> create_std__shared_ptr_HybridARLightEstimateSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
246
+ void* NON_NULL get_std__shared_ptr_HybridARLightEstimateSpec_(std__shared_ptr_HybridARLightEstimateSpec_ cppType);
247
+
248
+ // pragma MARK: std::weak_ptr<HybridARLightEstimateSpec>
249
+ using std__weak_ptr_HybridARLightEstimateSpec_ = std::weak_ptr<HybridARLightEstimateSpec>;
250
+ inline std__weak_ptr_HybridARLightEstimateSpec_ weakify_std__shared_ptr_HybridARLightEstimateSpec_(const std::shared_ptr<HybridARLightEstimateSpec>& strong) noexcept { return strong; }
251
+
252
+ // pragma MARK: std::optional<std::shared_ptr<HybridARLightEstimateSpec>>
253
+ /**
254
+ * Specialized version of `std::optional<std::shared_ptr<HybridARLightEstimateSpec>>`.
255
+ */
256
+ using std__optional_std__shared_ptr_HybridARLightEstimateSpec__ = std::optional<std::shared_ptr<HybridARLightEstimateSpec>>;
257
+ inline std::optional<std::shared_ptr<HybridARLightEstimateSpec>> create_std__optional_std__shared_ptr_HybridARLightEstimateSpec__(const std::shared_ptr<HybridARLightEstimateSpec>& value) noexcept {
258
+ return std::optional<std::shared_ptr<HybridARLightEstimateSpec>>(value);
259
+ }
260
+ inline bool has_value_std__optional_std__shared_ptr_HybridARLightEstimateSpec__(const std::optional<std::shared_ptr<HybridARLightEstimateSpec>>& optional) noexcept {
261
+ return optional.has_value();
262
+ }
263
+ inline std::shared_ptr<HybridARLightEstimateSpec> get_std__optional_std__shared_ptr_HybridARLightEstimateSpec__(const std::optional<std::shared_ptr<HybridARLightEstimateSpec>>& optional) noexcept {
264
+ return *optional;
265
+ }
266
+
267
+ // pragma MARK: std::shared_ptr<HybridARDirectionalLightEstimateSpec>
268
+ /**
269
+ * Specialized version of `std::shared_ptr<HybridARDirectionalLightEstimateSpec>`.
270
+ */
271
+ using std__shared_ptr_HybridARDirectionalLightEstimateSpec_ = std::shared_ptr<HybridARDirectionalLightEstimateSpec>;
272
+ std::shared_ptr<HybridARDirectionalLightEstimateSpec> create_std__shared_ptr_HybridARDirectionalLightEstimateSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
273
+ void* NON_NULL get_std__shared_ptr_HybridARDirectionalLightEstimateSpec_(std__shared_ptr_HybridARDirectionalLightEstimateSpec_ cppType);
274
+
275
+ // pragma MARK: std::shared_ptr<HybridARLightEstimateSpec>
276
+ inline std::shared_ptr<HybridARLightEstimateSpec> upcast_ARDirectionalLightEstimate_to_ARLightEstimate(std::shared_ptr<HybridARDirectionalLightEstimateSpec> child) noexcept { return child; }
277
+
278
+ // pragma MARK: std::weak_ptr<HybridARDirectionalLightEstimateSpec>
279
+ using std__weak_ptr_HybridARDirectionalLightEstimateSpec_ = std::weak_ptr<HybridARDirectionalLightEstimateSpec>;
280
+ inline std__weak_ptr_HybridARDirectionalLightEstimateSpec_ weakify_std__shared_ptr_HybridARDirectionalLightEstimateSpec_(const std::shared_ptr<HybridARDirectionalLightEstimateSpec>& strong) noexcept { return strong; }
281
+
282
+ // pragma MARK: std::optional<std::shared_ptr<HybridARDirectionalLightEstimateSpec>>
283
+ /**
284
+ * Specialized version of `std::optional<std::shared_ptr<HybridARDirectionalLightEstimateSpec>>`.
285
+ */
286
+ using std__optional_std__shared_ptr_HybridARDirectionalLightEstimateSpec__ = std::optional<std::shared_ptr<HybridARDirectionalLightEstimateSpec>>;
287
+ inline std::optional<std::shared_ptr<HybridARDirectionalLightEstimateSpec>> create_std__optional_std__shared_ptr_HybridARDirectionalLightEstimateSpec__(const std::shared_ptr<HybridARDirectionalLightEstimateSpec>& value) noexcept {
288
+ return std::optional<std::shared_ptr<HybridARDirectionalLightEstimateSpec>>(value);
289
+ }
290
+ inline bool has_value_std__optional_std__shared_ptr_HybridARDirectionalLightEstimateSpec__(const std::optional<std::shared_ptr<HybridARDirectionalLightEstimateSpec>>& optional) noexcept {
291
+ return optional.has_value();
292
+ }
293
+ inline std::shared_ptr<HybridARDirectionalLightEstimateSpec> get_std__optional_std__shared_ptr_HybridARDirectionalLightEstimateSpec__(const std::optional<std::shared_ptr<HybridARDirectionalLightEstimateSpec>>& optional) noexcept {
294
+ return *optional;
295
+ }
296
+
297
+ // pragma MARK: std::optional<std::shared_ptr<HybridARDepthDataSpec>>
298
+ /**
299
+ * Specialized version of `std::optional<std::shared_ptr<HybridARDepthDataSpec>>`.
300
+ */
301
+ using std__optional_std__shared_ptr_HybridARDepthDataSpec__ = std::optional<std::shared_ptr<HybridARDepthDataSpec>>;
302
+ inline std::optional<std::shared_ptr<HybridARDepthDataSpec>> create_std__optional_std__shared_ptr_HybridARDepthDataSpec__(const std::shared_ptr<HybridARDepthDataSpec>& value) noexcept {
303
+ return std::optional<std::shared_ptr<HybridARDepthDataSpec>>(value);
304
+ }
305
+ inline bool has_value_std__optional_std__shared_ptr_HybridARDepthDataSpec__(const std::optional<std::shared_ptr<HybridARDepthDataSpec>>& optional) noexcept {
306
+ return optional.has_value();
307
+ }
308
+ inline std::shared_ptr<HybridARDepthDataSpec> get_std__optional_std__shared_ptr_HybridARDepthDataSpec__(const std::optional<std::shared_ptr<HybridARDepthDataSpec>>& optional) noexcept {
309
+ return *optional;
310
+ }
311
+
312
+ // pragma MARK: std::shared_ptr<HybridARFrameSpec>
313
+ /**
314
+ * Specialized version of `std::shared_ptr<HybridARFrameSpec>`.
315
+ */
316
+ using std__shared_ptr_HybridARFrameSpec_ = std::shared_ptr<HybridARFrameSpec>;
317
+ std::shared_ptr<HybridARFrameSpec> create_std__shared_ptr_HybridARFrameSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
318
+ void* NON_NULL get_std__shared_ptr_HybridARFrameSpec_(std__shared_ptr_HybridARFrameSpec_ cppType);
319
+
320
+ // pragma MARK: std::weak_ptr<HybridARFrameSpec>
321
+ using std__weak_ptr_HybridARFrameSpec_ = std::weak_ptr<HybridARFrameSpec>;
322
+ inline std__weak_ptr_HybridARFrameSpec_ weakify_std__shared_ptr_HybridARFrameSpec_(const std::shared_ptr<HybridARFrameSpec>& strong) noexcept { return strong; }
323
+
324
+ // pragma MARK: Result<std::string>
325
+ using Result_std__string_ = Result<std::string>;
326
+ inline Result_std__string_ create_Result_std__string_(const std::string& value) noexcept {
327
+ return Result<std::string>::withValue(value);
328
+ }
329
+ inline Result_std__string_ create_Result_std__string_(const std::exception_ptr& error) noexcept {
330
+ return Result<std::string>::withError(error);
331
+ }
332
+
333
+ // pragma MARK: std::shared_ptr<HybridARMeasurementSpec>
334
+ /**
335
+ * Specialized version of `std::shared_ptr<HybridARMeasurementSpec>`.
336
+ */
337
+ using std__shared_ptr_HybridARMeasurementSpec_ = std::shared_ptr<HybridARMeasurementSpec>;
338
+ std::shared_ptr<HybridARMeasurementSpec> create_std__shared_ptr_HybridARMeasurementSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
339
+ void* NON_NULL get_std__shared_ptr_HybridARMeasurementSpec_(std__shared_ptr_HybridARMeasurementSpec_ cppType);
340
+
341
+ // pragma MARK: std::weak_ptr<HybridARMeasurementSpec>
342
+ using std__weak_ptr_HybridARMeasurementSpec_ = std::weak_ptr<HybridARMeasurementSpec>;
343
+ inline std__weak_ptr_HybridARMeasurementSpec_ weakify_std__shared_ptr_HybridARMeasurementSpec_(const std::shared_ptr<HybridARMeasurementSpec>& strong) noexcept { return strong; }
344
+
345
+ // pragma MARK: std::shared_ptr<HybridARPlaneGeometrySpec>
346
+ /**
347
+ * Specialized version of `std::shared_ptr<HybridARPlaneGeometrySpec>`.
348
+ */
349
+ using std__shared_ptr_HybridARPlaneGeometrySpec_ = std::shared_ptr<HybridARPlaneGeometrySpec>;
350
+ std::shared_ptr<HybridARPlaneGeometrySpec> create_std__shared_ptr_HybridARPlaneGeometrySpec_(void* NON_NULL swiftUnsafePointer) noexcept;
351
+ void* NON_NULL get_std__shared_ptr_HybridARPlaneGeometrySpec_(std__shared_ptr_HybridARPlaneGeometrySpec_ cppType);
352
+
353
+ // pragma MARK: std::weak_ptr<HybridARPlaneGeometrySpec>
354
+ using std__weak_ptr_HybridARPlaneGeometrySpec_ = std::weak_ptr<HybridARPlaneGeometrySpec>;
355
+ inline std__weak_ptr_HybridARPlaneGeometrySpec_ weakify_std__shared_ptr_HybridARPlaneGeometrySpec_(const std::shared_ptr<HybridARPlaneGeometrySpec>& strong) noexcept { return strong; }
356
+
357
+ // pragma MARK: std::shared_ptr<HybridARPlaneAnchorSpec>
358
+ /**
359
+ * Specialized version of `std::shared_ptr<HybridARPlaneAnchorSpec>`.
360
+ */
361
+ using std__shared_ptr_HybridARPlaneAnchorSpec_ = std::shared_ptr<HybridARPlaneAnchorSpec>;
362
+ std::shared_ptr<HybridARPlaneAnchorSpec> create_std__shared_ptr_HybridARPlaneAnchorSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
363
+ void* NON_NULL get_std__shared_ptr_HybridARPlaneAnchorSpec_(std__shared_ptr_HybridARPlaneAnchorSpec_ cppType);
364
+
365
+ // pragma MARK: std::weak_ptr<HybridARPlaneAnchorSpec>
366
+ using std__weak_ptr_HybridARPlaneAnchorSpec_ = std::weak_ptr<HybridARPlaneAnchorSpec>;
367
+ inline std__weak_ptr_HybridARPlaneAnchorSpec_ weakify_std__shared_ptr_HybridARPlaneAnchorSpec_(const std::shared_ptr<HybridARPlaneAnchorSpec>& strong) noexcept { return strong; }
368
+
369
+ // pragma MARK: std::shared_ptr<HybridARRaycastResultSpec>
370
+ /**
371
+ * Specialized version of `std::shared_ptr<HybridARRaycastResultSpec>`.
372
+ */
373
+ using std__shared_ptr_HybridARRaycastResultSpec_ = std::shared_ptr<HybridARRaycastResultSpec>;
374
+ std::shared_ptr<HybridARRaycastResultSpec> create_std__shared_ptr_HybridARRaycastResultSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
375
+ void* NON_NULL get_std__shared_ptr_HybridARRaycastResultSpec_(std__shared_ptr_HybridARRaycastResultSpec_ cppType);
376
+
377
+ // pragma MARK: std::weak_ptr<HybridARRaycastResultSpec>
378
+ using std__weak_ptr_HybridARRaycastResultSpec_ = std::weak_ptr<HybridARRaycastResultSpec>;
379
+ inline std__weak_ptr_HybridARRaycastResultSpec_ weakify_std__shared_ptr_HybridARRaycastResultSpec_(const std::shared_ptr<HybridARRaycastResultSpec>& strong) noexcept { return strong; }
380
+
381
+ // pragma MARK: std::vector<MeshClassification>
382
+ /**
383
+ * Specialized version of `std::vector<MeshClassification>`.
384
+ */
385
+ using std__vector_MeshClassification_ = std::vector<MeshClassification>;
386
+ inline std::vector<MeshClassification> create_std__vector_MeshClassification_(size_t size) noexcept {
387
+ std::vector<MeshClassification> vector;
388
+ vector.reserve(size);
389
+ return vector;
390
+ }
391
+
392
+ // pragma MARK: std::shared_ptr<HybridARMeshAnchorSpec>
393
+ /**
394
+ * Specialized version of `std::shared_ptr<HybridARMeshAnchorSpec>`.
395
+ */
396
+ using std__shared_ptr_HybridARMeshAnchorSpec_ = std::shared_ptr<HybridARMeshAnchorSpec>;
397
+ std::shared_ptr<HybridARMeshAnchorSpec> create_std__shared_ptr_HybridARMeshAnchorSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
398
+ void* NON_NULL get_std__shared_ptr_HybridARMeshAnchorSpec_(std__shared_ptr_HybridARMeshAnchorSpec_ cppType);
399
+
400
+ // pragma MARK: std::weak_ptr<HybridARMeshAnchorSpec>
401
+ using std__weak_ptr_HybridARMeshAnchorSpec_ = std::weak_ptr<HybridARMeshAnchorSpec>;
402
+ inline std__weak_ptr_HybridARMeshAnchorSpec_ weakify_std__shared_ptr_HybridARMeshAnchorSpec_(const std::shared_ptr<HybridARMeshAnchorSpec>& strong) noexcept { return strong; }
403
+
404
+ // pragma MARK: std::vector<PlaneDetectionMode>
405
+ /**
406
+ * Specialized version of `std::vector<PlaneDetectionMode>`.
407
+ */
408
+ using std__vector_PlaneDetectionMode_ = std::vector<PlaneDetectionMode>;
409
+ inline std::vector<PlaneDetectionMode> create_std__vector_PlaneDetectionMode_(size_t size) noexcept {
410
+ std::vector<PlaneDetectionMode> vector;
411
+ vector.reserve(size);
412
+ return vector;
413
+ }
414
+
415
+ // pragma MARK: std::optional<std::vector<PlaneDetectionMode>>
416
+ /**
417
+ * Specialized version of `std::optional<std::vector<PlaneDetectionMode>>`.
418
+ */
419
+ using std__optional_std__vector_PlaneDetectionMode__ = std::optional<std::vector<PlaneDetectionMode>>;
420
+ inline std::optional<std::vector<PlaneDetectionMode>> create_std__optional_std__vector_PlaneDetectionMode__(const std::vector<PlaneDetectionMode>& value) noexcept {
421
+ return std::optional<std::vector<PlaneDetectionMode>>(value);
422
+ }
423
+ inline bool has_value_std__optional_std__vector_PlaneDetectionMode__(const std::optional<std::vector<PlaneDetectionMode>>& optional) noexcept {
424
+ return optional.has_value();
425
+ }
426
+ inline std::vector<PlaneDetectionMode> get_std__optional_std__vector_PlaneDetectionMode__(const std::optional<std::vector<PlaneDetectionMode>>& optional) noexcept {
427
+ return *optional;
428
+ }
429
+
430
+ // pragma MARK: std::optional<bool>
431
+ /**
432
+ * Specialized version of `std::optional<bool>`.
433
+ */
434
+ using std__optional_bool_ = std::optional<bool>;
435
+ inline std::optional<bool> create_std__optional_bool_(const bool& value) noexcept {
436
+ return std::optional<bool>(value);
437
+ }
438
+ inline bool has_value_std__optional_bool_(const std::optional<bool>& optional) noexcept {
439
+ return optional.has_value();
440
+ }
441
+ inline bool get_std__optional_bool_(const std::optional<bool>& optional) noexcept {
442
+ return *optional;
443
+ }
444
+
445
+ // pragma MARK: std::optional<EnvironmentTexturing>
446
+ /**
447
+ * Specialized version of `std::optional<EnvironmentTexturing>`.
448
+ */
449
+ using std__optional_EnvironmentTexturing_ = std::optional<EnvironmentTexturing>;
450
+ inline std::optional<EnvironmentTexturing> create_std__optional_EnvironmentTexturing_(const EnvironmentTexturing& value) noexcept {
451
+ return std::optional<EnvironmentTexturing>(value);
452
+ }
453
+ inline bool has_value_std__optional_EnvironmentTexturing_(const std::optional<EnvironmentTexturing>& optional) noexcept {
454
+ return optional.has_value();
455
+ }
456
+ inline EnvironmentTexturing get_std__optional_EnvironmentTexturing_(const std::optional<EnvironmentTexturing>& optional) noexcept {
457
+ return *optional;
458
+ }
459
+
460
+ // pragma MARK: std::optional<WorldAlignment>
461
+ /**
462
+ * Specialized version of `std::optional<WorldAlignment>`.
463
+ */
464
+ using std__optional_WorldAlignment_ = std::optional<WorldAlignment>;
465
+ inline std::optional<WorldAlignment> create_std__optional_WorldAlignment_(const WorldAlignment& value) noexcept {
466
+ return std::optional<WorldAlignment>(value);
467
+ }
468
+ inline bool has_value_std__optional_WorldAlignment_(const std::optional<WorldAlignment>& optional) noexcept {
469
+ return optional.has_value();
470
+ }
471
+ inline WorldAlignment get_std__optional_WorldAlignment_(const std::optional<WorldAlignment>& optional) noexcept {
472
+ return *optional;
473
+ }
474
+
475
+ // pragma MARK: std::optional<SceneReconstructionMode>
476
+ /**
477
+ * Specialized version of `std::optional<SceneReconstructionMode>`.
478
+ */
479
+ using std__optional_SceneReconstructionMode_ = std::optional<SceneReconstructionMode>;
480
+ inline std::optional<SceneReconstructionMode> create_std__optional_SceneReconstructionMode_(const SceneReconstructionMode& value) noexcept {
481
+ return std::optional<SceneReconstructionMode>(value);
482
+ }
483
+ inline bool has_value_std__optional_SceneReconstructionMode_(const std::optional<SceneReconstructionMode>& optional) noexcept {
484
+ return optional.has_value();
485
+ }
486
+ inline SceneReconstructionMode get_std__optional_SceneReconstructionMode_(const std::optional<SceneReconstructionMode>& optional) noexcept {
487
+ return *optional;
488
+ }
489
+
490
+ // pragma MARK: std::optional<ARSessionConfiguration>
491
+ /**
492
+ * Specialized version of `std::optional<ARSessionConfiguration>`.
493
+ */
494
+ using std__optional_ARSessionConfiguration_ = std::optional<ARSessionConfiguration>;
495
+ inline std::optional<ARSessionConfiguration> create_std__optional_ARSessionConfiguration_(const ARSessionConfiguration& value) noexcept {
496
+ return std::optional<ARSessionConfiguration>(value);
497
+ }
498
+ inline bool has_value_std__optional_ARSessionConfiguration_(const std::optional<ARSessionConfiguration>& optional) noexcept {
499
+ return optional.has_value();
500
+ }
501
+ inline ARSessionConfiguration get_std__optional_ARSessionConfiguration_(const std::optional<ARSessionConfiguration>& optional) noexcept {
502
+ return *optional;
503
+ }
504
+
505
+ // pragma MARK: std::optional<std::shared_ptr<HybridARFrameSpec>>
506
+ /**
507
+ * Specialized version of `std::optional<std::shared_ptr<HybridARFrameSpec>>`.
508
+ */
509
+ using std__optional_std__shared_ptr_HybridARFrameSpec__ = std::optional<std::shared_ptr<HybridARFrameSpec>>;
510
+ inline std::optional<std::shared_ptr<HybridARFrameSpec>> create_std__optional_std__shared_ptr_HybridARFrameSpec__(const std::shared_ptr<HybridARFrameSpec>& value) noexcept {
511
+ return std::optional<std::shared_ptr<HybridARFrameSpec>>(value);
512
+ }
513
+ inline bool has_value_std__optional_std__shared_ptr_HybridARFrameSpec__(const std::optional<std::shared_ptr<HybridARFrameSpec>>& optional) noexcept {
514
+ return optional.has_value();
515
+ }
516
+ inline std::shared_ptr<HybridARFrameSpec> get_std__optional_std__shared_ptr_HybridARFrameSpec__(const std::optional<std::shared_ptr<HybridARFrameSpec>>& optional) noexcept {
517
+ return *optional;
518
+ }
519
+
520
+ // pragma MARK: std::optional<std::shared_ptr<HybridARRaycastResultSpec>>
521
+ /**
522
+ * Specialized version of `std::optional<std::shared_ptr<HybridARRaycastResultSpec>>`.
523
+ */
524
+ using std__optional_std__shared_ptr_HybridARRaycastResultSpec__ = std::optional<std::shared_ptr<HybridARRaycastResultSpec>>;
525
+ inline std::optional<std::shared_ptr<HybridARRaycastResultSpec>> create_std__optional_std__shared_ptr_HybridARRaycastResultSpec__(const std::shared_ptr<HybridARRaycastResultSpec>& value) noexcept {
526
+ return std::optional<std::shared_ptr<HybridARRaycastResultSpec>>(value);
527
+ }
528
+ inline bool has_value_std__optional_std__shared_ptr_HybridARRaycastResultSpec__(const std::optional<std::shared_ptr<HybridARRaycastResultSpec>>& optional) noexcept {
529
+ return optional.has_value();
530
+ }
531
+ inline std::shared_ptr<HybridARRaycastResultSpec> get_std__optional_std__shared_ptr_HybridARRaycastResultSpec__(const std::optional<std::shared_ptr<HybridARRaycastResultSpec>>& optional) noexcept {
532
+ return *optional;
533
+ }
534
+
535
+ // pragma MARK: std::vector<std::shared_ptr<HybridARRaycastResultSpec>>
536
+ /**
537
+ * Specialized version of `std::vector<std::shared_ptr<HybridARRaycastResultSpec>>`.
538
+ */
539
+ using std__vector_std__shared_ptr_HybridARRaycastResultSpec__ = std::vector<std::shared_ptr<HybridARRaycastResultSpec>>;
540
+ inline std::vector<std::shared_ptr<HybridARRaycastResultSpec>> create_std__vector_std__shared_ptr_HybridARRaycastResultSpec__(size_t size) noexcept {
541
+ std::vector<std::shared_ptr<HybridARRaycastResultSpec>> vector;
542
+ vector.reserve(size);
543
+ return vector;
544
+ }
545
+
546
+ // pragma MARK: std::optional<std::vector<double>>
547
+ /**
548
+ * Specialized version of `std::optional<std::vector<double>>`.
549
+ */
550
+ using std__optional_std__vector_double__ = std::optional<std::vector<double>>;
551
+ inline std::optional<std::vector<double>> create_std__optional_std__vector_double__(const std::vector<double>& value) noexcept {
552
+ return std::optional<std::vector<double>>(value);
553
+ }
554
+ inline bool has_value_std__optional_std__vector_double__(const std::optional<std::vector<double>>& optional) noexcept {
555
+ return optional.has_value();
556
+ }
557
+ inline std::vector<double> get_std__optional_std__vector_double__(const std::optional<std::vector<double>>& optional) noexcept {
558
+ return *optional;
559
+ }
560
+
561
+ // pragma MARK: std::vector<std::shared_ptr<HybridARAnchorSpec>>
562
+ /**
563
+ * Specialized version of `std::vector<std::shared_ptr<HybridARAnchorSpec>>`.
564
+ */
565
+ using std__vector_std__shared_ptr_HybridARAnchorSpec__ = std::vector<std::shared_ptr<HybridARAnchorSpec>>;
566
+ inline std::vector<std::shared_ptr<HybridARAnchorSpec>> create_std__vector_std__shared_ptr_HybridARAnchorSpec__(size_t size) noexcept {
567
+ std::vector<std::shared_ptr<HybridARAnchorSpec>> vector;
568
+ vector.reserve(size);
569
+ return vector;
570
+ }
571
+
572
+ // pragma MARK: std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>
573
+ /**
574
+ * Specialized version of `std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>`.
575
+ */
576
+ using std__vector_std__shared_ptr_HybridARPlaneAnchorSpec__ = std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>;
577
+ inline std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>> create_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec__(size_t size) noexcept {
578
+ std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>> vector;
579
+ vector.reserve(size);
580
+ return vector;
581
+ }
582
+
583
+ // pragma MARK: std::shared_ptr<HybridARWorldMapSpec>
584
+ /**
585
+ * Specialized version of `std::shared_ptr<HybridARWorldMapSpec>`.
586
+ */
587
+ using std__shared_ptr_HybridARWorldMapSpec_ = std::shared_ptr<HybridARWorldMapSpec>;
588
+ std::shared_ptr<HybridARWorldMapSpec> create_std__shared_ptr_HybridARWorldMapSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
589
+ void* NON_NULL get_std__shared_ptr_HybridARWorldMapSpec_(std__shared_ptr_HybridARWorldMapSpec_ cppType);
590
+
591
+ // pragma MARK: std::weak_ptr<HybridARWorldMapSpec>
592
+ using std__weak_ptr_HybridARWorldMapSpec_ = std::weak_ptr<HybridARWorldMapSpec>;
593
+ inline std__weak_ptr_HybridARWorldMapSpec_ weakify_std__shared_ptr_HybridARWorldMapSpec_(const std::shared_ptr<HybridARWorldMapSpec>& strong) noexcept { return strong; }
594
+
595
+ // pragma MARK: std::shared_ptr<Promise<std::shared_ptr<HybridARWorldMapSpec>>>
596
+ /**
597
+ * Specialized version of `std::shared_ptr<Promise<std::shared_ptr<HybridARWorldMapSpec>>>`.
598
+ */
599
+ using std__shared_ptr_Promise_std__shared_ptr_HybridARWorldMapSpec___ = std::shared_ptr<Promise<std::shared_ptr<HybridARWorldMapSpec>>>;
600
+ inline std::shared_ptr<Promise<std::shared_ptr<HybridARWorldMapSpec>>> create_std__shared_ptr_Promise_std__shared_ptr_HybridARWorldMapSpec___() noexcept {
601
+ return Promise<std::shared_ptr<HybridARWorldMapSpec>>::create();
602
+ }
603
+ inline PromiseHolder<std::shared_ptr<HybridARWorldMapSpec>> wrap_std__shared_ptr_Promise_std__shared_ptr_HybridARWorldMapSpec___(std::shared_ptr<Promise<std::shared_ptr<HybridARWorldMapSpec>>> promise) noexcept {
604
+ return PromiseHolder<std::shared_ptr<HybridARWorldMapSpec>>(std::move(promise));
605
+ }
606
+
607
+ // pragma MARK: std::function<void(const std::shared_ptr<HybridARWorldMapSpec>& /* result */)>
608
+ /**
609
+ * Specialized version of `std::function<void(const std::shared_ptr<HybridARWorldMapSpec>&)>`.
610
+ */
611
+ using Func_void_std__shared_ptr_HybridARWorldMapSpec_ = std::function<void(const std::shared_ptr<HybridARWorldMapSpec>& /* result */)>;
612
+ /**
613
+ * Wrapper class for a `std::function<void(const std::shared_ptr<HybridARWorldMapSpec>& / * result * /)>`, this can be used from Swift.
614
+ */
615
+ class Func_void_std__shared_ptr_HybridARWorldMapSpec__Wrapper final {
616
+ public:
617
+ explicit Func_void_std__shared_ptr_HybridARWorldMapSpec__Wrapper(std::function<void(const std::shared_ptr<HybridARWorldMapSpec>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::shared_ptr<HybridARWorldMapSpec>& /* result */)>>(std::move(func))) {}
618
+ inline void call(std::shared_ptr<HybridARWorldMapSpec> result) const noexcept {
619
+ _function->operator()(result);
620
+ }
621
+ private:
622
+ std::unique_ptr<std::function<void(const std::shared_ptr<HybridARWorldMapSpec>& /* result */)>> _function;
623
+ } SWIFT_NONCOPYABLE;
624
+ Func_void_std__shared_ptr_HybridARWorldMapSpec_ create_Func_void_std__shared_ptr_HybridARWorldMapSpec_(void* NON_NULL swiftClosureWrapper) noexcept;
625
+ inline Func_void_std__shared_ptr_HybridARWorldMapSpec__Wrapper wrap_Func_void_std__shared_ptr_HybridARWorldMapSpec_(Func_void_std__shared_ptr_HybridARWorldMapSpec_ value) noexcept {
626
+ return Func_void_std__shared_ptr_HybridARWorldMapSpec__Wrapper(std::move(value));
627
+ }
628
+
629
+ // pragma MARK: std::function<void(const std::exception_ptr& /* error */)>
630
+ /**
631
+ * Specialized version of `std::function<void(const std::exception_ptr&)>`.
632
+ */
633
+ using Func_void_std__exception_ptr = std::function<void(const std::exception_ptr& /* error */)>;
634
+ /**
635
+ * Wrapper class for a `std::function<void(const std::exception_ptr& / * error * /)>`, this can be used from Swift.
636
+ */
637
+ class Func_void_std__exception_ptr_Wrapper final {
638
+ public:
639
+ explicit Func_void_std__exception_ptr_Wrapper(std::function<void(const std::exception_ptr& /* error */)>&& func): _function(std::make_unique<std::function<void(const std::exception_ptr& /* error */)>>(std::move(func))) {}
640
+ inline void call(std::exception_ptr error) const noexcept {
641
+ _function->operator()(error);
642
+ }
643
+ private:
644
+ std::unique_ptr<std::function<void(const std::exception_ptr& /* error */)>> _function;
645
+ } SWIFT_NONCOPYABLE;
646
+ Func_void_std__exception_ptr create_Func_void_std__exception_ptr(void* NON_NULL swiftClosureWrapper) noexcept;
647
+ inline Func_void_std__exception_ptr_Wrapper wrap_Func_void_std__exception_ptr(Func_void_std__exception_ptr value) noexcept {
648
+ return Func_void_std__exception_ptr_Wrapper(std::move(value));
649
+ }
650
+
651
+ // pragma MARK: std::function<void()>
652
+ /**
653
+ * Specialized version of `std::function<void()>`.
654
+ */
655
+ using Func_void = std::function<void()>;
656
+ /**
657
+ * Wrapper class for a `std::function<void()>`, this can be used from Swift.
658
+ */
659
+ class Func_void_Wrapper final {
660
+ public:
661
+ explicit Func_void_Wrapper(std::function<void()>&& func): _function(std::make_unique<std::function<void()>>(std::move(func))) {}
662
+ inline void call() const noexcept {
663
+ _function->operator()();
664
+ }
665
+ private:
666
+ std::unique_ptr<std::function<void()>> _function;
667
+ } SWIFT_NONCOPYABLE;
668
+ Func_void create_Func_void(void* NON_NULL swiftClosureWrapper) noexcept;
669
+ inline Func_void_Wrapper wrap_Func_void(Func_void value) noexcept {
670
+ return Func_void_Wrapper(std::move(value));
671
+ }
672
+
673
+ // pragma MARK: std::function<void(const std::shared_ptr<HybridARFrameSpec>& /* frame */)>
674
+ /**
675
+ * Specialized version of `std::function<void(const std::shared_ptr<HybridARFrameSpec>&)>`.
676
+ */
677
+ using Func_void_std__shared_ptr_HybridARFrameSpec_ = std::function<void(const std::shared_ptr<HybridARFrameSpec>& /* frame */)>;
678
+ /**
679
+ * Wrapper class for a `std::function<void(const std::shared_ptr<HybridARFrameSpec>& / * frame * /)>`, this can be used from Swift.
680
+ */
681
+ class Func_void_std__shared_ptr_HybridARFrameSpec__Wrapper final {
682
+ public:
683
+ explicit Func_void_std__shared_ptr_HybridARFrameSpec__Wrapper(std::function<void(const std::shared_ptr<HybridARFrameSpec>& /* frame */)>&& func): _function(std::make_unique<std::function<void(const std::shared_ptr<HybridARFrameSpec>& /* frame */)>>(std::move(func))) {}
684
+ inline void call(std::shared_ptr<HybridARFrameSpec> frame) const noexcept {
685
+ _function->operator()(frame);
686
+ }
687
+ private:
688
+ std::unique_ptr<std::function<void(const std::shared_ptr<HybridARFrameSpec>& /* frame */)>> _function;
689
+ } SWIFT_NONCOPYABLE;
690
+ Func_void_std__shared_ptr_HybridARFrameSpec_ create_Func_void_std__shared_ptr_HybridARFrameSpec_(void* NON_NULL swiftClosureWrapper) noexcept;
691
+ inline Func_void_std__shared_ptr_HybridARFrameSpec__Wrapper wrap_Func_void_std__shared_ptr_HybridARFrameSpec_(Func_void_std__shared_ptr_HybridARFrameSpec_ value) noexcept {
692
+ return Func_void_std__shared_ptr_HybridARFrameSpec__Wrapper(std::move(value));
693
+ }
694
+
695
+ // pragma MARK: std::function<void(TrackingState /* state */, TrackingStateReason /* reason */)>
696
+ /**
697
+ * Specialized version of `std::function<void(TrackingState, TrackingStateReason)>`.
698
+ */
699
+ using Func_void_TrackingState_TrackingStateReason = std::function<void(TrackingState /* state */, TrackingStateReason /* reason */)>;
700
+ /**
701
+ * Wrapper class for a `std::function<void(TrackingState / * state * /, TrackingStateReason / * reason * /)>`, this can be used from Swift.
702
+ */
703
+ class Func_void_TrackingState_TrackingStateReason_Wrapper final {
704
+ public:
705
+ explicit Func_void_TrackingState_TrackingStateReason_Wrapper(std::function<void(TrackingState /* state */, TrackingStateReason /* reason */)>&& func): _function(std::make_unique<std::function<void(TrackingState /* state */, TrackingStateReason /* reason */)>>(std::move(func))) {}
706
+ inline void call(int state, int reason) const noexcept {
707
+ _function->operator()(static_cast<TrackingState>(state), static_cast<TrackingStateReason>(reason));
708
+ }
709
+ private:
710
+ std::unique_ptr<std::function<void(TrackingState /* state */, TrackingStateReason /* reason */)>> _function;
711
+ } SWIFT_NONCOPYABLE;
712
+ Func_void_TrackingState_TrackingStateReason create_Func_void_TrackingState_TrackingStateReason(void* NON_NULL swiftClosureWrapper) noexcept;
713
+ inline Func_void_TrackingState_TrackingStateReason_Wrapper wrap_Func_void_TrackingState_TrackingStateReason(Func_void_TrackingState_TrackingStateReason value) noexcept {
714
+ return Func_void_TrackingState_TrackingStateReason_Wrapper(std::move(value));
715
+ }
716
+
717
+ // pragma MARK: std::vector<std::string>
718
+ /**
719
+ * Specialized version of `std::vector<std::string>`.
720
+ */
721
+ using std__vector_std__string_ = std::vector<std::string>;
722
+ inline std::vector<std::string> create_std__vector_std__string_(size_t size) noexcept {
723
+ std::vector<std::string> vector;
724
+ vector.reserve(size);
725
+ return vector;
726
+ }
727
+
728
+ // pragma MARK: std::function<void(const std::vector<std::shared_ptr<HybridARAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>
729
+ /**
730
+ * Specialized version of `std::function<void(const std::vector<std::shared_ptr<HybridARAnchorSpec>>&, const std::vector<std::shared_ptr<HybridARAnchorSpec>>&, const std::vector<std::string>&)>`.
731
+ */
732
+ using Func_void_std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__string_ = std::function<void(const std::vector<std::shared_ptr<HybridARAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>;
733
+ /**
734
+ * Wrapper class for a `std::function<void(const std::vector<std::shared_ptr<HybridARAnchorSpec>>& / * added * /, const std::vector<std::shared_ptr<HybridARAnchorSpec>>& / * updated * /, const std::vector<std::string>& / * removed * /)>`, this can be used from Swift.
735
+ */
736
+ class Func_void_std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__string__Wrapper final {
737
+ public:
738
+ explicit Func_void_std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__string__Wrapper(std::function<void(const std::vector<std::shared_ptr<HybridARAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>&& func): _function(std::make_unique<std::function<void(const std::vector<std::shared_ptr<HybridARAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>>(std::move(func))) {}
739
+ inline void call(std::vector<std::shared_ptr<HybridARAnchorSpec>> added, std::vector<std::shared_ptr<HybridARAnchorSpec>> updated, std::vector<std::string> removed) const noexcept {
740
+ _function->operator()(added, updated, removed);
741
+ }
742
+ private:
743
+ std::unique_ptr<std::function<void(const std::vector<std::shared_ptr<HybridARAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>> _function;
744
+ } SWIFT_NONCOPYABLE;
745
+ Func_void_std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__string_ create_Func_void_std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__string_(void* NON_NULL swiftClosureWrapper) noexcept;
746
+ inline Func_void_std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__string__Wrapper wrap_Func_void_std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__string_(Func_void_std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__string_ value) noexcept {
747
+ return Func_void_std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__shared_ptr_HybridARAnchorSpec___std__vector_std__string__Wrapper(std::move(value));
748
+ }
749
+
750
+ // pragma MARK: std::function<void(const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>
751
+ /**
752
+ * Specialized version of `std::function<void(const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>&, const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>&, const std::vector<std::string>&)>`.
753
+ */
754
+ using Func_void_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__string_ = std::function<void(const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>;
755
+ /**
756
+ * Wrapper class for a `std::function<void(const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& / * added * /, const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& / * updated * /, const std::vector<std::string>& / * removed * /)>`, this can be used from Swift.
757
+ */
758
+ class Func_void_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__string__Wrapper final {
759
+ public:
760
+ explicit Func_void_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__string__Wrapper(std::function<void(const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>&& func): _function(std::make_unique<std::function<void(const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>>(std::move(func))) {}
761
+ inline void call(std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>> added, std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>> updated, std::vector<std::string> removed) const noexcept {
762
+ _function->operator()(added, updated, removed);
763
+ }
764
+ private:
765
+ std::unique_ptr<std::function<void(const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARPlaneAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>> _function;
766
+ } SWIFT_NONCOPYABLE;
767
+ Func_void_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__string_ create_Func_void_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__string_(void* NON_NULL swiftClosureWrapper) noexcept;
768
+ inline Func_void_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__string__Wrapper wrap_Func_void_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__string_(Func_void_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__string_ value) noexcept {
769
+ return Func_void_std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__shared_ptr_HybridARPlaneAnchorSpec___std__vector_std__string__Wrapper(std::move(value));
770
+ }
771
+
772
+ // pragma MARK: std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>
773
+ /**
774
+ * Specialized version of `std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>`.
775
+ */
776
+ using std__vector_std__shared_ptr_HybridARMeshAnchorSpec__ = std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>;
777
+ inline std::vector<std::shared_ptr<HybridARMeshAnchorSpec>> create_std__vector_std__shared_ptr_HybridARMeshAnchorSpec__(size_t size) noexcept {
778
+ std::vector<std::shared_ptr<HybridARMeshAnchorSpec>> vector;
779
+ vector.reserve(size);
780
+ return vector;
781
+ }
782
+
783
+ // pragma MARK: std::function<void(const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>
784
+ /**
785
+ * Specialized version of `std::function<void(const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>&, const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>&, const std::vector<std::string>&)>`.
786
+ */
787
+ using Func_void_std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__string_ = std::function<void(const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>;
788
+ /**
789
+ * Wrapper class for a `std::function<void(const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& / * added * /, const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& / * updated * /, const std::vector<std::string>& / * removed * /)>`, this can be used from Swift.
790
+ */
791
+ class Func_void_std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__string__Wrapper final {
792
+ public:
793
+ explicit Func_void_std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__string__Wrapper(std::function<void(const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>&& func): _function(std::make_unique<std::function<void(const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>>(std::move(func))) {}
794
+ inline void call(std::vector<std::shared_ptr<HybridARMeshAnchorSpec>> added, std::vector<std::shared_ptr<HybridARMeshAnchorSpec>> updated, std::vector<std::string> removed) const noexcept {
795
+ _function->operator()(added, updated, removed);
796
+ }
797
+ private:
798
+ std::unique_ptr<std::function<void(const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& /* added */, const std::vector<std::shared_ptr<HybridARMeshAnchorSpec>>& /* updated */, const std::vector<std::string>& /* removed */)>> _function;
799
+ } SWIFT_NONCOPYABLE;
800
+ Func_void_std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__string_ create_Func_void_std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__string_(void* NON_NULL swiftClosureWrapper) noexcept;
801
+ inline Func_void_std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__string__Wrapper wrap_Func_void_std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__string_(Func_void_std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__string_ value) noexcept {
802
+ return Func_void_std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__shared_ptr_HybridARMeshAnchorSpec___std__vector_std__string__Wrapper(std::move(value));
803
+ }
804
+
805
+ // pragma MARK: std::shared_ptr<HybridARSessionSpec>
806
+ /**
807
+ * Specialized version of `std::shared_ptr<HybridARSessionSpec>`.
808
+ */
809
+ using std__shared_ptr_HybridARSessionSpec_ = std::shared_ptr<HybridARSessionSpec>;
810
+ std::shared_ptr<HybridARSessionSpec> create_std__shared_ptr_HybridARSessionSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
811
+ void* NON_NULL get_std__shared_ptr_HybridARSessionSpec_(std__shared_ptr_HybridARSessionSpec_ cppType);
812
+
813
+ // pragma MARK: std::weak_ptr<HybridARSessionSpec>
814
+ using std__weak_ptr_HybridARSessionSpec_ = std::weak_ptr<HybridARSessionSpec>;
815
+ inline std__weak_ptr_HybridARSessionSpec_ weakify_std__shared_ptr_HybridARSessionSpec_(const std::shared_ptr<HybridARSessionSpec>& strong) noexcept { return strong; }
816
+
817
+ // pragma MARK: Result<CameraPose>
818
+ using Result_CameraPose_ = Result<CameraPose>;
819
+ inline Result_CameraPose_ create_Result_CameraPose_(const CameraPose& value) noexcept {
820
+ return Result<CameraPose>::withValue(value);
821
+ }
822
+ inline Result_CameraPose_ create_Result_CameraPose_(const std::exception_ptr& error) noexcept {
823
+ return Result<CameraPose>::withError(error);
824
+ }
825
+
826
+ // pragma MARK: Result<std::optional<std::shared_ptr<HybridARRaycastResultSpec>>>
827
+ using Result_std__optional_std__shared_ptr_HybridARRaycastResultSpec___ = Result<std::optional<std::shared_ptr<HybridARRaycastResultSpec>>>;
828
+ inline Result_std__optional_std__shared_ptr_HybridARRaycastResultSpec___ create_Result_std__optional_std__shared_ptr_HybridARRaycastResultSpec___(const std::optional<std::shared_ptr<HybridARRaycastResultSpec>>& value) noexcept {
829
+ return Result<std::optional<std::shared_ptr<HybridARRaycastResultSpec>>>::withValue(value);
830
+ }
831
+ inline Result_std__optional_std__shared_ptr_HybridARRaycastResultSpec___ create_Result_std__optional_std__shared_ptr_HybridARRaycastResultSpec___(const std::exception_ptr& error) noexcept {
832
+ return Result<std::optional<std::shared_ptr<HybridARRaycastResultSpec>>>::withError(error);
833
+ }
834
+
835
+ // pragma MARK: Result<std::vector<std::shared_ptr<HybridARRaycastResultSpec>>>
836
+ using Result_std__vector_std__shared_ptr_HybridARRaycastResultSpec___ = Result<std::vector<std::shared_ptr<HybridARRaycastResultSpec>>>;
837
+ inline Result_std__vector_std__shared_ptr_HybridARRaycastResultSpec___ create_Result_std__vector_std__shared_ptr_HybridARRaycastResultSpec___(const std::vector<std::shared_ptr<HybridARRaycastResultSpec>>& value) noexcept {
838
+ return Result<std::vector<std::shared_ptr<HybridARRaycastResultSpec>>>::withValue(value);
839
+ }
840
+ inline Result_std__vector_std__shared_ptr_HybridARRaycastResultSpec___ create_Result_std__vector_std__shared_ptr_HybridARRaycastResultSpec___(const std::exception_ptr& error) noexcept {
841
+ return Result<std::vector<std::shared_ptr<HybridARRaycastResultSpec>>>::withError(error);
842
+ }
843
+
844
+ // pragma MARK: Result<std::shared_ptr<HybridARAnchorSpec>>
845
+ using Result_std__shared_ptr_HybridARAnchorSpec__ = Result<std::shared_ptr<HybridARAnchorSpec>>;
846
+ inline Result_std__shared_ptr_HybridARAnchorSpec__ create_Result_std__shared_ptr_HybridARAnchorSpec__(const std::shared_ptr<HybridARAnchorSpec>& value) noexcept {
847
+ return Result<std::shared_ptr<HybridARAnchorSpec>>::withValue(value);
848
+ }
849
+ inline Result_std__shared_ptr_HybridARAnchorSpec__ create_Result_std__shared_ptr_HybridARAnchorSpec__(const std::exception_ptr& error) noexcept {
850
+ return Result<std::shared_ptr<HybridARAnchorSpec>>::withError(error);
851
+ }
852
+
853
+ // pragma MARK: Result<std::shared_ptr<HybridARMeasurementSpec>>
854
+ using Result_std__shared_ptr_HybridARMeasurementSpec__ = Result<std::shared_ptr<HybridARMeasurementSpec>>;
855
+ inline Result_std__shared_ptr_HybridARMeasurementSpec__ create_Result_std__shared_ptr_HybridARMeasurementSpec__(const std::shared_ptr<HybridARMeasurementSpec>& value) noexcept {
856
+ return Result<std::shared_ptr<HybridARMeasurementSpec>>::withValue(value);
857
+ }
858
+ inline Result_std__shared_ptr_HybridARMeasurementSpec__ create_Result_std__shared_ptr_HybridARMeasurementSpec__(const std::exception_ptr& error) noexcept {
859
+ return Result<std::shared_ptr<HybridARMeasurementSpec>>::withError(error);
860
+ }
861
+
862
+ // pragma MARK: Result<std::shared_ptr<Promise<std::shared_ptr<HybridARWorldMapSpec>>>>
863
+ using Result_std__shared_ptr_Promise_std__shared_ptr_HybridARWorldMapSpec____ = Result<std::shared_ptr<Promise<std::shared_ptr<HybridARWorldMapSpec>>>>;
864
+ inline Result_std__shared_ptr_Promise_std__shared_ptr_HybridARWorldMapSpec____ create_Result_std__shared_ptr_Promise_std__shared_ptr_HybridARWorldMapSpec____(const std::shared_ptr<Promise<std::shared_ptr<HybridARWorldMapSpec>>>& value) noexcept {
865
+ return Result<std::shared_ptr<Promise<std::shared_ptr<HybridARWorldMapSpec>>>>::withValue(value);
866
+ }
867
+ inline Result_std__shared_ptr_Promise_std__shared_ptr_HybridARWorldMapSpec____ create_Result_std__shared_ptr_Promise_std__shared_ptr_HybridARWorldMapSpec____(const std::exception_ptr& error) noexcept {
868
+ return Result<std::shared_ptr<Promise<std::shared_ptr<HybridARWorldMapSpec>>>>::withError(error);
869
+ }
870
+
871
+ // pragma MARK: Result<std::function<void()>>
872
+ using Result_std__function_void____ = Result<std::function<void()>>;
873
+ inline Result_std__function_void____ create_Result_std__function_void____(const std::function<void()>& value) noexcept {
874
+ return Result<std::function<void()>>::withValue(value);
875
+ }
876
+ inline Result_std__function_void____ create_Result_std__function_void____(const std::exception_ptr& error) noexcept {
877
+ return Result<std::function<void()>>::withError(error);
878
+ }
879
+
880
+ // pragma MARK: Result<LiDARCapabilities>
881
+ using Result_LiDARCapabilities_ = Result<LiDARCapabilities>;
882
+ inline Result_LiDARCapabilities_ create_Result_LiDARCapabilities_(const LiDARCapabilities& value) noexcept {
883
+ return Result<LiDARCapabilities>::withValue(value);
884
+ }
885
+ inline Result_LiDARCapabilities_ create_Result_LiDARCapabilities_(const std::exception_ptr& error) noexcept {
886
+ return Result<LiDARCapabilities>::withError(error);
887
+ }
888
+
889
+ // pragma MARK: std::optional<ARViewHitResult>
890
+ /**
891
+ * Specialized version of `std::optional<ARViewHitResult>`.
892
+ */
893
+ using std__optional_ARViewHitResult_ = std::optional<ARViewHitResult>;
894
+ inline std::optional<ARViewHitResult> create_std__optional_ARViewHitResult_(const ARViewHitResult& value) noexcept {
895
+ return std::optional<ARViewHitResult>(value);
896
+ }
897
+ inline bool has_value_std__optional_ARViewHitResult_(const std::optional<ARViewHitResult>& optional) noexcept {
898
+ return optional.has_value();
899
+ }
900
+ inline ARViewHitResult get_std__optional_ARViewHitResult_(const std::optional<ARViewHitResult>& optional) noexcept {
901
+ return *optional;
902
+ }
903
+
904
+ // pragma MARK: std::shared_ptr<HybridARViewSpec>
905
+ /**
906
+ * Specialized version of `std::shared_ptr<HybridARViewSpec>`.
907
+ */
908
+ using std__shared_ptr_HybridARViewSpec_ = std::shared_ptr<HybridARViewSpec>;
909
+ std::shared_ptr<HybridARViewSpec> create_std__shared_ptr_HybridARViewSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
910
+ void* NON_NULL get_std__shared_ptr_HybridARViewSpec_(std__shared_ptr_HybridARViewSpec_ cppType);
911
+
912
+ // pragma MARK: std::weak_ptr<HybridARViewSpec>
913
+ using std__weak_ptr_HybridARViewSpec_ = std::weak_ptr<HybridARViewSpec>;
914
+ inline std__weak_ptr_HybridARViewSpec_ weakify_std__shared_ptr_HybridARViewSpec_(const std::shared_ptr<HybridARViewSpec>& strong) noexcept { return strong; }
915
+
916
+ // pragma MARK: Result<std::optional<ARViewHitResult>>
917
+ using Result_std__optional_ARViewHitResult__ = Result<std::optional<ARViewHitResult>>;
918
+ inline Result_std__optional_ARViewHitResult__ create_Result_std__optional_ARViewHitResult__(const std::optional<ARViewHitResult>& value) noexcept {
919
+ return Result<std::optional<ARViewHitResult>>::withValue(value);
920
+ }
921
+ inline Result_std__optional_ARViewHitResult__ create_Result_std__optional_ARViewHitResult__(const std::exception_ptr& error) noexcept {
922
+ return Result<std::optional<ARViewHitResult>>::withError(error);
923
+ }
924
+
925
+ // pragma MARK: Result<bool>
926
+ using Result_bool_ = Result<bool>;
927
+ inline Result_bool_ create_Result_bool_(bool value) noexcept {
928
+ return Result<bool>::withValue(std::move(value));
929
+ }
930
+ inline Result_bool_ create_Result_bool_(const std::exception_ptr& error) noexcept {
931
+ return Result<bool>::withError(error);
932
+ }
933
+
934
+ } // namespace margelo::nitro::ar::bridge::swift