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,169 @@
1
+ ///
2
+ /// NitroAR-Swift-Cxx-Umbrella.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 `PlaneAlignment` to properly resolve imports.
54
+ namespace margelo::nitro::ar { enum class PlaneAlignment; }
55
+ // Forward declaration of `PlaneClassification` to properly resolve imports.
56
+ namespace margelo::nitro::ar { enum class PlaneClassification; }
57
+ // Forward declaration of `PlaneDetectionMode` to properly resolve imports.
58
+ namespace margelo::nitro::ar { enum class PlaneDetectionMode; }
59
+ // Forward declaration of `RaycastAlignment` to properly resolve imports.
60
+ namespace margelo::nitro::ar { enum class RaycastAlignment; }
61
+ // Forward declaration of `RaycastQuery` to properly resolve imports.
62
+ namespace margelo::nitro::ar { struct RaycastQuery; }
63
+ // Forward declaration of `RaycastTarget` to properly resolve imports.
64
+ namespace margelo::nitro::ar { enum class RaycastTarget; }
65
+ // Forward declaration of `SceneReconstructionMode` to properly resolve imports.
66
+ namespace margelo::nitro::ar { enum class SceneReconstructionMode; }
67
+ // Forward declaration of `TrackingStateReason` to properly resolve imports.
68
+ namespace margelo::nitro::ar { enum class TrackingStateReason; }
69
+ // Forward declaration of `TrackingState` to properly resolve imports.
70
+ namespace margelo::nitro::ar { enum class TrackingState; }
71
+ // Forward declaration of `WorldAlignment` to properly resolve imports.
72
+ namespace margelo::nitro::ar { enum class WorldAlignment; }
73
+ // Forward declaration of `WorldMappingStatus` to properly resolve imports.
74
+ namespace margelo::nitro::ar { enum class WorldMappingStatus; }
75
+
76
+ // Include C++ defined types
77
+ #include "ARSessionConfiguration.hpp"
78
+ #include "ARViewHitResult.hpp"
79
+ #include "CameraPose.hpp"
80
+ #include "EnvironmentTexturing.hpp"
81
+ #include "HybridARAnchorSpec.hpp"
82
+ #include "HybridARBoundingBoxBuilderSpec.hpp"
83
+ #include "HybridARDepthDataSpec.hpp"
84
+ #include "HybridARDirectionalLightEstimateSpec.hpp"
85
+ #include "HybridARFrameSpec.hpp"
86
+ #include "HybridARLightEstimateSpec.hpp"
87
+ #include "HybridARMeasurementSpec.hpp"
88
+ #include "HybridARMeshAnchorSpec.hpp"
89
+ #include "HybridARPlaneAnchorSpec.hpp"
90
+ #include "HybridARPlaneGeometrySpec.hpp"
91
+ #include "HybridARRaycastResultSpec.hpp"
92
+ #include "HybridARSessionSpec.hpp"
93
+ #include "HybridARViewSpec.hpp"
94
+ #include "HybridARVolumeSpec.hpp"
95
+ #include "HybridARWorldMapSpec.hpp"
96
+ #include "LiDARCapabilities.hpp"
97
+ #include "MeshClassification.hpp"
98
+ #include "PlaneAlignment.hpp"
99
+ #include "PlaneClassification.hpp"
100
+ #include "PlaneDetectionMode.hpp"
101
+ #include "RaycastAlignment.hpp"
102
+ #include "RaycastQuery.hpp"
103
+ #include "RaycastTarget.hpp"
104
+ #include "SceneReconstructionMode.hpp"
105
+ #include "TrackingState.hpp"
106
+ #include "TrackingStateReason.hpp"
107
+ #include "WorldAlignment.hpp"
108
+ #include "WorldMappingStatus.hpp"
109
+ #include <NitroModules/Promise.hpp>
110
+ #include <NitroModules/Result.hpp>
111
+ #include <exception>
112
+ #include <functional>
113
+ #include <memory>
114
+ #include <optional>
115
+ #include <string>
116
+ #include <vector>
117
+
118
+ // C++ helpers for Swift
119
+ #include "NitroAR-Swift-Cxx-Bridge.hpp"
120
+
121
+ // Common C++ types used in Swift
122
+ #include <NitroModules/ArrayBufferHolder.hpp>
123
+ #include <NitroModules/AnyMapUtils.hpp>
124
+ #include <NitroModules/RuntimeError.hpp>
125
+ #include <NitroModules/DateToChronoDate.hpp>
126
+
127
+ // Forward declarations of Swift defined types
128
+ // Forward declaration of `HybridARAnchorSpec_cxx` to properly resolve imports.
129
+ namespace NitroAR { class HybridARAnchorSpec_cxx; }
130
+ // Forward declaration of `HybridARBoundingBoxBuilderSpec_cxx` to properly resolve imports.
131
+ namespace NitroAR { class HybridARBoundingBoxBuilderSpec_cxx; }
132
+ // Forward declaration of `HybridARDepthDataSpec_cxx` to properly resolve imports.
133
+ namespace NitroAR { class HybridARDepthDataSpec_cxx; }
134
+ // Forward declaration of `HybridARDirectionalLightEstimateSpec_cxx` to properly resolve imports.
135
+ namespace NitroAR { class HybridARDirectionalLightEstimateSpec_cxx; }
136
+ // Forward declaration of `HybridARFrameSpec_cxx` to properly resolve imports.
137
+ namespace NitroAR { class HybridARFrameSpec_cxx; }
138
+ // Forward declaration of `HybridARLightEstimateSpec_cxx` to properly resolve imports.
139
+ namespace NitroAR { class HybridARLightEstimateSpec_cxx; }
140
+ // Forward declaration of `HybridARMeasurementSpec_cxx` to properly resolve imports.
141
+ namespace NitroAR { class HybridARMeasurementSpec_cxx; }
142
+ // Forward declaration of `HybridARMeshAnchorSpec_cxx` to properly resolve imports.
143
+ namespace NitroAR { class HybridARMeshAnchorSpec_cxx; }
144
+ // Forward declaration of `HybridARPlaneAnchorSpec_cxx` to properly resolve imports.
145
+ namespace NitroAR { class HybridARPlaneAnchorSpec_cxx; }
146
+ // Forward declaration of `HybridARPlaneGeometrySpec_cxx` to properly resolve imports.
147
+ namespace NitroAR { class HybridARPlaneGeometrySpec_cxx; }
148
+ // Forward declaration of `HybridARRaycastResultSpec_cxx` to properly resolve imports.
149
+ namespace NitroAR { class HybridARRaycastResultSpec_cxx; }
150
+ // Forward declaration of `HybridARSessionSpec_cxx` to properly resolve imports.
151
+ namespace NitroAR { class HybridARSessionSpec_cxx; }
152
+ // Forward declaration of `HybridARViewSpec_cxx` to properly resolve imports.
153
+ namespace NitroAR { class HybridARViewSpec_cxx; }
154
+ // Forward declaration of `HybridARVolumeSpec_cxx` to properly resolve imports.
155
+ namespace NitroAR { class HybridARVolumeSpec_cxx; }
156
+ // Forward declaration of `HybridARWorldMapSpec_cxx` to properly resolve imports.
157
+ namespace NitroAR { class HybridARWorldMapSpec_cxx; }
158
+
159
+ // Include Swift defined types
160
+ #if __has_include("NitroAR-Swift.h")
161
+ // This header is generated by Xcode/Swift on every app build.
162
+ // If it cannot be found, make sure the Swift module's name (= podspec name) is actually "NitroAR".
163
+ #include "NitroAR-Swift.h"
164
+ // Same as above, but used when building with frameworks (`use_frameworks`)
165
+ #elif __has_include(<NitroAR/NitroAR-Swift.h>)
166
+ #include <NitroAR/NitroAR-Swift.h>
167
+ #else
168
+ #error NitroAR's autogenerated Swift header cannot be found! Make sure the Swift module's name (= podspec name) is actually "NitroAR", and try building the app first.
169
+ #endif
@@ -0,0 +1,49 @@
1
+ ///
2
+ /// NitroARAutolinking.mm
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
+ #import <Foundation/Foundation.h>
9
+ #import <NitroModules/HybridObjectRegistry.hpp>
10
+ #import "NitroAR-Swift-Cxx-Umbrella.hpp"
11
+ #import <type_traits>
12
+
13
+ #include "HybridARSessionSpecSwift.hpp"
14
+ #include "HybridARBoundingBoxBuilderSpecSwift.hpp"
15
+ #include "HybridARViewSpecSwift.hpp"
16
+
17
+ @interface NitroARAutolinking : NSObject
18
+ @end
19
+
20
+ @implementation NitroARAutolinking
21
+
22
+ + (void) load {
23
+ using namespace margelo::nitro;
24
+ using namespace margelo::nitro::ar;
25
+
26
+ HybridObjectRegistry::registerHybridObjectConstructor(
27
+ "ARSession",
28
+ []() -> std::shared_ptr<HybridObject> {
29
+ std::shared_ptr<HybridARSessionSpec> hybridObject = NitroAR::NitroARAutolinking::createARSession();
30
+ return hybridObject;
31
+ }
32
+ );
33
+ HybridObjectRegistry::registerHybridObjectConstructor(
34
+ "ARBoundingBoxBuilder",
35
+ []() -> std::shared_ptr<HybridObject> {
36
+ std::shared_ptr<HybridARBoundingBoxBuilderSpec> hybridObject = NitroAR::NitroARAutolinking::createARBoundingBoxBuilder();
37
+ return hybridObject;
38
+ }
39
+ );
40
+ HybridObjectRegistry::registerHybridObjectConstructor(
41
+ "ARView",
42
+ []() -> std::shared_ptr<HybridObject> {
43
+ std::shared_ptr<HybridARViewSpec> hybridObject = NitroAR::NitroARAutolinking::createARView();
44
+ return hybridObject;
45
+ }
46
+ );
47
+ }
48
+
49
+ @end
@@ -0,0 +1,50 @@
1
+ ///
2
+ /// NitroARAutolinking.swift
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
+ import NitroModules
9
+
10
+ // TODO: Use empty enums once Swift supports exporting them as namespaces
11
+ // See: https://github.com/swiftlang/swift/pull/83616
12
+ public final class NitroARAutolinking {
13
+ public typealias bridge = margelo.nitro.ar.bridge.swift
14
+
15
+ public static func createARSession() -> bridge.std__shared_ptr_HybridARSessionSpec_ {
16
+ let hybridObject = HybridARSession()
17
+ return { () -> bridge.std__shared_ptr_HybridARSessionSpec_ in
18
+ let __cxxWrapped = hybridObject.getCxxWrapper()
19
+ return __cxxWrapped.getCxxPart()
20
+ }()
21
+ }
22
+
23
+ public static func isARSessionRecyclable() -> Bool {
24
+ return HybridARSession.self is any RecyclableView.Type
25
+ }
26
+
27
+ public static func createARBoundingBoxBuilder() -> bridge.std__shared_ptr_HybridARBoundingBoxBuilderSpec_ {
28
+ let hybridObject = HybridARBoundingBoxBuilder()
29
+ return { () -> bridge.std__shared_ptr_HybridARBoundingBoxBuilderSpec_ in
30
+ let __cxxWrapped = hybridObject.getCxxWrapper()
31
+ return __cxxWrapped.getCxxPart()
32
+ }()
33
+ }
34
+
35
+ public static func isARBoundingBoxBuilderRecyclable() -> Bool {
36
+ return HybridARBoundingBoxBuilder.self is any RecyclableView.Type
37
+ }
38
+
39
+ public static func createARView() -> bridge.std__shared_ptr_HybridARViewSpec_ {
40
+ let hybridObject = HybridARView()
41
+ return { () -> bridge.std__shared_ptr_HybridARViewSpec_ in
42
+ let __cxxWrapped = hybridObject.getCxxWrapper()
43
+ return __cxxWrapped.getCxxPart()
44
+ }()
45
+ }
46
+
47
+ public static func isARViewRecyclable() -> Bool {
48
+ return HybridARView.self is any RecyclableView.Type
49
+ }
50
+ }
@@ -0,0 +1,11 @@
1
+ ///
2
+ /// HybridARAnchorSpecSwift.cpp
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
+ #include "HybridARAnchorSpecSwift.hpp"
9
+
10
+ namespace margelo::nitro::ar {
11
+ } // namespace margelo::nitro::ar
@@ -0,0 +1,99 @@
1
+ ///
2
+ /// HybridARAnchorSpecSwift.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
+ #include "HybridARAnchorSpec.hpp"
11
+
12
+ // Forward declaration of `HybridARAnchorSpec_cxx` to properly resolve imports.
13
+ namespace NitroAR { class HybridARAnchorSpec_cxx; }
14
+
15
+
16
+
17
+ #include <string>
18
+ #include <vector>
19
+ #include <optional>
20
+
21
+ #include "NitroAR-Swift-Cxx-Umbrella.hpp"
22
+
23
+ namespace margelo::nitro::ar {
24
+
25
+ /**
26
+ * The C++ part of HybridARAnchorSpec_cxx.swift.
27
+ *
28
+ * HybridARAnchorSpecSwift (C++) accesses HybridARAnchorSpec_cxx (Swift), and might
29
+ * contain some additional bridging code for C++ <> Swift interop.
30
+ *
31
+ * Since this obviously introduces an overhead, I hope at some point in
32
+ * the future, HybridARAnchorSpec_cxx can directly inherit from the C++ class HybridARAnchorSpec
33
+ * to simplify the whole structure and memory management.
34
+ */
35
+ class HybridARAnchorSpecSwift: public virtual HybridARAnchorSpec {
36
+ public:
37
+ // Constructor from a Swift instance
38
+ explicit HybridARAnchorSpecSwift(const NitroAR::HybridARAnchorSpec_cxx& swiftPart):
39
+ HybridObject(HybridARAnchorSpec::TAG),
40
+ _swiftPart(swiftPart) { }
41
+
42
+ public:
43
+ // Get the Swift part
44
+ inline NitroAR::HybridARAnchorSpec_cxx& getSwiftPart() noexcept {
45
+ return _swiftPart;
46
+ }
47
+
48
+ public:
49
+ inline size_t getExternalMemorySize() noexcept override {
50
+ return _swiftPart.getMemorySize();
51
+ }
52
+ bool equals(const std::shared_ptr<HybridObject>& other) override {
53
+ if (auto otherCast = std::dynamic_pointer_cast<HybridARAnchorSpecSwift>(other)) {
54
+ return _swiftPart.equals(otherCast->_swiftPart);
55
+ }
56
+ return false;
57
+ }
58
+ void dispose() noexcept override {
59
+ _swiftPart.dispose();
60
+ }
61
+ std::string toString() override {
62
+ return _swiftPart.toString();
63
+ }
64
+
65
+ public:
66
+ // Properties
67
+ inline std::string getIdentifier() noexcept override {
68
+ auto __result = _swiftPart.getIdentifier();
69
+ return __result;
70
+ }
71
+ inline std::vector<double> getPosition() noexcept override {
72
+ auto __result = _swiftPart.getPosition();
73
+ return __result;
74
+ }
75
+ inline std::vector<double> getRotation() noexcept override {
76
+ auto __result = _swiftPart.getRotation();
77
+ return __result;
78
+ }
79
+ inline std::vector<double> getTransform() noexcept override {
80
+ auto __result = _swiftPart.getTransform();
81
+ return __result;
82
+ }
83
+ inline bool getIsTracked() noexcept override {
84
+ return _swiftPart.isTracked();
85
+ }
86
+ inline std::optional<std::string> getLabel() noexcept override {
87
+ auto __result = _swiftPart.getLabel();
88
+ return __result;
89
+ }
90
+
91
+ public:
92
+ // Methods
93
+
94
+
95
+ private:
96
+ NitroAR::HybridARAnchorSpec_cxx _swiftPart;
97
+ };
98
+
99
+ } // namespace margelo::nitro::ar
@@ -0,0 +1,11 @@
1
+ ///
2
+ /// HybridARBoundingBoxBuilderSpecSwift.cpp
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
+ #include "HybridARBoundingBoxBuilderSpecSwift.hpp"
9
+
10
+ namespace margelo::nitro::ar {
11
+ } // namespace margelo::nitro::ar
@@ -0,0 +1,95 @@
1
+ ///
2
+ /// HybridARBoundingBoxBuilderSpecSwift.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
+ #include "HybridARBoundingBoxBuilderSpec.hpp"
11
+
12
+ // Forward declaration of `HybridARBoundingBoxBuilderSpec_cxx` to properly resolve imports.
13
+ namespace NitroAR { class HybridARBoundingBoxBuilderSpec_cxx; }
14
+
15
+ // Forward declaration of `HybridARAnchorSpec` to properly resolve imports.
16
+ namespace margelo::nitro::ar { class HybridARAnchorSpec; }
17
+ // Forward declaration of `HybridARVolumeSpec` to properly resolve imports.
18
+ namespace margelo::nitro::ar { class HybridARVolumeSpec; }
19
+
20
+ #include <memory>
21
+ #include "HybridARAnchorSpec.hpp"
22
+ #include "HybridARVolumeSpec.hpp"
23
+
24
+ #include "NitroAR-Swift-Cxx-Umbrella.hpp"
25
+
26
+ namespace margelo::nitro::ar {
27
+
28
+ /**
29
+ * The C++ part of HybridARBoundingBoxBuilderSpec_cxx.swift.
30
+ *
31
+ * HybridARBoundingBoxBuilderSpecSwift (C++) accesses HybridARBoundingBoxBuilderSpec_cxx (Swift), and might
32
+ * contain some additional bridging code for C++ <> Swift interop.
33
+ *
34
+ * Since this obviously introduces an overhead, I hope at some point in
35
+ * the future, HybridARBoundingBoxBuilderSpec_cxx can directly inherit from the C++ class HybridARBoundingBoxBuilderSpec
36
+ * to simplify the whole structure and memory management.
37
+ */
38
+ class HybridARBoundingBoxBuilderSpecSwift: public virtual HybridARBoundingBoxBuilderSpec {
39
+ public:
40
+ // Constructor from a Swift instance
41
+ explicit HybridARBoundingBoxBuilderSpecSwift(const NitroAR::HybridARBoundingBoxBuilderSpec_cxx& swiftPart):
42
+ HybridObject(HybridARBoundingBoxBuilderSpec::TAG),
43
+ _swiftPart(swiftPart) { }
44
+
45
+ public:
46
+ // Get the Swift part
47
+ inline NitroAR::HybridARBoundingBoxBuilderSpec_cxx& getSwiftPart() noexcept {
48
+ return _swiftPart;
49
+ }
50
+
51
+ public:
52
+ inline size_t getExternalMemorySize() noexcept override {
53
+ return _swiftPart.getMemorySize();
54
+ }
55
+ bool equals(const std::shared_ptr<HybridObject>& other) override {
56
+ if (auto otherCast = std::dynamic_pointer_cast<HybridARBoundingBoxBuilderSpecSwift>(other)) {
57
+ return _swiftPart.equals(otherCast->_swiftPart);
58
+ }
59
+ return false;
60
+ }
61
+ void dispose() noexcept override {
62
+ _swiftPart.dispose();
63
+ }
64
+ std::string toString() override {
65
+ return _swiftPart.toString();
66
+ }
67
+
68
+ public:
69
+ // Properties
70
+ inline bool getCanBuild() noexcept override {
71
+ return _swiftPart.getCanBuild();
72
+ }
73
+
74
+ public:
75
+ // Methods
76
+ inline void addBaseAnchor(const std::shared_ptr<HybridARAnchorSpec>& anchor) override {
77
+ auto __result = _swiftPart.addBaseAnchor(anchor);
78
+ if (__result.hasError()) [[unlikely]] {
79
+ std::rethrow_exception(__result.error());
80
+ }
81
+ }
82
+ inline std::shared_ptr<HybridARVolumeSpec> build() override {
83
+ auto __result = _swiftPart.build();
84
+ if (__result.hasError()) [[unlikely]] {
85
+ std::rethrow_exception(__result.error());
86
+ }
87
+ auto __value = std::move(__result.value());
88
+ return __value;
89
+ }
90
+
91
+ private:
92
+ NitroAR::HybridARBoundingBoxBuilderSpec_cxx _swiftPart;
93
+ };
94
+
95
+ } // namespace margelo::nitro::ar
@@ -0,0 +1,11 @@
1
+ ///
2
+ /// HybridARDepthDataSpecSwift.cpp
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
+ #include "HybridARDepthDataSpecSwift.hpp"
9
+
10
+ namespace margelo::nitro::ar {
11
+ } // namespace margelo::nitro::ar
@@ -0,0 +1,103 @@
1
+ ///
2
+ /// HybridARDepthDataSpecSwift.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
+ #include "HybridARDepthDataSpec.hpp"
11
+
12
+ // Forward declaration of `HybridARDepthDataSpec_cxx` to properly resolve imports.
13
+ namespace NitroAR { class HybridARDepthDataSpec_cxx; }
14
+
15
+
16
+
17
+ #include <vector>
18
+
19
+ #include "NitroAR-Swift-Cxx-Umbrella.hpp"
20
+
21
+ namespace margelo::nitro::ar {
22
+
23
+ /**
24
+ * The C++ part of HybridARDepthDataSpec_cxx.swift.
25
+ *
26
+ * HybridARDepthDataSpecSwift (C++) accesses HybridARDepthDataSpec_cxx (Swift), and might
27
+ * contain some additional bridging code for C++ <> Swift interop.
28
+ *
29
+ * Since this obviously introduces an overhead, I hope at some point in
30
+ * the future, HybridARDepthDataSpec_cxx can directly inherit from the C++ class HybridARDepthDataSpec
31
+ * to simplify the whole structure and memory management.
32
+ */
33
+ class HybridARDepthDataSpecSwift: public virtual HybridARDepthDataSpec {
34
+ public:
35
+ // Constructor from a Swift instance
36
+ explicit HybridARDepthDataSpecSwift(const NitroAR::HybridARDepthDataSpec_cxx& swiftPart):
37
+ HybridObject(HybridARDepthDataSpec::TAG),
38
+ _swiftPart(swiftPart) { }
39
+
40
+ public:
41
+ // Get the Swift part
42
+ inline NitroAR::HybridARDepthDataSpec_cxx& getSwiftPart() noexcept {
43
+ return _swiftPart;
44
+ }
45
+
46
+ public:
47
+ inline size_t getExternalMemorySize() noexcept override {
48
+ return _swiftPart.getMemorySize();
49
+ }
50
+ bool equals(const std::shared_ptr<HybridObject>& other) override {
51
+ if (auto otherCast = std::dynamic_pointer_cast<HybridARDepthDataSpecSwift>(other)) {
52
+ return _swiftPart.equals(otherCast->_swiftPart);
53
+ }
54
+ return false;
55
+ }
56
+ void dispose() noexcept override {
57
+ _swiftPart.dispose();
58
+ }
59
+ std::string toString() override {
60
+ return _swiftPart.toString();
61
+ }
62
+
63
+ public:
64
+ // Properties
65
+ inline double getWidth() noexcept override {
66
+ return _swiftPart.getWidth();
67
+ }
68
+ inline double getHeight() noexcept override {
69
+ return _swiftPart.getHeight();
70
+ }
71
+ inline std::vector<double> getDepthMap() noexcept override {
72
+ auto __result = _swiftPart.getDepthMap();
73
+ return __result;
74
+ }
75
+ inline std::vector<double> getConfidenceMap() noexcept override {
76
+ auto __result = _swiftPart.getConfidenceMap();
77
+ return __result;
78
+ }
79
+
80
+ public:
81
+ // Methods
82
+ inline double getDepthAt(double x, double y) override {
83
+ auto __result = _swiftPart.getDepthAt(std::forward<decltype(x)>(x), std::forward<decltype(y)>(y));
84
+ if (__result.hasError()) [[unlikely]] {
85
+ std::rethrow_exception(__result.error());
86
+ }
87
+ auto __value = std::move(__result.value());
88
+ return __value;
89
+ }
90
+ inline double getConfidenceAt(double x, double y) override {
91
+ auto __result = _swiftPart.getConfidenceAt(std::forward<decltype(x)>(x), std::forward<decltype(y)>(y));
92
+ if (__result.hasError()) [[unlikely]] {
93
+ std::rethrow_exception(__result.error());
94
+ }
95
+ auto __value = std::move(__result.value());
96
+ return __value;
97
+ }
98
+
99
+ private:
100
+ NitroAR::HybridARDepthDataSpec_cxx _swiftPart;
101
+ };
102
+
103
+ } // namespace margelo::nitro::ar
@@ -0,0 +1,11 @@
1
+ ///
2
+ /// HybridARDirectionalLightEstimateSpecSwift.cpp
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
+ #include "HybridARDirectionalLightEstimateSpecSwift.hpp"
9
+
10
+ namespace margelo::nitro::ar {
11
+ } // namespace margelo::nitro::ar