react-native-executorch 0.4.8 → 0.5.1-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1021) hide show
  1. package/android/CMakeLists.txt +17 -0
  2. package/android/build.gradle +76 -13
  3. package/android/libs/classes.jar +0 -0
  4. package/android/src/main/cpp/CMakeLists.txt +73 -0
  5. package/android/src/main/cpp/ETInstallerModule.cpp +76 -0
  6. package/android/src/main/cpp/ETInstallerModule.h +43 -0
  7. package/android/src/main/java/com/swmansion/rnexecutorch/ETInstaller.kt +66 -0
  8. package/android/src/main/java/com/swmansion/rnexecutorch/LLM.kt +3 -3
  9. package/android/src/main/java/com/swmansion/rnexecutorch/RnExecutorchPackage.kt +7 -113
  10. package/common/ada/ada.cpp +17406 -0
  11. package/common/ada/ada.h +10274 -0
  12. package/common/pfft/pfft.c +2205 -0
  13. package/common/pfft/pfft.h +185 -0
  14. package/common/rnexecutorch/Log.h +489 -0
  15. package/common/rnexecutorch/RnExecutorchInstaller.cpp +78 -0
  16. package/common/rnexecutorch/RnExecutorchInstaller.h +112 -0
  17. package/common/rnexecutorch/TokenizerModule.cpp +52 -0
  18. package/common/rnexecutorch/TokenizerModule.h +26 -0
  19. package/common/rnexecutorch/data_processing/FFT.cpp +21 -0
  20. package/common/rnexecutorch/data_processing/FFT.h +23 -0
  21. package/common/rnexecutorch/data_processing/FileUtils.h +30 -0
  22. package/common/rnexecutorch/data_processing/ImageProcessing.cpp +240 -0
  23. package/common/rnexecutorch/data_processing/ImageProcessing.h +55 -0
  24. package/common/rnexecutorch/data_processing/Numerical.cpp +82 -0
  25. package/common/rnexecutorch/data_processing/Numerical.h +23 -0
  26. package/common/rnexecutorch/data_processing/base64.cpp +110 -0
  27. package/common/rnexecutorch/data_processing/base64.h +46 -0
  28. package/common/rnexecutorch/data_processing/dsp.cpp +65 -0
  29. package/common/rnexecutorch/data_processing/dsp.h +12 -0
  30. package/common/rnexecutorch/host_objects/JSTensorViewIn.h +12 -0
  31. package/common/rnexecutorch/host_objects/JSTensorViewOut.h +22 -0
  32. package/common/rnexecutorch/host_objects/JsiConversions.h +410 -0
  33. package/common/rnexecutorch/host_objects/ModelHostObject.h +239 -0
  34. package/common/rnexecutorch/jsi/JsiHostObject.cpp +108 -0
  35. package/common/rnexecutorch/jsi/JsiHostObject.h +87 -0
  36. package/common/rnexecutorch/jsi/OwningArrayBuffer.h +40 -0
  37. package/common/rnexecutorch/jsi/Promise.cpp +20 -0
  38. package/common/rnexecutorch/jsi/Promise.h +69 -0
  39. package/common/rnexecutorch/jsi/RuntimeAwareCache.h +58 -0
  40. package/common/rnexecutorch/jsi/RuntimeLifecycleMonitor.cpp +53 -0
  41. package/common/rnexecutorch/jsi/RuntimeLifecycleMonitor.h +35 -0
  42. package/common/rnexecutorch/metaprogramming/ConstructorHelpers.h +131 -0
  43. package/common/rnexecutorch/metaprogramming/FunctionHelpers.h +50 -0
  44. package/common/rnexecutorch/metaprogramming/TypeConcepts.h +37 -0
  45. package/common/rnexecutorch/models/BaseModel.cpp +181 -0
  46. package/common/rnexecutorch/models/BaseModel.h +47 -0
  47. package/common/rnexecutorch/models/EncoderDecoderBase.cpp +21 -0
  48. package/common/rnexecutorch/models/EncoderDecoderBase.h +31 -0
  49. package/common/rnexecutorch/models/classification/Classification.cpp +72 -0
  50. package/common/rnexecutorch/models/classification/Classification.h +26 -0
  51. package/{ios/RnExecutorch/models/classification/Constants.mm → common/rnexecutorch/models/classification/Constants.h} +7 -2
  52. package/common/rnexecutorch/models/embeddings/BaseEmbeddings.cpp +27 -0
  53. package/common/rnexecutorch/models/embeddings/BaseEmbeddings.h +17 -0
  54. package/common/rnexecutorch/models/embeddings/image/ImageEmbeddings.cpp +45 -0
  55. package/common/rnexecutorch/models/embeddings/image/ImageEmbeddings.h +23 -0
  56. package/common/rnexecutorch/models/embeddings/text/TextEmbeddings.cpp +61 -0
  57. package/common/rnexecutorch/models/embeddings/text/TextEmbeddings.h +26 -0
  58. package/{ios/RnExecutorch/models/image_segmentation/Constants.mm → common/rnexecutorch/models/image_segmentation/Constants.h} +7 -2
  59. package/common/rnexecutorch/models/image_segmentation/ImageSegmentation.cpp +173 -0
  60. package/common/rnexecutorch/models/image_segmentation/ImageSegmentation.h +43 -0
  61. package/{ios/RnExecutorch/utils/Constants.mm → common/rnexecutorch/models/object_detection/Constants.h} +9 -2
  62. package/common/rnexecutorch/models/object_detection/ObjectDetection.cpp +82 -0
  63. package/common/rnexecutorch/models/object_detection/ObjectDetection.h +31 -0
  64. package/{ios/RnExecutorch/utils/ObjectDetectionUtils.mm → common/rnexecutorch/models/object_detection/Utils.cpp} +10 -30
  65. package/common/rnexecutorch/models/object_detection/Utils.h +17 -0
  66. package/common/rnexecutorch/models/ocr/CTCLabelConverter.cpp +88 -0
  67. package/common/rnexecutorch/models/ocr/CTCLabelConverter.h +29 -0
  68. package/common/rnexecutorch/models/ocr/Constants.h +34 -0
  69. package/common/rnexecutorch/models/ocr/Detector.cpp +102 -0
  70. package/common/rnexecutorch/models/ocr/Detector.h +30 -0
  71. package/common/rnexecutorch/models/ocr/DetectorUtils.cpp +703 -0
  72. package/common/rnexecutorch/models/ocr/DetectorUtils.h +80 -0
  73. package/common/rnexecutorch/models/ocr/OCR.cpp +52 -0
  74. package/common/rnexecutorch/models/ocr/OCR.h +36 -0
  75. package/common/rnexecutorch/models/ocr/RecognitionHandler.cpp +107 -0
  76. package/common/rnexecutorch/models/ocr/RecognitionHandler.h +40 -0
  77. package/common/rnexecutorch/models/ocr/RecognitionHandlerUtils.cpp +153 -0
  78. package/common/rnexecutorch/models/ocr/RecognitionHandlerUtils.h +72 -0
  79. package/common/rnexecutorch/models/ocr/Recognizer.cpp +80 -0
  80. package/common/rnexecutorch/models/ocr/Recognizer.h +36 -0
  81. package/common/rnexecutorch/models/ocr/RecognizerUtils.cpp +202 -0
  82. package/common/rnexecutorch/models/ocr/RecognizerUtils.h +70 -0
  83. package/common/rnexecutorch/models/ocr/Types.h +37 -0
  84. package/common/rnexecutorch/models/speech_to_text/MoonshineStrategy.cpp +31 -0
  85. package/common/rnexecutorch/models/speech_to_text/MoonshineStrategy.h +21 -0
  86. package/common/rnexecutorch/models/speech_to_text/SpeechToText.cpp +70 -0
  87. package/common/rnexecutorch/models/speech_to_text/SpeechToText.h +31 -0
  88. package/common/rnexecutorch/models/speech_to_text/SpeechToTextStrategy.h +26 -0
  89. package/common/rnexecutorch/models/speech_to_text/WhisperStrategy.cpp +38 -0
  90. package/common/rnexecutorch/models/speech_to_text/WhisperStrategy.h +25 -0
  91. package/common/rnexecutorch/models/style_transfer/StyleTransfer.cpp +55 -0
  92. package/common/rnexecutorch/models/style_transfer/StyleTransfer.h +29 -0
  93. package/common/rnexecutorch/models/vertical_ocr/VerticalDetector.cpp +92 -0
  94. package/common/rnexecutorch/models/vertical_ocr/VerticalDetector.h +49 -0
  95. package/common/rnexecutorch/models/vertical_ocr/VerticalOCR.cpp +180 -0
  96. package/common/rnexecutorch/models/vertical_ocr/VerticalOCR.h +78 -0
  97. package/common/rnexecutorch/tests/LogTest.cpp +530 -0
  98. package/common/rnexecutorch/tests/README.md +20 -0
  99. package/common/rnexecutorch/tests/run_all_tests.sh +14 -0
  100. package/common/rnexecutorch/tests/run_test.sh +18 -0
  101. package/ios/ExecutorchLib.xcframework/Info.plist +4 -4
  102. package/ios/ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/ExecutorchLib +0 -0
  103. package/ios/ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/Info.plist +0 -0
  104. package/ios/ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/ExecutorchLib +0 -0
  105. package/ios/ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/Info.plist +0 -0
  106. package/ios/RnExecutorch/ETInstaller.h +8 -0
  107. package/ios/RnExecutorch/ETInstaller.mm +56 -0
  108. package/ios/RnExecutorch/utils/Conversions.h +8 -9
  109. package/ios/RnExecutorch/utils/Numerical.h +2 -0
  110. package/ios/RnExecutorch.xcodeproj/project.pbxproj +73 -0
  111. package/lib/common/Logger.d.ts +8 -0
  112. package/lib/common/Logger.js +19 -0
  113. package/lib/constants/modelUrls.d.ts +89 -0
  114. package/lib/constants/modelUrls.js +116 -0
  115. package/lib/constants/sttDefaults.js +66 -0
  116. package/lib/controllers/LLMController.js +210 -0
  117. package/lib/controllers/OCRController.js +65 -0
  118. package/lib/controllers/SpeechToTextController.d.ts +52 -0
  119. package/lib/controllers/SpeechToTextController.js +343 -0
  120. package/lib/hooks/natural_language_processing/useSpeechToText.js +44 -0
  121. package/lib/index.d.ts +50 -0
  122. package/{src/index.tsx → lib/index.js} +22 -10
  123. package/lib/module/Error.js +2 -0
  124. package/lib/module/Error.js.map +1 -1
  125. package/lib/module/common/Logger.js +23 -0
  126. package/lib/module/common/Logger.js.map +1 -0
  127. package/lib/module/constants/llmDefaults.js +8 -0
  128. package/lib/module/constants/llmDefaults.js.map +1 -1
  129. package/lib/module/constants/modelUrls.js +300 -84
  130. package/lib/module/constants/modelUrls.js.map +1 -1
  131. package/lib/module/constants/ocr/models.js +181 -286
  132. package/lib/module/constants/ocr/models.js.map +1 -1
  133. package/lib/module/constants/ocr/symbols.js +63 -63
  134. package/lib/module/constants/sttDefaults.js +12 -10
  135. package/lib/module/constants/sttDefaults.js.map +1 -1
  136. package/lib/module/controllers/LLMController.js +17 -11
  137. package/lib/module/controllers/LLMController.js.map +1 -1
  138. package/lib/module/controllers/OCRController.js +16 -9
  139. package/lib/module/controllers/OCRController.js.map +1 -1
  140. package/lib/module/controllers/SpeechToTextController.js +32 -19
  141. package/lib/module/controllers/SpeechToTextController.js.map +1 -1
  142. package/lib/module/controllers/VerticalOCRController.js +16 -9
  143. package/lib/module/controllers/VerticalOCRController.js.map +1 -1
  144. package/lib/module/hooks/computer_vision/useClassification.js +5 -5
  145. package/lib/module/hooks/computer_vision/useClassification.js.map +1 -1
  146. package/lib/module/hooks/computer_vision/useImageEmbeddings.js +13 -0
  147. package/lib/module/hooks/computer_vision/useImageEmbeddings.js.map +1 -0
  148. package/lib/module/hooks/computer_vision/useImageSegmentation.js +4 -4
  149. package/lib/module/hooks/computer_vision/useImageSegmentation.js.map +1 -1
  150. package/lib/module/hooks/computer_vision/useOCR.js +14 -15
  151. package/lib/module/hooks/computer_vision/useOCR.js.map +1 -1
  152. package/lib/module/hooks/computer_vision/useObjectDetection.js +5 -5
  153. package/lib/module/hooks/computer_vision/useObjectDetection.js.map +1 -1
  154. package/lib/module/hooks/computer_vision/useStyleTransfer.js +5 -5
  155. package/lib/module/hooks/computer_vision/useStyleTransfer.js.map +1 -1
  156. package/lib/module/hooks/computer_vision/useVerticalOCR.js +16 -17
  157. package/lib/module/hooks/computer_vision/useVerticalOCR.js.map +1 -1
  158. package/lib/module/hooks/general/useExecutorchModule.js +5 -3
  159. package/lib/module/hooks/general/useExecutorchModule.js.map +1 -1
  160. package/lib/module/hooks/natural_language_processing/useLLM.js +22 -25
  161. package/lib/module/hooks/natural_language_processing/useLLM.js.map +1 -1
  162. package/lib/module/hooks/natural_language_processing/useSpeechToText.js +16 -14
  163. package/lib/module/hooks/natural_language_processing/useSpeechToText.js.map +1 -1
  164. package/lib/module/hooks/natural_language_processing/useTextEmbeddings.js +4 -5
  165. package/lib/module/hooks/natural_language_processing/useTextEmbeddings.js.map +1 -1
  166. package/lib/module/hooks/natural_language_processing/useTokenizer.js +20 -19
  167. package/lib/module/hooks/natural_language_processing/useTokenizer.js.map +1 -1
  168. package/lib/module/hooks/useNonStaticModule.js +52 -0
  169. package/lib/module/hooks/useNonStaticModule.js.map +1 -0
  170. package/lib/module/index.js +16 -2
  171. package/lib/module/index.js.map +1 -1
  172. package/lib/module/modules/BaseModule.js +6 -3
  173. package/lib/module/modules/BaseModule.js.map +1 -1
  174. package/lib/module/modules/BaseNonStaticModule.js +17 -0
  175. package/lib/module/modules/BaseNonStaticModule.js.map +1 -0
  176. package/lib/module/modules/computer_vision/ClassificationModule.js +13 -8
  177. package/lib/module/modules/computer_vision/ClassificationModule.js.map +1 -1
  178. package/lib/module/modules/computer_vision/ImageEmbeddingsModule.js +19 -0
  179. package/lib/module/modules/computer_vision/ImageEmbeddingsModule.js.map +1 -0
  180. package/lib/module/modules/computer_vision/ImageSegmentationModule.js +21 -19
  181. package/lib/module/modules/computer_vision/ImageSegmentationModule.js.map +1 -1
  182. package/lib/module/modules/computer_vision/OCRModule.js +13 -10
  183. package/lib/module/modules/computer_vision/OCRModule.js.map +1 -1
  184. package/lib/module/modules/computer_vision/ObjectDetectionModule.js +13 -8
  185. package/lib/module/modules/computer_vision/ObjectDetectionModule.js.map +1 -1
  186. package/lib/module/modules/computer_vision/StyleTransferModule.js +13 -8
  187. package/lib/module/modules/computer_vision/StyleTransferModule.js.map +1 -1
  188. package/lib/module/modules/computer_vision/VerticalOCRModule.js +15 -10
  189. package/lib/module/modules/computer_vision/VerticalOCRModule.js.map +1 -1
  190. package/lib/module/modules/general/ExecutorchModule.js +10 -36
  191. package/lib/module/modules/general/ExecutorchModule.js.map +1 -1
  192. package/lib/module/modules/natural_language_processing/LLMModule.js +18 -22
  193. package/lib/module/modules/natural_language_processing/LLMModule.js.map +1 -1
  194. package/lib/module/modules/natural_language_processing/SpeechToTextModule.js +27 -16
  195. package/lib/module/modules/natural_language_processing/SpeechToTextModule.js.map +1 -1
  196. package/lib/module/modules/natural_language_processing/TextEmbeddingsModule.js +15 -8
  197. package/lib/module/modules/natural_language_processing/TextEmbeddingsModule.js.map +1 -1
  198. package/lib/module/modules/natural_language_processing/TokenizerModule.js +20 -14
  199. package/lib/module/modules/natural_language_processing/TokenizerModule.js.map +1 -1
  200. package/lib/module/native/NativeETInstaller.js +5 -0
  201. package/lib/module/native/NativeETInstaller.js.map +1 -0
  202. package/lib/module/native/RnExecutorchModules.js +2 -11
  203. package/lib/module/native/RnExecutorchModules.js.map +1 -1
  204. package/lib/module/types/common.js +25 -8
  205. package/lib/module/types/common.js.map +1 -1
  206. package/lib/module/types/stt.js +6 -0
  207. package/lib/module/types/stt.js.map +1 -1
  208. package/lib/module/utils/ResourceFetcher.js +276 -114
  209. package/lib/module/utils/ResourceFetcher.js.map +1 -1
  210. package/lib/module/utils/ResourceFetcherUtils.js +155 -0
  211. package/lib/module/utils/ResourceFetcherUtils.js.map +1 -0
  212. package/lib/module/utils/llm.js +41 -1
  213. package/lib/module/utils/llm.js.map +1 -1
  214. package/lib/modules/natural_language_processing/SpeechToTextModule.d.ts +14 -0
  215. package/lib/modules/natural_language_processing/SpeechToTextModule.js +30 -0
  216. package/lib/modules/natural_language_processing/TokenizerModule.js +29 -0
  217. package/lib/native/RnExecutorchModules.d.ts +3 -0
  218. package/lib/native/RnExecutorchModules.js +16 -0
  219. package/lib/typescript/Error.d.ts +2 -0
  220. package/lib/typescript/Error.d.ts.map +1 -1
  221. package/lib/typescript/common/Logger.d.ts +9 -0
  222. package/lib/typescript/common/Logger.d.ts.map +1 -0
  223. package/lib/typescript/constants/llmDefaults.d.ts +1 -0
  224. package/lib/typescript/constants/llmDefaults.d.ts.map +1 -1
  225. package/lib/typescript/constants/modelUrls.d.ts +223 -79
  226. package/lib/typescript/constants/modelUrls.d.ts.map +1 -1
  227. package/lib/typescript/constants/ocr/models.d.ts +882 -284
  228. package/lib/typescript/constants/ocr/models.d.ts.map +1 -1
  229. package/lib/typescript/constants/sttDefaults.d.ts +1 -0
  230. package/lib/typescript/constants/sttDefaults.d.ts.map +1 -1
  231. package/lib/typescript/controllers/LLMController.d.ts +3 -4
  232. package/lib/typescript/controllers/LLMController.d.ts.map +1 -1
  233. package/lib/typescript/controllers/OCRController.d.ts +5 -6
  234. package/lib/typescript/controllers/OCRController.d.ts.map +1 -1
  235. package/lib/typescript/controllers/SpeechToTextController.d.ts +11 -6
  236. package/lib/typescript/controllers/SpeechToTextController.d.ts.map +1 -1
  237. package/lib/typescript/controllers/VerticalOCRController.d.ts +5 -6
  238. package/lib/typescript/controllers/VerticalOCRController.d.ts.map +1 -1
  239. package/lib/typescript/hooks/computer_vision/useClassification.d.ts +8 -6
  240. package/lib/typescript/hooks/computer_vision/useClassification.d.ts.map +1 -1
  241. package/lib/typescript/hooks/computer_vision/useImageEmbeddings.d.ts +16 -0
  242. package/lib/typescript/hooks/computer_vision/useImageEmbeddings.d.ts.map +1 -0
  243. package/lib/typescript/hooks/computer_vision/useImageSegmentation.d.ts +5 -3
  244. package/lib/typescript/hooks/computer_vision/useImageSegmentation.d.ts.map +1 -1
  245. package/lib/typescript/hooks/computer_vision/useOCR.d.ts +4 -4
  246. package/lib/typescript/hooks/computer_vision/useOCR.d.ts.map +1 -1
  247. package/lib/typescript/hooks/computer_vision/useObjectDetection.d.ts +5 -3
  248. package/lib/typescript/hooks/computer_vision/useObjectDetection.d.ts.map +1 -1
  249. package/lib/typescript/hooks/computer_vision/useStyleTransfer.d.ts +5 -3
  250. package/lib/typescript/hooks/computer_vision/useStyleTransfer.d.ts.map +1 -1
  251. package/lib/typescript/hooks/computer_vision/useVerticalOCR.d.ts +3 -5
  252. package/lib/typescript/hooks/computer_vision/useVerticalOCR.d.ts.map +1 -1
  253. package/lib/typescript/hooks/general/useExecutorchModule.d.ts +1 -1
  254. package/lib/typescript/hooks/natural_language_processing/useLLM.d.ts +6 -4
  255. package/lib/typescript/hooks/natural_language_processing/useLLM.d.ts.map +1 -1
  256. package/lib/typescript/hooks/natural_language_processing/useSpeechToText.d.ts +7 -5
  257. package/lib/typescript/hooks/natural_language_processing/useSpeechToText.d.ts.map +1 -1
  258. package/lib/typescript/hooks/natural_language_processing/useTextEmbeddings.d.ts +9 -5
  259. package/lib/typescript/hooks/natural_language_processing/useTextEmbeddings.d.ts.map +1 -1
  260. package/lib/typescript/hooks/natural_language_processing/useTokenizer.d.ts +6 -4
  261. package/lib/typescript/hooks/natural_language_processing/useTokenizer.d.ts.map +1 -1
  262. package/lib/typescript/hooks/useNonStaticModule.d.ts +21 -0
  263. package/lib/typescript/hooks/useNonStaticModule.d.ts.map +1 -0
  264. package/lib/typescript/index.d.ts +18 -2
  265. package/lib/typescript/index.d.ts.map +1 -1
  266. package/lib/typescript/modules/BaseModule.d.ts +1 -1
  267. package/lib/typescript/modules/BaseModule.d.ts.map +1 -1
  268. package/lib/typescript/modules/BaseNonStaticModule.d.ts +10 -0
  269. package/lib/typescript/modules/BaseNonStaticModule.d.ts.map +1 -0
  270. package/lib/typescript/modules/computer_vision/ClassificationModule.d.ts +6 -6
  271. package/lib/typescript/modules/computer_vision/ClassificationModule.d.ts.map +1 -1
  272. package/lib/typescript/modules/computer_vision/ImageEmbeddingsModule.d.ts +9 -0
  273. package/lib/typescript/modules/computer_vision/ImageEmbeddingsModule.d.ts.map +1 -0
  274. package/lib/typescript/modules/computer_vision/ImageSegmentationModule.d.ts +8 -28
  275. package/lib/typescript/modules/computer_vision/ImageSegmentationModule.d.ts.map +1 -1
  276. package/lib/typescript/modules/computer_vision/OCRModule.d.ts +8 -7
  277. package/lib/typescript/modules/computer_vision/OCRModule.d.ts.map +1 -1
  278. package/lib/typescript/modules/computer_vision/ObjectDetectionModule.d.ts +7 -5
  279. package/lib/typescript/modules/computer_vision/ObjectDetectionModule.d.ts.map +1 -1
  280. package/lib/typescript/modules/computer_vision/StyleTransferModule.d.ts +6 -5
  281. package/lib/typescript/modules/computer_vision/StyleTransferModule.d.ts.map +1 -1
  282. package/lib/typescript/modules/computer_vision/VerticalOCRModule.d.ts +7 -8
  283. package/lib/typescript/modules/computer_vision/VerticalOCRModule.d.ts.map +1 -1
  284. package/lib/typescript/modules/general/ExecutorchModule.d.ts +5 -8
  285. package/lib/typescript/modules/general/ExecutorchModule.d.ts.map +1 -1
  286. package/lib/typescript/modules/natural_language_processing/LLMModule.d.ts +16 -16
  287. package/lib/typescript/modules/natural_language_processing/LLMModule.d.ts.map +1 -1
  288. package/lib/typescript/modules/natural_language_processing/SpeechToTextModule.d.ts +19 -9
  289. package/lib/typescript/modules/natural_language_processing/SpeechToTextModule.d.ts.map +1 -1
  290. package/lib/typescript/modules/natural_language_processing/TextEmbeddingsModule.d.ts +7 -5
  291. package/lib/typescript/modules/natural_language_processing/TextEmbeddingsModule.d.ts.map +1 -1
  292. package/lib/typescript/modules/natural_language_processing/TokenizerModule.d.ts +10 -9
  293. package/lib/typescript/modules/natural_language_processing/TokenizerModule.d.ts.map +1 -1
  294. package/lib/typescript/native/{NativeStyleTransfer.d.ts → NativeETInstaller.d.ts} +2 -3
  295. package/lib/typescript/native/NativeETInstaller.d.ts.map +1 -0
  296. package/lib/typescript/native/RnExecutorchModules.d.ts +3 -21
  297. package/lib/typescript/native/RnExecutorchModules.d.ts.map +1 -1
  298. package/lib/typescript/types/common.d.ts +30 -2
  299. package/lib/typescript/types/common.d.ts.map +1 -1
  300. package/lib/typescript/types/stt.d.ts +5 -1
  301. package/lib/typescript/types/stt.d.ts.map +1 -1
  302. package/lib/typescript/utils/ResourceFetcher.d.ts +18 -10
  303. package/lib/typescript/utils/ResourceFetcher.d.ts.map +1 -1
  304. package/lib/typescript/utils/ResourceFetcherUtils.d.ts +55 -0
  305. package/lib/typescript/utils/ResourceFetcherUtils.d.ts.map +1 -0
  306. package/lib/typescript/utils/llm.d.ts +4 -0
  307. package/lib/typescript/utils/llm.d.ts.map +1 -1
  308. package/lib/utils/ResourceFetcherUtils.js +119 -0
  309. package/lib/utils/llm.js +72 -0
  310. package/package.json +22 -64
  311. package/react-native-executorch.podspec +75 -3
  312. package/src/Error.ts +2 -0
  313. package/src/common/Logger.ts +25 -0
  314. package/src/constants/llmDefaults.ts +11 -0
  315. package/src/constants/modelUrls.ts +365 -168
  316. package/src/constants/ocr/models.ts +826 -395
  317. package/src/constants/ocr/symbols.ts +63 -63
  318. package/src/constants/sttDefaults.ts +14 -18
  319. package/src/controllers/LLMController.ts +28 -18
  320. package/src/controllers/OCRController.ts +24 -15
  321. package/src/controllers/SpeechToTextController.ts +53 -40
  322. package/src/controllers/VerticalOCRController.ts +24 -14
  323. package/src/hooks/computer_vision/useClassification.ts +10 -11
  324. package/src/hooks/computer_vision/useImageEmbeddings.ts +15 -0
  325. package/src/hooks/computer_vision/useImageSegmentation.ts +5 -8
  326. package/src/hooks/computer_vision/useOCR.ts +29 -21
  327. package/src/hooks/computer_vision/useObjectDetection.ts +6 -9
  328. package/src/hooks/computer_vision/useStyleTransfer.ts +6 -6
  329. package/src/hooks/computer_vision/useVerticalOCR.ts +30 -27
  330. package/src/hooks/general/useExecutorchModule.ts +3 -3
  331. package/src/hooks/natural_language_processing/useLLM.ts +38 -28
  332. package/src/hooks/natural_language_processing/useSpeechToText.ts +34 -26
  333. package/src/hooks/natural_language_processing/useTextEmbeddings.ts +11 -11
  334. package/src/hooks/natural_language_processing/useTokenizer.ts +22 -22
  335. package/src/hooks/useNonStaticModule.ts +74 -0
  336. package/src/index.ts +108 -0
  337. package/src/modules/BaseModule.ts +9 -3
  338. package/src/modules/BaseNonStaticModule.ts +26 -0
  339. package/src/modules/computer_vision/ClassificationModule.ts +20 -11
  340. package/src/modules/computer_vision/ImageEmbeddingsModule.ts +26 -0
  341. package/src/modules/computer_vision/ImageSegmentationModule.ts +35 -27
  342. package/src/modules/computer_vision/OCRModule.ts +23 -15
  343. package/src/modules/computer_vision/ObjectDetectionModule.ts +24 -11
  344. package/src/modules/computer_vision/StyleTransferModule.ts +20 -11
  345. package/src/modules/computer_vision/VerticalOCRModule.ts +25 -21
  346. package/src/modules/general/ExecutorchModule.ts +18 -48
  347. package/src/modules/natural_language_processing/LLMModule.ts +27 -30
  348. package/src/modules/natural_language_processing/SpeechToTextModule.ts +42 -37
  349. package/src/modules/natural_language_processing/TextEmbeddingsModule.ts +27 -12
  350. package/src/modules/natural_language_processing/TokenizerModule.ts +27 -17
  351. package/src/native/NativeETInstaller.ts +8 -0
  352. package/src/native/RnExecutorchModules.ts +4 -46
  353. package/src/types/common.ts +40 -12
  354. package/src/types/stt.ts +5 -1
  355. package/src/utils/ResourceFetcher.ts +338 -119
  356. package/src/utils/ResourceFetcherUtils.ts +186 -0
  357. package/src/utils/llm.ts +65 -1
  358. package/third-party/android/libs/executorch/arm64-v8a/libexecutorch.so +0 -0
  359. package/third-party/android/libs/executorch/x86_64/libexecutorch.so +0 -0
  360. package/third-party/android/libs/opencv/arm64-v8a/libopencv_core.a +0 -0
  361. package/third-party/android/libs/opencv/arm64-v8a/libopencv_features2d.a +0 -0
  362. package/third-party/android/libs/opencv/arm64-v8a/libopencv_highgui.a +0 -0
  363. package/third-party/android/libs/opencv/arm64-v8a/libopencv_imgproc.a +0 -0
  364. package/third-party/android/libs/opencv/arm64-v8a/libopencv_photo.a +0 -0
  365. package/third-party/android/libs/opencv/arm64-v8a/libopencv_video.a +0 -0
  366. package/third-party/android/libs/opencv/x86_64/libopencv_core.a +0 -0
  367. package/third-party/android/libs/opencv/x86_64/libopencv_features2d.a +0 -0
  368. package/third-party/android/libs/opencv/x86_64/libopencv_highgui.a +0 -0
  369. package/third-party/android/libs/opencv/x86_64/libopencv_imgproc.a +0 -0
  370. package/third-party/android/libs/opencv/x86_64/libopencv_photo.a +0 -0
  371. package/third-party/android/libs/opencv/x86_64/libopencv_video.a +0 -0
  372. package/third-party/android/libs/opencv-third-party/arm64-v8a/libkleidicv.a +0 -0
  373. package/third-party/android/libs/opencv-third-party/arm64-v8a/libkleidicv_hal.a +0 -0
  374. package/third-party/android/libs/opencv-third-party/arm64-v8a/libkleidicv_thread.a +0 -0
  375. package/third-party/include/c10/macros/Export.h +163 -0
  376. package/third-party/include/c10/macros/Macros.h +497 -0
  377. package/third-party/include/c10/util/BFloat16-inl.h +342 -0
  378. package/third-party/include/c10/util/BFloat16-math.h +266 -0
  379. package/third-party/include/c10/util/BFloat16.h +125 -0
  380. package/third-party/include/c10/util/Half-inl.h +347 -0
  381. package/third-party/include/c10/util/Half.h +416 -0
  382. package/third-party/include/c10/util/TypeSafeSignMath.h +133 -0
  383. package/third-party/include/c10/util/bit_cast.h +43 -0
  384. package/third-party/include/c10/util/floating_point_utils.h +33 -0
  385. package/third-party/include/c10/util/irange.h +107 -0
  386. package/third-party/include/executorch/ExecuTorch.h +13 -0
  387. package/third-party/include/executorch/ExecuTorchError.h +16 -0
  388. package/third-party/include/executorch/ExecuTorchLog.h +76 -0
  389. package/third-party/include/executorch/ExecuTorchModule.h +286 -0
  390. package/third-party/include/executorch/ExecuTorchTensor.h +742 -0
  391. package/third-party/include/executorch/ExecuTorchValue.h +219 -0
  392. package/third-party/include/executorch/extension/module/module.h +492 -0
  393. package/third-party/include/executorch/extension/tensor/tensor.h +13 -0
  394. package/third-party/include/executorch/extension/tensor/tensor_accessor.h +190 -0
  395. package/third-party/include/executorch/extension/tensor/tensor_ptr.h +347 -0
  396. package/third-party/include/executorch/extension/tensor/tensor_ptr_maker.h +653 -0
  397. package/third-party/include/executorch/runtime/backend/backend_execution_context.h +71 -0
  398. package/third-party/include/executorch/runtime/backend/backend_init_context.h +72 -0
  399. package/third-party/include/executorch/runtime/backend/interface.h +166 -0
  400. package/third-party/include/executorch/runtime/core/array_ref.h +235 -0
  401. package/third-party/include/executorch/runtime/core/data_loader.h +136 -0
  402. package/third-party/include/executorch/runtime/core/defines.h +20 -0
  403. package/third-party/include/executorch/runtime/core/error.h +229 -0
  404. package/third-party/include/executorch/runtime/core/evalue.h +521 -0
  405. package/third-party/include/executorch/runtime/core/event_tracer.h +565 -0
  406. package/third-party/include/executorch/runtime/core/event_tracer_hooks.h +323 -0
  407. package/third-party/include/executorch/runtime/core/event_tracer_hooks_delegate.h +197 -0
  408. package/third-party/include/executorch/runtime/core/exec_aten/exec_aten.h +147 -0
  409. package/third-party/include/executorch/runtime/core/exec_aten/util/dim_order_util.h +263 -0
  410. package/third-party/include/executorch/runtime/core/exec_aten/util/scalar_type_util.h +1331 -0
  411. package/third-party/include/executorch/runtime/core/exec_aten/util/tensor_dimension_limit.h +21 -0
  412. package/third-party/include/executorch/runtime/core/exec_aten/util/tensor_shape_to_c_string.h +69 -0
  413. package/third-party/include/executorch/runtime/core/exec_aten/util/tensor_util.h +1250 -0
  414. package/third-party/include/executorch/runtime/core/freeable_buffer.h +107 -0
  415. package/third-party/include/executorch/runtime/core/hierarchical_allocator.h +107 -0
  416. package/third-party/include/executorch/runtime/core/memory_allocator.h +198 -0
  417. package/third-party/include/executorch/runtime/core/named_data_map.h +86 -0
  418. package/third-party/include/executorch/runtime/core/portable_type/bfloat16.h +27 -0
  419. package/third-party/include/executorch/runtime/core/portable_type/bfloat16_math.h +14 -0
  420. package/third-party/include/executorch/runtime/core/portable_type/bits_types.h +83 -0
  421. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/macros/Export.h +163 -0
  422. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/macros/Macros.h +497 -0
  423. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-inl.h +342 -0
  424. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-math.h +266 -0
  425. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/BFloat16.h +125 -0
  426. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/Half-inl.h +347 -0
  427. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/Half.h +416 -0
  428. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/TypeSafeSignMath.h +133 -0
  429. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/bit_cast.h +43 -0
  430. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/floating_point_utils.h +33 -0
  431. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/irange.h +107 -0
  432. package/third-party/include/executorch/runtime/core/portable_type/complex.h +44 -0
  433. package/third-party/include/executorch/runtime/core/portable_type/device.h +70 -0
  434. package/third-party/include/executorch/runtime/core/portable_type/half.h +27 -0
  435. package/third-party/include/executorch/runtime/core/portable_type/optional.h +36 -0
  436. package/third-party/include/executorch/runtime/core/portable_type/qint_types.h +83 -0
  437. package/third-party/include/executorch/runtime/core/portable_type/scalar.h +110 -0
  438. package/third-party/include/executorch/runtime/core/portable_type/scalar_type.h +154 -0
  439. package/third-party/include/executorch/runtime/core/portable_type/string_view.h +29 -0
  440. package/third-party/include/executorch/runtime/core/portable_type/tensor.h +142 -0
  441. package/third-party/include/executorch/runtime/core/portable_type/tensor_impl.h +261 -0
  442. package/third-party/include/executorch/runtime/core/portable_type/tensor_options.h +60 -0
  443. package/third-party/include/executorch/runtime/core/result.h +258 -0
  444. package/third-party/include/executorch/runtime/core/span.h +93 -0
  445. package/third-party/include/executorch/runtime/core/tag.h +71 -0
  446. package/third-party/include/executorch/runtime/core/tensor_layout.h +79 -0
  447. package/third-party/include/executorch/runtime/core/tensor_shape_dynamism.h +39 -0
  448. package/third-party/include/executorch/runtime/executor/memory_manager.h +113 -0
  449. package/third-party/include/executorch/runtime/executor/method.h +387 -0
  450. package/third-party/include/executorch/runtime/executor/method_meta.h +251 -0
  451. package/third-party/include/executorch/runtime/executor/program.h +320 -0
  452. package/third-party/include/executorch/runtime/executor/pte_data_map.h +144 -0
  453. package/third-party/include/executorch/runtime/executor/tensor_parser.h +156 -0
  454. package/third-party/include/executorch/runtime/kernel/kernel_runtime_context.h +122 -0
  455. package/third-party/include/executorch/runtime/kernel/operator_registry.h +278 -0
  456. package/third-party/include/executorch/runtime/platform/abort.h +36 -0
  457. package/third-party/include/executorch/runtime/platform/assert.h +119 -0
  458. package/third-party/include/executorch/runtime/platform/clock.h +43 -0
  459. package/third-party/include/executorch/runtime/platform/compat_unistd.h +75 -0
  460. package/third-party/include/executorch/runtime/platform/compiler.h +191 -0
  461. package/third-party/include/executorch/runtime/platform/log.h +177 -0
  462. package/third-party/include/executorch/runtime/platform/platform.h +133 -0
  463. package/third-party/include/executorch/runtime/platform/profiler.h +292 -0
  464. package/third-party/include/executorch/runtime/platform/runtime.h +35 -0
  465. package/third-party/include/executorch/runtime/platform/system.h +49 -0
  466. package/third-party/include/executorch/runtime/platform/types.h +24 -0
  467. package/third-party/include/executorch/schema/extended_header.h +76 -0
  468. package/third-party/include/opencv2/core/affine.hpp +676 -0
  469. package/third-party/include/opencv2/core/async.hpp +107 -0
  470. package/third-party/include/opencv2/core/base.hpp +735 -0
  471. package/third-party/include/opencv2/core/bindings_utils.hpp +279 -0
  472. package/third-party/include/opencv2/core/bufferpool.hpp +39 -0
  473. package/third-party/include/opencv2/core/check.hpp +231 -0
  474. package/third-party/include/opencv2/core/core.hpp +55 -0
  475. package/third-party/include/opencv2/core/core_c.h +3261 -0
  476. package/third-party/include/opencv2/core/cv_cpu_dispatch.h +404 -0
  477. package/third-party/include/opencv2/core/cv_cpu_helper.h +856 -0
  478. package/third-party/include/opencv2/core/cvdef.h +1003 -0
  479. package/third-party/include/opencv2/core/cvstd.hpp +196 -0
  480. package/third-party/include/opencv2/core/cvstd.inl.hpp +188 -0
  481. package/third-party/include/opencv2/core/cvstd_wrapper.hpp +187 -0
  482. package/third-party/include/opencv2/core/detail/async_promise.hpp +73 -0
  483. package/third-party/include/opencv2/core/detail/dispatch_helper.impl.hpp +48 -0
  484. package/third-party/include/opencv2/core/detail/exception_ptr.hpp +24 -0
  485. package/third-party/include/opencv2/core/dualquaternion.hpp +1054 -0
  486. package/third-party/include/opencv2/core/dualquaternion.inl.hpp +464 -0
  487. package/third-party/include/opencv2/core/eigen.hpp +405 -0
  488. package/third-party/include/opencv2/core/fast_math.hpp +433 -0
  489. package/third-party/include/opencv2/core/hal/hal.hpp +451 -0
  490. package/third-party/include/opencv2/core/hal/interface.h +191 -0
  491. package/third-party/include/opencv2/core/hal/intrin.hpp +1222 -0
  492. package/third-party/include/opencv2/core/hal/intrin_avx.hpp +3378 -0
  493. package/third-party/include/opencv2/core/hal/intrin_avx512.hpp +3688 -0
  494. package/third-party/include/opencv2/core/hal/intrin_cpp.hpp +3446 -0
  495. package/third-party/include/opencv2/core/hal/intrin_forward.hpp +195 -0
  496. package/third-party/include/opencv2/core/hal/intrin_lasx.hpp +3243 -0
  497. package/third-party/include/opencv2/core/hal/intrin_lsx.hpp +2671 -0
  498. package/third-party/include/opencv2/core/hal/intrin_math.hpp +772 -0
  499. package/third-party/include/opencv2/core/hal/intrin_msa.hpp +1973 -0
  500. package/third-party/include/opencv2/core/hal/intrin_neon.hpp +2710 -0
  501. package/third-party/include/opencv2/core/hal/intrin_rvv071.hpp +3452 -0
  502. package/third-party/include/opencv2/core/hal/intrin_rvv_scalable.hpp +2559 -0
  503. package/third-party/include/opencv2/core/hal/intrin_sse.hpp +3528 -0
  504. package/third-party/include/opencv2/core/hal/intrin_sse_em.hpp +175 -0
  505. package/third-party/include/opencv2/core/hal/intrin_vsx.hpp +1756 -0
  506. package/third-party/include/opencv2/core/hal/intrin_wasm.hpp +2911 -0
  507. package/third-party/include/opencv2/core/hal/msa_macros.h +2079 -0
  508. package/third-party/include/opencv2/core/hal/simd_utils.impl.hpp +313 -0
  509. package/third-party/include/opencv2/core/mat.hpp +3842 -0
  510. package/third-party/include/opencv2/core/mat.inl.hpp +2753 -0
  511. package/third-party/include/opencv2/core/matx.hpp +603 -0
  512. package/third-party/include/opencv2/core/matx.inl.hpp +1132 -0
  513. package/third-party/include/opencv2/core/neon_utils.hpp +127 -0
  514. package/third-party/include/opencv2/core/operations.hpp +610 -0
  515. package/third-party/include/opencv2/core/optim.hpp +362 -0
  516. package/third-party/include/opencv2/core/parallel/backend/parallel_for.openmp.hpp +66 -0
  517. package/third-party/include/opencv2/core/parallel/backend/parallel_for.tbb.hpp +148 -0
  518. package/third-party/include/opencv2/core/parallel/parallel_backend.hpp +108 -0
  519. package/third-party/include/opencv2/core/persistence.hpp +1321 -0
  520. package/third-party/include/opencv2/core/quaternion.hpp +1889 -0
  521. package/third-party/include/opencv2/core/quaternion.inl.hpp +907 -0
  522. package/third-party/include/opencv2/core/saturate.hpp +347 -0
  523. package/third-party/include/opencv2/core/simd_intrinsics.hpp +90 -0
  524. package/third-party/include/opencv2/core/softfloat.hpp +657 -0
  525. package/third-party/include/opencv2/core/sse_utils.hpp +861 -0
  526. package/third-party/include/opencv2/core/traits.hpp +417 -0
  527. package/third-party/include/opencv2/core/types.hpp +2368 -0
  528. package/third-party/include/opencv2/core/types_c.h +2064 -0
  529. package/third-party/include/opencv2/core/utility.hpp +1296 -0
  530. package/third-party/include/opencv2/core/utils/allocator_stats.hpp +31 -0
  531. package/third-party/include/opencv2/core/utils/allocator_stats.impl.hpp +111 -0
  532. package/third-party/include/opencv2/core/utils/filesystem.hpp +91 -0
  533. package/third-party/include/opencv2/core/utils/fp_control_utils.hpp +70 -0
  534. package/third-party/include/opencv2/core/utils/instrumentation.hpp +127 -0
  535. package/third-party/include/opencv2/core/utils/logger.defines.hpp +50 -0
  536. package/third-party/include/opencv2/core/utils/logger.hpp +258 -0
  537. package/third-party/include/opencv2/core/utils/logtag.hpp +27 -0
  538. package/third-party/include/opencv2/core/utils/tls.hpp +230 -0
  539. package/third-party/include/opencv2/core/utils/trace.hpp +281 -0
  540. package/third-party/include/opencv2/core/version.hpp +29 -0
  541. package/third-party/include/opencv2/core/vsx_utils.hpp +1115 -0
  542. package/third-party/include/opencv2/core.hpp +3699 -0
  543. package/third-party/include/opencv2/cvconfig.h +155 -0
  544. package/third-party/include/opencv2/dnn/dnn.hpp +51 -0
  545. package/third-party/include/opencv2/dnn.hpp +17 -0
  546. package/third-party/include/opencv2/features2d/features2d.hpp +55 -0
  547. package/third-party/include/opencv2/features2d/hal/interface.h +32 -0
  548. package/third-party/include/opencv2/features2d.hpp +1756 -0
  549. package/third-party/include/opencv2/highgui/highgui.hpp +113 -0
  550. package/third-party/include/opencv2/highgui.hpp +17 -0
  551. package/third-party/include/opencv2/imgproc/bindings.hpp +34 -0
  552. package/third-party/include/opencv2/imgproc/detail/gcgraph.hpp +355 -0
  553. package/third-party/include/opencv2/imgproc/detail/legacy.hpp +35 -0
  554. package/third-party/include/opencv2/imgproc/hal/hal.hpp +246 -0
  555. package/third-party/include/opencv2/imgproc/hal/interface.h +52 -0
  556. package/third-party/include/opencv2/imgproc/imgproc.hpp +55 -0
  557. package/third-party/include/opencv2/imgproc/imgproc_c.h +1261 -0
  558. package/third-party/include/opencv2/imgproc/segmentation.hpp +168 -0
  559. package/third-party/include/opencv2/imgproc/types_c.h +632 -0
  560. package/third-party/include/opencv2/imgproc.hpp +5956 -0
  561. package/third-party/include/opencv2/opencv.hpp +102 -0
  562. package/third-party/include/opencv2/opencv_modules.hpp +19 -0
  563. package/third-party/include/opencv2/photo/legacy/constants_c.h +10 -0
  564. package/third-party/include/opencv2/photo/photo.hpp +55 -0
  565. package/third-party/include/opencv2/photo.hpp +975 -0
  566. package/third-party/include/opencv2/video/background_segm.hpp +341 -0
  567. package/third-party/include/opencv2/video/detail/tracking.detail.hpp +435 -0
  568. package/third-party/include/opencv2/video/legacy/constants_c.h +15 -0
  569. package/third-party/include/opencv2/video/tracking.hpp +1014 -0
  570. package/third-party/include/opencv2/video/video.hpp +55 -0
  571. package/third-party/include/opencv2/video.hpp +65 -0
  572. package/third-party/include/tokenizers-cpp/tokenizers_c.h +61 -0
  573. package/third-party/include/tokenizers-cpp/tokenizers_cpp.h +118 -0
  574. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/ETModel.h +27 -0
  575. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/ETModel.mm +249 -0
  576. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/HuggingFaceTokenizer.h +14 -0
  577. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/HuggingFaceTokenizer.mm +80 -0
  578. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/LLaMARunner.h +32 -0
  579. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/LLaMARunner.mm +95 -0
  580. package/third-party/ios/ExecutorchLib/ExecutorchLib/InputType.h +12 -0
  581. package/third-party/ios/ExecutorchLib/ExecutorchLib/Utils.hpp +217 -0
  582. package/third-party/ios/ExecutorchLib/ExecutorchLib/model/Model.cpp +11 -0
  583. package/third-party/ios/ExecutorchLib/ExecutorchLib/model/Model.h +11 -0
  584. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/irunner.h +48 -0
  585. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/runner.cpp +278 -0
  586. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/runner.h +67 -0
  587. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/stats.h +164 -0
  588. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/text_decoder_runner.cpp +65 -0
  589. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/text_decoder_runner.h +105 -0
  590. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/text_prefiller.cpp +91 -0
  591. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/text_prefiller.h +51 -0
  592. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/text_token_generator.h +162 -0
  593. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/util.h +108 -0
  594. package/third-party/ios/ExecutorchLib/ExecutorchLib/sampler/sampler.cpp +193 -0
  595. package/third-party/ios/ExecutorchLib/ExecutorchLib/sampler/sampler.h +64 -0
  596. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/base64.h +202 -0
  597. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/bpe_tokenizer.cpp +313 -0
  598. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/bpe_tokenizer.h +57 -0
  599. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/llama_tiktoken.cpp +78 -0
  600. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/llama_tiktoken.h +23 -0
  601. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/tiktoken.cpp +427 -0
  602. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/tiktoken.h +87 -0
  603. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/tokenizer.h +76 -0
  604. package/third-party/ios/ExecutorchLib/ExecutorchLib.xcodeproj/project.pbxproj +683 -0
  605. package/third-party/ios/ExecutorchLib/ExecutorchLib.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  606. package/third-party/ios/ExecutorchLib/ExecutorchLib.xcodeproj/project.xcworkspace/xcuserdata/norbertklockiewicz.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  607. package/third-party/ios/ExecutorchLib/ExecutorchLib.xcodeproj/xcuserdata/norbertklockiewicz.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
  608. package/third-party/ios/ExecutorchLib/build.sh +44 -0
  609. package/third-party/ios/ExecutorchLib/frameworks/backend_coreml.xcframework/Info.plist +43 -0
  610. package/third-party/ios/ExecutorchLib/frameworks/backend_coreml.xcframework/ios-arm64/libbackend_coreml_ios.a +0 -0
  611. package/third-party/ios/ExecutorchLib/frameworks/backend_coreml.xcframework/ios-arm64-simulator/libbackend_coreml_simulator.a +0 -0
  612. package/third-party/ios/ExecutorchLib/frameworks/backend_mps.xcframework/Info.plist +43 -0
  613. package/third-party/ios/ExecutorchLib/frameworks/backend_mps.xcframework/ios-arm64/libbackend_mps_ios.a +0 -0
  614. package/third-party/ios/ExecutorchLib/frameworks/backend_mps.xcframework/ios-arm64-simulator/libbackend_mps_simulator.a +0 -0
  615. package/third-party/ios/ExecutorchLib/frameworks/backend_xnnpack.xcframework/Info.plist +43 -0
  616. package/third-party/ios/ExecutorchLib/frameworks/backend_xnnpack.xcframework/ios-arm64/libbackend_xnnpack_ios.a +0 -0
  617. package/third-party/ios/ExecutorchLib/frameworks/backend_xnnpack.xcframework/ios-arm64-simulator/libbackend_xnnpack_simulator.a +0 -0
  618. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/Info.plist +47 -0
  619. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/macros/Export.h +163 -0
  620. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/macros/Macros.h +497 -0
  621. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/BFloat16-inl.h +342 -0
  622. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/BFloat16-math.h +266 -0
  623. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/BFloat16.h +125 -0
  624. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/Half-inl.h +347 -0
  625. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/Half.h +416 -0
  626. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/TypeSafeSignMath.h +133 -0
  627. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/bit_cast.h +43 -0
  628. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/floating_point_utils.h +33 -0
  629. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/irange.h +107 -0
  630. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorch.h +13 -0
  631. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchError.h +16 -0
  632. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchLog.h +76 -0
  633. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchModule.h +286 -0
  634. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchTensor.h +742 -0
  635. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchValue.h +219 -0
  636. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/module/module.h +492 -0
  637. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor.h +13 -0
  638. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor_accessor.h +190 -0
  639. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor_ptr.h +347 -0
  640. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor_ptr_maker.h +653 -0
  641. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/backend/backend_execution_context.h +71 -0
  642. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/backend/backend_init_context.h +72 -0
  643. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/backend/interface.h +166 -0
  644. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/array_ref.h +235 -0
  645. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/data_loader.h +136 -0
  646. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/defines.h +20 -0
  647. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/error.h +229 -0
  648. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/evalue.h +521 -0
  649. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/event_tracer.h +565 -0
  650. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/event_tracer_hooks.h +323 -0
  651. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/event_tracer_hooks_delegate.h +197 -0
  652. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/exec_aten.h +147 -0
  653. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/dim_order_util.h +263 -0
  654. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/scalar_type_util.h +1331 -0
  655. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/tensor_dimension_limit.h +21 -0
  656. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/tensor_shape_to_c_string.h +69 -0
  657. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/tensor_util.h +1250 -0
  658. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/freeable_buffer.h +107 -0
  659. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/hierarchical_allocator.h +107 -0
  660. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/memory_allocator.h +198 -0
  661. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/named_data_map.h +86 -0
  662. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/bfloat16.h +27 -0
  663. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/bfloat16_math.h +14 -0
  664. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/bits_types.h +83 -0
  665. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Export.h +163 -0
  666. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Macros.h +497 -0
  667. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-inl.h +342 -0
  668. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-math.h +266 -0
  669. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16.h +125 -0
  670. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half-inl.h +347 -0
  671. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half.h +416 -0
  672. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/TypeSafeSignMath.h +133 -0
  673. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/bit_cast.h +43 -0
  674. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/floating_point_utils.h +33 -0
  675. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/irange.h +107 -0
  676. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/complex.h +44 -0
  677. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/device.h +70 -0
  678. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/half.h +27 -0
  679. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/optional.h +36 -0
  680. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/qint_types.h +83 -0
  681. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/scalar.h +110 -0
  682. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/scalar_type.h +154 -0
  683. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/string_view.h +29 -0
  684. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/tensor.h +142 -0
  685. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/tensor_impl.h +261 -0
  686. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/tensor_options.h +60 -0
  687. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/result.h +258 -0
  688. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/span.h +93 -0
  689. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/tag.h +71 -0
  690. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/tensor_layout.h +79 -0
  691. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/tensor_shape_dynamism.h +39 -0
  692. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/memory_manager.h +113 -0
  693. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/method.h +387 -0
  694. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/method_meta.h +251 -0
  695. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/program.h +320 -0
  696. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/pte_data_map.h +144 -0
  697. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/tensor_parser.h +156 -0
  698. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/kernel/kernel_runtime_context.h +122 -0
  699. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/kernel/operator_registry.h +278 -0
  700. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/abort.h +36 -0
  701. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/assert.h +119 -0
  702. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/clock.h +43 -0
  703. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/compat_unistd.h +75 -0
  704. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/compiler.h +191 -0
  705. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/log.h +177 -0
  706. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/platform.h +133 -0
  707. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/profiler.h +292 -0
  708. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/runtime.h +35 -0
  709. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/system.h +49 -0
  710. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/types.h +24 -0
  711. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/schema/extended_header.h +76 -0
  712. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/module.modulemap +5 -0
  713. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/libexecutorch_ios.a +0 -0
  714. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/macros/Export.h +163 -0
  715. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/macros/Macros.h +497 -0
  716. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/BFloat16-inl.h +342 -0
  717. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/BFloat16-math.h +266 -0
  718. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/BFloat16.h +125 -0
  719. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/Half-inl.h +347 -0
  720. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/Half.h +416 -0
  721. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/TypeSafeSignMath.h +133 -0
  722. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/bit_cast.h +43 -0
  723. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/floating_point_utils.h +33 -0
  724. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/irange.h +107 -0
  725. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorch.h +13 -0
  726. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchError.h +16 -0
  727. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchLog.h +76 -0
  728. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchModule.h +286 -0
  729. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchTensor.h +742 -0
  730. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchValue.h +219 -0
  731. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/module/module.h +492 -0
  732. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor.h +13 -0
  733. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor_accessor.h +190 -0
  734. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor_ptr.h +347 -0
  735. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor_ptr_maker.h +653 -0
  736. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/backend/backend_execution_context.h +71 -0
  737. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/backend/backend_init_context.h +72 -0
  738. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/backend/interface.h +166 -0
  739. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/array_ref.h +235 -0
  740. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/data_loader.h +136 -0
  741. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/defines.h +20 -0
  742. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/error.h +229 -0
  743. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/evalue.h +521 -0
  744. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/event_tracer.h +565 -0
  745. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/event_tracer_hooks.h +323 -0
  746. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/event_tracer_hooks_delegate.h +197 -0
  747. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/exec_aten.h +147 -0
  748. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/dim_order_util.h +263 -0
  749. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/scalar_type_util.h +1331 -0
  750. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/tensor_dimension_limit.h +21 -0
  751. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/tensor_shape_to_c_string.h +69 -0
  752. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/tensor_util.h +1250 -0
  753. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/freeable_buffer.h +107 -0
  754. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/hierarchical_allocator.h +107 -0
  755. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/memory_allocator.h +198 -0
  756. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/named_data_map.h +86 -0
  757. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/bfloat16.h +27 -0
  758. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/bfloat16_math.h +14 -0
  759. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/bits_types.h +83 -0
  760. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Export.h +163 -0
  761. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Macros.h +497 -0
  762. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-inl.h +342 -0
  763. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-math.h +266 -0
  764. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16.h +125 -0
  765. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half-inl.h +347 -0
  766. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half.h +416 -0
  767. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/TypeSafeSignMath.h +133 -0
  768. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/bit_cast.h +43 -0
  769. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/floating_point_utils.h +33 -0
  770. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/irange.h +107 -0
  771. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/complex.h +44 -0
  772. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/device.h +70 -0
  773. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/half.h +27 -0
  774. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/optional.h +36 -0
  775. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/qint_types.h +83 -0
  776. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/scalar.h +110 -0
  777. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/scalar_type.h +154 -0
  778. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/string_view.h +29 -0
  779. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/tensor.h +142 -0
  780. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/tensor_impl.h +261 -0
  781. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/tensor_options.h +60 -0
  782. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/result.h +258 -0
  783. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/span.h +93 -0
  784. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/tag.h +71 -0
  785. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/tensor_layout.h +79 -0
  786. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/tensor_shape_dynamism.h +39 -0
  787. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/memory_manager.h +113 -0
  788. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/method.h +387 -0
  789. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/method_meta.h +251 -0
  790. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/program.h +320 -0
  791. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/pte_data_map.h +144 -0
  792. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/tensor_parser.h +156 -0
  793. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/kernel/kernel_runtime_context.h +122 -0
  794. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/kernel/operator_registry.h +278 -0
  795. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/abort.h +36 -0
  796. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/assert.h +119 -0
  797. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/clock.h +43 -0
  798. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/compat_unistd.h +75 -0
  799. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/compiler.h +191 -0
  800. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/log.h +177 -0
  801. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/platform.h +133 -0
  802. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/profiler.h +292 -0
  803. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/runtime.h +35 -0
  804. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/system.h +49 -0
  805. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/types.h +24 -0
  806. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/schema/extended_header.h +76 -0
  807. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/module.modulemap +5 -0
  808. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/libexecutorch_simulator.a +0 -0
  809. package/third-party/ios/ExecutorchLib/frameworks/kernels_custom.xcframework/Info.plist +43 -0
  810. package/third-party/ios/ExecutorchLib/frameworks/kernels_custom.xcframework/ios-arm64/libkernels_custom_ios.a +0 -0
  811. package/third-party/ios/ExecutorchLib/frameworks/kernels_custom.xcframework/ios-arm64-simulator/libkernels_custom_simulator.a +0 -0
  812. package/third-party/ios/ExecutorchLib/frameworks/kernels_optimized.xcframework/Info.plist +43 -0
  813. package/third-party/ios/ExecutorchLib/frameworks/kernels_optimized.xcframework/ios-arm64/libkernels_optimized_ios.a +0 -0
  814. package/third-party/ios/ExecutorchLib/frameworks/kernels_optimized.xcframework/ios-arm64-simulator/libkernels_optimized_simulator.a +0 -0
  815. package/third-party/ios/ExecutorchLib/frameworks/kernels_portable.xcframework/Info.plist +43 -0
  816. package/third-party/ios/ExecutorchLib/frameworks/kernels_portable.xcframework/ios-arm64/libkernels_portable_ios.a +0 -0
  817. package/third-party/ios/ExecutorchLib/frameworks/kernels_portable.xcframework/ios-arm64-simulator/libkernels_portable_simulator.a +0 -0
  818. package/third-party/ios/ExecutorchLib/frameworks/kernels_quantized.xcframework/Info.plist +43 -0
  819. package/third-party/ios/ExecutorchLib/frameworks/kernels_quantized.xcframework/ios-arm64/libkernels_quantized_ios.a +0 -0
  820. package/third-party/ios/ExecutorchLib/frameworks/kernels_quantized.xcframework/ios-arm64-simulator/libkernels_quantized_simulator.a +0 -0
  821. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/Info.plist +43 -0
  822. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/bitmap256.h +82 -0
  823. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/filtered_re2.h +111 -0
  824. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/pod_array.h +43 -0
  825. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/prefilter.h +130 -0
  826. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/prefilter_tree.h +139 -0
  827. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/prog.h +483 -0
  828. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/re2.h +994 -0
  829. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/regexp.h +692 -0
  830. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/set.h +85 -0
  831. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/sparse_array.h +367 -0
  832. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/sparse_set.h +241 -0
  833. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/stringpiece.h +205 -0
  834. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/unicode_casefold.h +78 -0
  835. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/unicode_groups.h +64 -0
  836. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/walker-inl.h +235 -0
  837. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Info.plist +26 -0
  838. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/re2 +0 -0
  839. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/bitmap256.h +82 -0
  840. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/filtered_re2.h +111 -0
  841. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/pod_array.h +43 -0
  842. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/prefilter.h +130 -0
  843. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/prefilter_tree.h +139 -0
  844. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/prog.h +483 -0
  845. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/re2.h +994 -0
  846. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/regexp.h +692 -0
  847. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/set.h +85 -0
  848. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/sparse_array.h +367 -0
  849. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/sparse_set.h +241 -0
  850. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/stringpiece.h +205 -0
  851. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/unicode_casefold.h +78 -0
  852. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/unicode_groups.h +64 -0
  853. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/walker-inl.h +235 -0
  854. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Info.plist +26 -0
  855. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/re2 +0 -0
  856. package/third-party/ios/ios.toolchain.cmake +1122 -0
  857. package/LICENSE +0 -79
  858. package/README.md +0 -148
  859. package/android/src/main/java/com/swmansion/rnexecutorch/Classification.kt +0 -64
  860. package/android/src/main/java/com/swmansion/rnexecutorch/ETModule.kt +0 -90
  861. package/android/src/main/java/com/swmansion/rnexecutorch/ImageSegmentation.kt +0 -58
  862. package/android/src/main/java/com/swmansion/rnexecutorch/OCR.kt +0 -90
  863. package/android/src/main/java/com/swmansion/rnexecutorch/ObjectDetection.kt +0 -64
  864. package/android/src/main/java/com/swmansion/rnexecutorch/SpeechToText.kt +0 -91
  865. package/android/src/main/java/com/swmansion/rnexecutorch/StyleTransfer.kt +0 -54
  866. package/android/src/main/java/com/swmansion/rnexecutorch/TextEmbeddings.kt +0 -51
  867. package/android/src/main/java/com/swmansion/rnexecutorch/Tokenizer.kt +0 -86
  868. package/android/src/main/java/com/swmansion/rnexecutorch/VerticalOCR.kt +0 -179
  869. package/android/src/main/java/com/swmansion/rnexecutorch/models/BaseModel.kt +0 -54
  870. package/android/src/main/java/com/swmansion/rnexecutorch/models/TextEmbeddings/TextEmbeddingsModel.kt +0 -48
  871. package/android/src/main/java/com/swmansion/rnexecutorch/models/TextEmbeddings/TextEmbeddingsUtils.kt +0 -37
  872. package/android/src/main/java/com/swmansion/rnexecutorch/models/classification/ClassificationModel.kt +0 -46
  873. package/android/src/main/java/com/swmansion/rnexecutorch/models/classification/Constants.kt +0 -1005
  874. package/android/src/main/java/com/swmansion/rnexecutorch/models/imageSegmentation/Constants.kt +0 -26
  875. package/android/src/main/java/com/swmansion/rnexecutorch/models/imageSegmentation/ImageSegmentationModel.kt +0 -142
  876. package/android/src/main/java/com/swmansion/rnexecutorch/models/objectDetection/SSDLiteLargeModel.kt +0 -74
  877. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/Detector.kt +0 -82
  878. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/RecognitionHandler.kt +0 -117
  879. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/Recognizer.kt +0 -51
  880. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/VerticalDetector.kt +0 -89
  881. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/utils/CTCLabelConverter.kt +0 -58
  882. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/utils/Constants.kt +0 -31
  883. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/utils/DetectorUtils.kt +0 -608
  884. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/utils/RecognizerUtils.kt +0 -430
  885. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/BaseS2TDecoder.kt +0 -39
  886. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/BaseS2TModule.kt +0 -43
  887. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/Moonshine.kt +0 -16
  888. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/MoonshineDecoder.kt +0 -23
  889. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/MoonshineEncoder.kt +0 -20
  890. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/Whisper.kt +0 -16
  891. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/WhisperDecoder.kt +0 -22
  892. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/WhisperEncoder.kt +0 -29
  893. package/android/src/main/java/com/swmansion/rnexecutorch/models/styleTransfer/StyleTransferModel.kt +0 -43
  894. package/android/src/main/java/com/swmansion/rnexecutorch/utils/ArrayUtils.kt +0 -87
  895. package/android/src/main/java/com/swmansion/rnexecutorch/utils/ETError.kt +0 -34
  896. package/android/src/main/java/com/swmansion/rnexecutorch/utils/ImageProcessor.kt +0 -237
  897. package/android/src/main/java/com/swmansion/rnexecutorch/utils/Numerical.kt +0 -8
  898. package/android/src/main/java/com/swmansion/rnexecutorch/utils/ObjectDetectionUtils.kt +0 -201
  899. package/android/src/main/java/com/swmansion/rnexecutorch/utils/STFT.kt +0 -50
  900. package/android/src/main/java/com/swmansion/rnexecutorch/utils/TensorUtils.kt +0 -103
  901. package/ios/RnExecutorch/Classification.h +0 -5
  902. package/ios/RnExecutorch/Classification.mm +0 -54
  903. package/ios/RnExecutorch/ETModule.h +0 -5
  904. package/ios/RnExecutorch/ETModule.mm +0 -75
  905. package/ios/RnExecutorch/ImageSegmentation.h +0 -5
  906. package/ios/RnExecutorch/ImageSegmentation.mm +0 -60
  907. package/ios/RnExecutorch/OCR.h +0 -5
  908. package/ios/RnExecutorch/OCR.mm +0 -96
  909. package/ios/RnExecutorch/ObjectDetection.h +0 -5
  910. package/ios/RnExecutorch/ObjectDetection.mm +0 -56
  911. package/ios/RnExecutorch/SpeechToText.h +0 -5
  912. package/ios/RnExecutorch/SpeechToText.mm +0 -125
  913. package/ios/RnExecutorch/StyleTransfer.h +0 -5
  914. package/ios/RnExecutorch/StyleTransfer.mm +0 -55
  915. package/ios/RnExecutorch/TextEmbeddings.h +0 -5
  916. package/ios/RnExecutorch/TextEmbeddings.mm +0 -62
  917. package/ios/RnExecutorch/Tokenizer.h +0 -5
  918. package/ios/RnExecutorch/Tokenizer.mm +0 -83
  919. package/ios/RnExecutorch/VerticalOCR.h +0 -5
  920. package/ios/RnExecutorch/VerticalOCR.mm +0 -183
  921. package/ios/RnExecutorch/models/BaseModel.h +0 -21
  922. package/ios/RnExecutorch/models/BaseModel.mm +0 -43
  923. package/ios/RnExecutorch/models/classification/ClassificationModel.h +0 -10
  924. package/ios/RnExecutorch/models/classification/ClassificationModel.mm +0 -53
  925. package/ios/RnExecutorch/models/classification/Constants.h +0 -3
  926. package/ios/RnExecutorch/models/image_segmentation/Constants.h +0 -4
  927. package/ios/RnExecutorch/models/image_segmentation/ImageSegmentationModel.h +0 -10
  928. package/ios/RnExecutorch/models/image_segmentation/ImageSegmentationModel.mm +0 -146
  929. package/ios/RnExecutorch/models/object_detection/SSDLiteLargeModel.hpp +0 -11
  930. package/ios/RnExecutorch/models/object_detection/SSDLiteLargeModel.mm +0 -64
  931. package/ios/RnExecutorch/models/ocr/Detector.h +0 -9
  932. package/ios/RnExecutorch/models/ocr/Detector.mm +0 -101
  933. package/ios/RnExecutorch/models/ocr/RecognitionHandler.h +0 -16
  934. package/ios/RnExecutorch/models/ocr/RecognitionHandler.mm +0 -135
  935. package/ios/RnExecutorch/models/ocr/Recognizer.h +0 -8
  936. package/ios/RnExecutorch/models/ocr/Recognizer.mm +0 -77
  937. package/ios/RnExecutorch/models/ocr/VerticalDetector.h +0 -10
  938. package/ios/RnExecutorch/models/ocr/VerticalDetector.mm +0 -118
  939. package/ios/RnExecutorch/models/ocr/utils/CTCLabelConverter.h +0 -16
  940. package/ios/RnExecutorch/models/ocr/utils/CTCLabelConverter.mm +0 -80
  941. package/ios/RnExecutorch/models/ocr/utils/Constants.h +0 -26
  942. package/ios/RnExecutorch/models/ocr/utils/DetectorUtils.h +0 -31
  943. package/ios/RnExecutorch/models/ocr/utils/DetectorUtils.mm +0 -754
  944. package/ios/RnExecutorch/models/ocr/utils/OCRUtils.h +0 -10
  945. package/ios/RnExecutorch/models/ocr/utils/OCRUtils.mm +0 -67
  946. package/ios/RnExecutorch/models/ocr/utils/RecognizerUtils.h +0 -35
  947. package/ios/RnExecutorch/models/ocr/utils/RecognizerUtils.mm +0 -331
  948. package/ios/RnExecutorch/models/stt/Moonshine.hpp +0 -13
  949. package/ios/RnExecutorch/models/stt/Moonshine.mm +0 -64
  950. package/ios/RnExecutorch/models/stt/MoonshineDecoder.hpp +0 -16
  951. package/ios/RnExecutorch/models/stt/MoonshineDecoder.mm +0 -24
  952. package/ios/RnExecutorch/models/stt/MoonshineEncoder.hpp +0 -15
  953. package/ios/RnExecutorch/models/stt/MoonshineEncoder.mm +0 -18
  954. package/ios/RnExecutorch/models/stt/SpeechToTextBaseModel.hpp +0 -26
  955. package/ios/RnExecutorch/models/stt/SpeechToTextBaseModel.mm +0 -19
  956. package/ios/RnExecutorch/models/stt/Whisper.hpp +0 -12
  957. package/ios/RnExecutorch/models/stt/Whisper.mm +0 -68
  958. package/ios/RnExecutorch/models/stt/WhisperDecoder.hpp +0 -16
  959. package/ios/RnExecutorch/models/stt/WhisperDecoder.mm +0 -22
  960. package/ios/RnExecutorch/models/stt/WhisperEncoder.hpp +0 -15
  961. package/ios/RnExecutorch/models/stt/WhisperEncoder.mm +0 -21
  962. package/ios/RnExecutorch/models/style_transfer/StyleTransferModel.h +0 -11
  963. package/ios/RnExecutorch/models/style_transfer/StyleTransferModel.mm +0 -50
  964. package/ios/RnExecutorch/models/text_embeddings/TextEmbeddingsModel.h +0 -15
  965. package/ios/RnExecutorch/models/text_embeddings/TextEmbeddingsModel.mm +0 -45
  966. package/ios/RnExecutorch/models/text_embeddings/TextEmbeddingsUtils.h +0 -8
  967. package/ios/RnExecutorch/models/text_embeddings/TextEmbeddingsUtils.mm +0 -49
  968. package/ios/RnExecutorch/utils/Constants.h +0 -8
  969. package/ios/RnExecutorch/utils/ObjectDetectionUtils.hpp +0 -23
  970. package/ios/RnExecutorch/utils/SFFT.hpp +0 -13
  971. package/ios/RnExecutorch/utils/SFFT.mm +0 -71
  972. package/lib/module/native/NativeClassification.js +0 -5
  973. package/lib/module/native/NativeClassification.js.map +0 -1
  974. package/lib/module/native/NativeETModule.js +0 -5
  975. package/lib/module/native/NativeETModule.js.map +0 -1
  976. package/lib/module/native/NativeImageSegmentation.js +0 -5
  977. package/lib/module/native/NativeImageSegmentation.js.map +0 -1
  978. package/lib/module/native/NativeOCR.js +0 -5
  979. package/lib/module/native/NativeOCR.js.map +0 -1
  980. package/lib/module/native/NativeObjectDetection.js +0 -5
  981. package/lib/module/native/NativeObjectDetection.js.map +0 -1
  982. package/lib/module/native/NativeSpeechToText.js +0 -5
  983. package/lib/module/native/NativeSpeechToText.js.map +0 -1
  984. package/lib/module/native/NativeStyleTransfer.js +0 -5
  985. package/lib/module/native/NativeStyleTransfer.js.map +0 -1
  986. package/lib/module/native/NativeTextEmbeddings.js +0 -5
  987. package/lib/module/native/NativeTextEmbeddings.js.map +0 -1
  988. package/lib/module/native/NativeTokenizer.js +0 -5
  989. package/lib/module/native/NativeTokenizer.js.map +0 -1
  990. package/lib/module/native/NativeVerticalOCR.js +0 -5
  991. package/lib/module/native/NativeVerticalOCR.js.map +0 -1
  992. package/lib/module/package.json +0 -1
  993. package/lib/typescript/native/NativeClassification.d.ts +0 -10
  994. package/lib/typescript/native/NativeClassification.d.ts.map +0 -1
  995. package/lib/typescript/native/NativeETModule.d.ts +0 -9
  996. package/lib/typescript/native/NativeETModule.d.ts.map +0 -1
  997. package/lib/typescript/native/NativeImageSegmentation.d.ts +0 -10
  998. package/lib/typescript/native/NativeImageSegmentation.d.ts.map +0 -1
  999. package/lib/typescript/native/NativeOCR.d.ts +0 -9
  1000. package/lib/typescript/native/NativeOCR.d.ts.map +0 -1
  1001. package/lib/typescript/native/NativeObjectDetection.d.ts +0 -9
  1002. package/lib/typescript/native/NativeObjectDetection.d.ts.map +0 -1
  1003. package/lib/typescript/native/NativeSpeechToText.d.ts +0 -12
  1004. package/lib/typescript/native/NativeSpeechToText.d.ts.map +0 -1
  1005. package/lib/typescript/native/NativeStyleTransfer.d.ts.map +0 -1
  1006. package/lib/typescript/native/NativeTextEmbeddings.d.ts +0 -8
  1007. package/lib/typescript/native/NativeTextEmbeddings.d.ts.map +0 -1
  1008. package/lib/typescript/native/NativeTokenizer.d.ts +0 -12
  1009. package/lib/typescript/native/NativeTokenizer.d.ts.map +0 -1
  1010. package/lib/typescript/native/NativeVerticalOCR.d.ts +0 -9
  1011. package/lib/typescript/native/NativeVerticalOCR.d.ts.map +0 -1
  1012. package/src/native/NativeClassification.ts +0 -9
  1013. package/src/native/NativeETModule.ts +0 -14
  1014. package/src/native/NativeImageSegmentation.ts +0 -14
  1015. package/src/native/NativeOCR.ts +0 -16
  1016. package/src/native/NativeObjectDetection.ts +0 -10
  1017. package/src/native/NativeSpeechToText.ts +0 -17
  1018. package/src/native/NativeStyleTransfer.ts +0 -10
  1019. package/src/native/NativeTextEmbeddings.ts +0 -9
  1020. package/src/native/NativeTokenizer.ts +0 -13
  1021. package/src/native/NativeVerticalOCR.ts +0 -16
@@ -0,0 +1,1222 @@
1
+ /*M///////////////////////////////////////////////////////////////////////////////////////
2
+ //
3
+ // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
4
+ //
5
+ // By downloading, copying, installing or using the software you agree to this
6
+ license.
7
+ // If you do not agree to this license, do not download, install,
8
+ // copy or use the software.
9
+ //
10
+ //
11
+ // License Agreement
12
+ // For Open Source Computer Vision Library
13
+ //
14
+ // Copyright (C) 2000-2008, Intel Corporation, all rights reserved.
15
+ // Copyright (C) 2009, Willow Garage Inc., all rights reserved.
16
+ // Copyright (C) 2013, OpenCV Foundation, all rights reserved.
17
+ // Copyright (C) 2015, Itseez Inc., all rights reserved.
18
+ // Third party copyrights are property of their respective owners.
19
+ //
20
+ // Redistribution and use in source and binary forms, with or without
21
+ modification,
22
+ // are permitted provided that the following conditions are met:
23
+ //
24
+ // * Redistribution's of source code must retain the above copyright notice,
25
+ // this list of conditions and the following disclaimer.
26
+ //
27
+ // * Redistribution's in binary form must reproduce the above copyright
28
+ notice,
29
+ // this list of conditions and the following disclaimer in the documentation
30
+ // and/or other materials provided with the distribution.
31
+ //
32
+ // * The name of the copyright holders may not be used to endorse or promote
33
+ products
34
+ // derived from this software without specific prior written permission.
35
+ //
36
+ // This software is provided by the copyright holders and contributors "as is"
37
+ and
38
+ // any express or implied warranties, including, but not limited to, the implied
39
+ // warranties of merchantability and fitness for a particular purpose are
40
+ disclaimed.
41
+ // In no event shall the Intel Corporation or contributors be liable for any
42
+ direct,
43
+ // indirect, incidental, special, exemplary, or consequential damages
44
+ // (including, but not limited to, procurement of substitute goods or services;
45
+ // loss of use, data, or profits; or business interruption) however caused
46
+ // and on any theory of liability, whether in contract, strict liability,
47
+ // or tort (including negligence or otherwise) arising in any way out of
48
+ // the use of this software, even if advised of the possibility of such damage.
49
+ //
50
+ //M*/
51
+
52
+ #ifndef OPENCV_HAL_INTRIN_HPP
53
+ #define OPENCV_HAL_INTRIN_HPP
54
+
55
+ #include "opencv2/core/cvdef.h"
56
+ #include <cmath>
57
+ #include <float.h>
58
+ #include <stdlib.h>
59
+
60
+ #if defined(__GNUC__) && __GNUC__ == 12
61
+ #pragma GCC diagnostic push
62
+ #pragma GCC diagnostic ignored "-Wuninitialized"
63
+ #pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
64
+ #endif
65
+
66
+ #define OPENCV_HAL_ADD(a, b) ((a) + (b))
67
+ #define OPENCV_HAL_AND(a, b) ((a) & (b))
68
+ #define OPENCV_HAL_NOP(a) (a)
69
+ #define OPENCV_HAL_1ST(a, b) (a)
70
+
71
+ namespace {
72
+ inline unsigned int trailingZeros32(unsigned int value) {
73
+ #if defined(_MSC_VER)
74
+ #if (_MSC_VER < 1700) || defined(_M_ARM) || defined(_M_ARM64) || \
75
+ defined(_M_ARM64EC)
76
+ unsigned long index = 0;
77
+ _BitScanForward(&index, value);
78
+ return (unsigned int)index;
79
+ #elif defined(__clang__)
80
+ // clang-cl doesn't export _tzcnt_u32 for non BMI systems
81
+ return value ? __builtin_ctz(value) : 32;
82
+ #else
83
+ return _tzcnt_u32(value);
84
+ #endif
85
+ #elif defined(__GNUC__) || defined(__GNUG__)
86
+ return __builtin_ctz(value);
87
+ #elif defined(__ICC) || defined(__INTEL_COMPILER)
88
+ return _bit_scan_forward(value);
89
+ #elif defined(__clang__)
90
+ return llvm.cttz.i32(value, true);
91
+ #else
92
+ static const int MultiplyDeBruijnBitPosition[32] = {
93
+ 0, 1, 28, 2, 29, 14, 24, 3, 30, 22, 20, 15, 25, 17, 4, 8,
94
+ 31, 27, 13, 23, 21, 19, 16, 7, 26, 12, 18, 6, 11, 5, 10, 9};
95
+ return MultiplyDeBruijnBitPosition[((uint32_t)((value & -value) *
96
+ 0x077CB531U)) >>
97
+ 27];
98
+ #endif
99
+ }
100
+ } // namespace
101
+
102
+ // unlike HAL API, which is in cv::hal,
103
+ // we put intrinsics into cv namespace to make its
104
+ // access from within opencv code more accessible
105
+ namespace cv {
106
+
107
+ namespace hal {
108
+
109
+ enum StoreMode {
110
+ STORE_UNALIGNED = 0,
111
+ STORE_ALIGNED = 1,
112
+ STORE_ALIGNED_NOCACHE = 2
113
+ };
114
+
115
+ }
116
+
117
+ // TODO FIXIT: Don't use "God" traits. Split on separate cases.
118
+ template <typename _Tp> struct V_TypeTraits {};
119
+
120
+ #define CV_INTRIN_DEF_TYPE_TRAITS(type, int_type_, uint_type_, abs_type_, \
121
+ w_type_, q_type_, sum_type_) \
122
+ template <> struct V_TypeTraits<type> { \
123
+ typedef type value_type; \
124
+ typedef int_type_ int_type; \
125
+ typedef abs_type_ abs_type; \
126
+ typedef uint_type_ uint_type; \
127
+ typedef w_type_ w_type; \
128
+ typedef q_type_ q_type; \
129
+ typedef sum_type_ sum_type; \
130
+ \
131
+ static inline int_type reinterpret_int(type x) { \
132
+ union { \
133
+ type l; \
134
+ int_type i; \
135
+ } v; \
136
+ v.l = x; \
137
+ return v.i; \
138
+ } \
139
+ \
140
+ static inline type reinterpret_from_int(int_type x) { \
141
+ union { \
142
+ type l; \
143
+ int_type i; \
144
+ } v; \
145
+ v.i = x; \
146
+ return v.l; \
147
+ } \
148
+ }
149
+
150
+ #define CV_INTRIN_DEF_TYPE_TRAITS_NO_Q_TYPE(type, int_type_, uint_type_, \
151
+ abs_type_, w_type_, sum_type_) \
152
+ template <> struct V_TypeTraits<type> { \
153
+ typedef type value_type; \
154
+ typedef int_type_ int_type; \
155
+ typedef abs_type_ abs_type; \
156
+ typedef uint_type_ uint_type; \
157
+ typedef w_type_ w_type; \
158
+ typedef sum_type_ sum_type; \
159
+ \
160
+ static inline int_type reinterpret_int(type x) { \
161
+ union { \
162
+ type l; \
163
+ int_type i; \
164
+ } v; \
165
+ v.l = x; \
166
+ return v.i; \
167
+ } \
168
+ \
169
+ static inline type reinterpret_from_int(int_type x) { \
170
+ union { \
171
+ type l; \
172
+ int_type i; \
173
+ } v; \
174
+ v.i = x; \
175
+ return v.l; \
176
+ } \
177
+ }
178
+
179
+ CV_INTRIN_DEF_TYPE_TRAITS(uchar, schar, uchar, uchar, ushort, unsigned,
180
+ unsigned);
181
+ CV_INTRIN_DEF_TYPE_TRAITS(schar, schar, uchar, uchar, short, int, int);
182
+ CV_INTRIN_DEF_TYPE_TRAITS(ushort, short, ushort, ushort, unsigned, uint64,
183
+ unsigned);
184
+ CV_INTRIN_DEF_TYPE_TRAITS(short, short, ushort, ushort, int, int64, int);
185
+ CV_INTRIN_DEF_TYPE_TRAITS_NO_Q_TYPE(unsigned, int, unsigned, unsigned, uint64,
186
+ unsigned);
187
+ CV_INTRIN_DEF_TYPE_TRAITS_NO_Q_TYPE(int, int, unsigned, unsigned, int64, int);
188
+ CV_INTRIN_DEF_TYPE_TRAITS_NO_Q_TYPE(float, int, unsigned, float, double, float);
189
+ CV_INTRIN_DEF_TYPE_TRAITS_NO_Q_TYPE(uint64, int64, uint64, uint64, void,
190
+ uint64);
191
+ CV_INTRIN_DEF_TYPE_TRAITS_NO_Q_TYPE(int64, int64, uint64, uint64, void, int64);
192
+ CV_INTRIN_DEF_TYPE_TRAITS_NO_Q_TYPE(double, int64, uint64, double, void,
193
+ double);
194
+
195
+ #ifndef CV_DOXYGEN
196
+
197
+ #ifndef CV_CPU_OPTIMIZATION_HAL_NAMESPACE
198
+ #ifdef CV_FORCE_SIMD128_CPP
199
+ #define CV_CPU_OPTIMIZATION_HAL_NAMESPACE hal_EMULATOR_CPP
200
+ #define CV_CPU_OPTIMIZATION_HAL_NAMESPACE_BEGIN namespace hal_EMULATOR_CPP {
201
+ #define CV_CPU_OPTIMIZATION_HAL_NAMESPACE_END }
202
+ #elif defined(CV_CPU_DISPATCH_MODE)
203
+ #define CV_CPU_OPTIMIZATION_HAL_NAMESPACE __CV_CAT(hal_, CV_CPU_DISPATCH_MODE)
204
+ #define CV_CPU_OPTIMIZATION_HAL_NAMESPACE_BEGIN \
205
+ namespace __CV_CAT(hal_, CV_CPU_DISPATCH_MODE) {
206
+ #define CV_CPU_OPTIMIZATION_HAL_NAMESPACE_END }
207
+ #else
208
+ #define CV_CPU_OPTIMIZATION_HAL_NAMESPACE hal_baseline
209
+ #define CV_CPU_OPTIMIZATION_HAL_NAMESPACE_BEGIN namespace hal_baseline {
210
+ #define CV_CPU_OPTIMIZATION_HAL_NAMESPACE_END }
211
+ #endif
212
+ #endif // CV_CPU_OPTIMIZATION_HAL_NAMESPACE
213
+
214
+ CV_CPU_OPTIMIZATION_HAL_NAMESPACE_BEGIN
215
+
216
+ template <typename _VecTp> inline _VecTp v_setzero_();
217
+ template <typename _VecTp> inline _VecTp v_setall_(uchar);
218
+ template <typename _VecTp> inline _VecTp v_setall_(schar);
219
+ template <typename _VecTp> inline _VecTp v_setall_(ushort);
220
+ template <typename _VecTp> inline _VecTp v_setall_(short);
221
+ template <typename _VecTp> inline _VecTp v_setall_(unsigned);
222
+ template <typename _VecTp> inline _VecTp v_setall_(int);
223
+ template <typename _VecTp> inline _VecTp v_setall_(uint64);
224
+ template <typename _VecTp> inline _VecTp v_setall_(int64);
225
+ template <typename _VecTp> inline _VecTp v_setall_(float);
226
+ template <typename _VecTp> inline _VecTp v_setall_(double);
227
+
228
+ CV_CPU_OPTIMIZATION_HAL_NAMESPACE_END
229
+ using namespace CV_CPU_OPTIMIZATION_HAL_NAMESPACE;
230
+ #endif
231
+ } // namespace cv
232
+
233
+ #ifdef CV_DOXYGEN
234
+ #undef CV_AVX2
235
+ #undef CV_SSE2
236
+ #undef CV_NEON
237
+ #undef CV_VSX
238
+ #undef CV_FP16
239
+ #undef CV_MSA
240
+ #undef CV_RVV
241
+ #endif
242
+
243
+ #if (CV_SSE2 || CV_NEON || CV_VSX || CV_MSA || CV_WASM_SIMD || CV_RVV071 || \
244
+ CV_LSX) && \
245
+ !defined(CV_FORCE_SIMD128_CPP)
246
+ #define CV__SIMD_FORWARD 128
247
+ #include "opencv2/core/hal/intrin_forward.hpp"
248
+ #endif
249
+
250
+ #if CV_SSE2 && !defined(CV_FORCE_SIMD128_CPP)
251
+
252
+ #include "opencv2/core/hal/intrin_sse.hpp"
253
+ #include "opencv2/core/hal/intrin_sse_em.hpp"
254
+
255
+ #elif CV_NEON && !defined(CV_FORCE_SIMD128_CPP)
256
+
257
+ #include "opencv2/core/hal/intrin_neon.hpp"
258
+
259
+ #elif CV_RVV071 && !defined(CV_FORCE_SIMD128_CPP)
260
+ #define CV_SIMD128_CPP 0
261
+ #include "opencv2/core/hal/intrin_rvv071.hpp"
262
+
263
+ #elif CV_VSX && !defined(CV_FORCE_SIMD128_CPP)
264
+
265
+ #include "opencv2/core/hal/intrin_vsx.hpp"
266
+
267
+ #elif CV_MSA && !defined(CV_FORCE_SIMD128_CPP)
268
+
269
+ #include "opencv2/core/hal/intrin_msa.hpp"
270
+
271
+ #elif CV_WASM_SIMD && !defined(CV_FORCE_SIMD128_CPP)
272
+ #include "opencv2/core/hal/intrin_wasm.hpp"
273
+
274
+ #elif CV_RVV && !defined(CV_FORCE_SIMD128_CPP)
275
+ #include "opencv2/core/hal/intrin_rvv_scalable.hpp"
276
+
277
+ #elif CV_LSX && !defined(CV_FORCE_SIMD128_CPP)
278
+
279
+ #include "opencv2/core/hal/intrin_lsx.hpp"
280
+
281
+ #else
282
+
283
+ #include "opencv2/core/hal/intrin_cpp.hpp"
284
+
285
+ #endif
286
+
287
+ // AVX2 can be used together with SSE2, so
288
+ // we define those two sets of intrinsics at once.
289
+ // Most of the intrinsics do not conflict (the proper overloaded variant is
290
+ // resolved by the argument types, e.g. v_float32x4 ~ SSE2, v_float32x8 ~ AVX2),
291
+ // but some of AVX2 intrinsics get v256_ prefix instead of v_, e.g. v256_load()
292
+ // vs v_load(). Correspondingly, the wide intrinsics (which are mapped to the
293
+ // "widest" available instruction set) will get vx_ prefix (and will be mapped
294
+ // to v256_ counterparts) (e.g. vx_load() => v256_load())
295
+ #if CV_AVX2
296
+
297
+ #define CV__SIMD_FORWARD 256
298
+ #include "opencv2/core/hal/intrin_avx.hpp"
299
+ #include "opencv2/core/hal/intrin_forward.hpp"
300
+
301
+ #endif
302
+
303
+ // AVX512 can be used together with SSE2 and AVX2, so
304
+ // we define those sets of intrinsics at once.
305
+ // For some of AVX512 intrinsics get v512_ prefix instead of v_, e.g.
306
+ // v512_load() vs v_load(). Wide intrinsics will be mapped to v512_ counterparts
307
+ // in this case(e.g. vx_load() => v512_load())
308
+ #if CV_AVX512_SKX
309
+
310
+ #define CV__SIMD_FORWARD 512
311
+ #include "opencv2/core/hal/intrin_avx512.hpp"
312
+ #include "opencv2/core/hal/intrin_forward.hpp"
313
+
314
+ #endif
315
+
316
+ #if CV_LASX
317
+
318
+ #define CV__SIMD_FORWARD 256
319
+ #include "opencv2/core/hal/intrin_forward.hpp"
320
+ #include "opencv2/core/hal/intrin_lasx.hpp"
321
+
322
+ #endif
323
+
324
+ //! @cond IGNORED
325
+
326
+ namespace cv {
327
+
328
+ #ifndef CV_DOXYGEN
329
+ CV_CPU_OPTIMIZATION_HAL_NAMESPACE_BEGIN
330
+ #endif
331
+
332
+ #ifndef CV_SIMD128
333
+ #define CV_SIMD128 0
334
+ #endif
335
+
336
+ #ifndef CV_SIMD128_CPP
337
+ #define CV_SIMD128_CPP 0
338
+ #endif
339
+
340
+ #ifndef CV_SIMD128_64F
341
+ #define CV_SIMD128_64F 0
342
+ #endif
343
+
344
+ #ifndef CV_SIMD256
345
+ #define CV_SIMD256 0
346
+ #endif
347
+
348
+ #ifndef CV_SIMD256_64F
349
+ #define CV_SIMD256_64F 0
350
+ #endif
351
+
352
+ #ifndef CV_SIMD512
353
+ #define CV_SIMD512 0
354
+ #endif
355
+
356
+ #ifndef CV_SIMD512_64F
357
+ #define CV_SIMD512_64F 0
358
+ #endif
359
+
360
+ #ifndef CV_SIMD128_FP16
361
+ #define CV_SIMD128_FP16 0
362
+ #endif
363
+
364
+ #ifndef CV_SIMD256_FP16
365
+ #define CV_SIMD256_FP16 0
366
+ #endif
367
+
368
+ #ifndef CV_SIMD512_FP16
369
+ #define CV_SIMD512_FP16 0
370
+ #endif
371
+
372
+ #ifndef CV_SIMD_SCALABLE
373
+ #define CV_SIMD_SCALABLE 0
374
+ #endif
375
+
376
+ #ifndef CV_SIMD_SCALABLE_64F
377
+ #define CV_SIMD_SCALABLE_64F 0
378
+ #endif
379
+
380
+ //==================================================================================================
381
+
382
+ template <typename _Tp> struct V_RegTraits {};
383
+
384
+ #define CV_DEF_REG_TRAITS(prefix, _reg, lane_type, suffix, _u_reg, _w_reg, \
385
+ _q_reg, _int_reg, _round_reg) \
386
+ template <> struct V_RegTraits<_reg> { \
387
+ typedef _reg reg; \
388
+ typedef _u_reg u_reg; \
389
+ typedef _w_reg w_reg; \
390
+ typedef _q_reg q_reg; \
391
+ typedef _int_reg int_reg; \
392
+ typedef _round_reg round_reg; \
393
+ }
394
+
395
+ #if CV_SIMD128 || CV_SIMD128_CPP
396
+ CV_DEF_REG_TRAITS(v, v_uint8x16, uchar, u8, v_uint8x16, v_uint16x8, v_uint32x4,
397
+ v_int8x16, void);
398
+ CV_DEF_REG_TRAITS(v, v_int8x16, schar, s8, v_uint8x16, v_int16x8, v_int32x4,
399
+ v_int8x16, void);
400
+ CV_DEF_REG_TRAITS(v, v_uint16x8, ushort, u16, v_uint16x8, v_uint32x4,
401
+ v_uint64x2, v_int16x8, void);
402
+ CV_DEF_REG_TRAITS(v, v_int16x8, short, s16, v_uint16x8, v_int32x4, v_int64x2,
403
+ v_int16x8, void);
404
+ CV_DEF_REG_TRAITS(v, v_uint32x4, unsigned, u32, v_uint32x4, v_uint64x2, void,
405
+ v_int32x4, void);
406
+ CV_DEF_REG_TRAITS(v, v_int32x4, int, s32, v_uint32x4, v_int64x2, void,
407
+ v_int32x4, void);
408
+ #if CV_SIMD128_64F || CV_SIMD128_CPP
409
+ CV_DEF_REG_TRAITS(v, v_float32x4, float, f32, v_float32x4, v_float64x2, void,
410
+ v_int32x4, v_int32x4);
411
+ #else
412
+ CV_DEF_REG_TRAITS(v, v_float32x4, float, f32, v_float32x4, void, void,
413
+ v_int32x4, v_int32x4);
414
+ #endif
415
+ CV_DEF_REG_TRAITS(v, v_uint64x2, uint64, u64, v_uint64x2, void, void, v_int64x2,
416
+ void);
417
+ CV_DEF_REG_TRAITS(v, v_int64x2, int64, s64, v_uint64x2, void, void, v_int64x2,
418
+ void);
419
+ #if CV_SIMD128_64F
420
+ CV_DEF_REG_TRAITS(v, v_float64x2, double, f64, v_float64x2, void, void,
421
+ v_int64x2, v_int32x4);
422
+ #endif
423
+ #endif
424
+
425
+ #if CV_SIMD256
426
+ CV_DEF_REG_TRAITS(v256, v_uint8x32, uchar, u8, v_uint8x32, v_uint16x16,
427
+ v_uint32x8, v_int8x32, void);
428
+ CV_DEF_REG_TRAITS(v256, v_int8x32, schar, s8, v_uint8x32, v_int16x16, v_int32x8,
429
+ v_int8x32, void);
430
+ CV_DEF_REG_TRAITS(v256, v_uint16x16, ushort, u16, v_uint16x16, v_uint32x8,
431
+ v_uint64x4, v_int16x16, void);
432
+ CV_DEF_REG_TRAITS(v256, v_int16x16, short, s16, v_uint16x16, v_int32x8,
433
+ v_int64x4, v_int16x16, void);
434
+ CV_DEF_REG_TRAITS(v256, v_uint32x8, unsigned, u32, v_uint32x8, v_uint64x4, void,
435
+ v_int32x8, void);
436
+ CV_DEF_REG_TRAITS(v256, v_int32x8, int, s32, v_uint32x8, v_int64x4, void,
437
+ v_int32x8, void);
438
+ CV_DEF_REG_TRAITS(v256, v_float32x8, float, f32, v_float32x8, v_float64x4, void,
439
+ v_int32x8, v_int32x8);
440
+ CV_DEF_REG_TRAITS(v256, v_uint64x4, uint64, u64, v_uint64x4, void, void,
441
+ v_int64x4, void);
442
+ CV_DEF_REG_TRAITS(v256, v_int64x4, int64, s64, v_uint64x4, void, void,
443
+ v_int64x4, void);
444
+ CV_DEF_REG_TRAITS(v256, v_float64x4, double, f64, v_float64x4, void, void,
445
+ v_int64x4, v_int32x8);
446
+ #endif
447
+
448
+ #if CV_SIMD512
449
+ CV_DEF_REG_TRAITS(v512, v_uint8x64, uchar, u8, v_uint8x64, v_uint16x32,
450
+ v_uint32x16, v_int8x64, void);
451
+ CV_DEF_REG_TRAITS(v512, v_int8x64, schar, s8, v_uint8x64, v_int16x32,
452
+ v_int32x16, v_int8x64, void);
453
+ CV_DEF_REG_TRAITS(v512, v_uint16x32, ushort, u16, v_uint16x32, v_uint32x16,
454
+ v_uint64x8, v_int16x32, void);
455
+ CV_DEF_REG_TRAITS(v512, v_int16x32, short, s16, v_uint16x32, v_int32x16,
456
+ v_int64x8, v_int16x32, void);
457
+ CV_DEF_REG_TRAITS(v512, v_uint32x16, unsigned, u32, v_uint32x16, v_uint64x8,
458
+ void, v_int32x16, void);
459
+ CV_DEF_REG_TRAITS(v512, v_int32x16, int, s32, v_uint32x16, v_int64x8, void,
460
+ v_int32x16, void);
461
+ CV_DEF_REG_TRAITS(v512, v_float32x16, float, f32, v_float32x16, v_float64x8,
462
+ void, v_int32x16, v_int32x16);
463
+ CV_DEF_REG_TRAITS(v512, v_uint64x8, uint64, u64, v_uint64x8, void, void,
464
+ v_int64x8, void);
465
+ CV_DEF_REG_TRAITS(v512, v_int64x8, int64, s64, v_uint64x8, void, void,
466
+ v_int64x8, void);
467
+ CV_DEF_REG_TRAITS(v512, v_float64x8, double, f64, v_float64x8, void, void,
468
+ v_int64x8, v_int32x16);
469
+ #endif
470
+ #if CV_SIMD_SCALABLE
471
+ CV_DEF_REG_TRAITS(v, v_uint8, uchar, u8, v_uint8, v_uint16, v_uint32, v_int8,
472
+ void);
473
+ CV_DEF_REG_TRAITS(v, v_int8, schar, s8, v_uint8, v_int16, v_int32, v_int8,
474
+ void);
475
+ CV_DEF_REG_TRAITS(v, v_uint16, ushort, u16, v_uint16, v_uint32, v_uint64,
476
+ v_int16, void);
477
+ CV_DEF_REG_TRAITS(v, v_int16, short, s16, v_uint16, v_int32, v_int64, v_int16,
478
+ void);
479
+ CV_DEF_REG_TRAITS(v, v_uint32, unsigned, u32, v_uint32, v_uint64, void, v_int32,
480
+ void);
481
+ CV_DEF_REG_TRAITS(v, v_int32, int, s32, v_uint32, v_int64, void, v_int32, void);
482
+ CV_DEF_REG_TRAITS(v, v_float32, float, f32, v_float32, v_float64, void, v_int32,
483
+ v_int32);
484
+ CV_DEF_REG_TRAITS(v, v_uint64, uint64, u64, v_uint64, void, void, v_int64,
485
+ void);
486
+ CV_DEF_REG_TRAITS(v, v_int64, int64, s64, v_uint64, void, void, v_int64, void);
487
+ CV_DEF_REG_TRAITS(v, v_float64, double, f64, v_float64, void, void, v_int64,
488
+ v_int32);
489
+ #endif
490
+ //! @endcond
491
+
492
+ #if CV_SIMD512 && \
493
+ (!defined(CV__SIMD_FORCE_WIDTH) || CV__SIMD_FORCE_WIDTH == 512)
494
+ #define CV__SIMD_NAMESPACE simd512
495
+ namespace CV__SIMD_NAMESPACE {
496
+ #define CV_SIMD 1
497
+ #define CV_SIMD_64F CV_SIMD512_64F
498
+ #define CV_SIMD_FP16 CV_SIMD512_FP16
499
+ #define CV_SIMD_WIDTH 64
500
+ //! @addtogroup core_hal_intrin
501
+ //! @{
502
+ //! @brief Maximum available vector register capacity 8-bit unsigned integer
503
+ //! values
504
+ typedef v_uint8x64 v_uint8;
505
+ //! @brief Maximum available vector register capacity 8-bit signed integer
506
+ //! values
507
+ typedef v_int8x64 v_int8;
508
+ //! @brief Maximum available vector register capacity 16-bit unsigned integer
509
+ //! values
510
+ typedef v_uint16x32 v_uint16;
511
+ //! @brief Maximum available vector register capacity 16-bit signed integer
512
+ //! values
513
+ typedef v_int16x32 v_int16;
514
+ //! @brief Maximum available vector register capacity 32-bit unsigned integer
515
+ //! values
516
+ typedef v_uint32x16 v_uint32;
517
+ //! @brief Maximum available vector register capacity 32-bit signed integer
518
+ //! values
519
+ typedef v_int32x16 v_int32;
520
+ //! @brief Maximum available vector register capacity 64-bit unsigned integer
521
+ //! values
522
+ typedef v_uint64x8 v_uint64;
523
+ //! @brief Maximum available vector register capacity 64-bit signed integer
524
+ //! values
525
+ typedef v_int64x8 v_int64;
526
+ //! @brief Maximum available vector register capacity 32-bit floating point
527
+ //! values (single precision)
528
+ typedef v_float32x16 v_float32;
529
+ #if CV_SIMD512_64F
530
+ //! @brief Maximum available vector register capacity 64-bit floating point
531
+ //! values (double precision)
532
+ typedef v_float64x8 v_float64;
533
+ #endif
534
+ //! @}
535
+
536
+ #define VXPREFIX(func) v512##func
537
+ } // namespace CV__SIMD_NAMESPACE
538
+ using namespace CV__SIMD_NAMESPACE;
539
+ #elif CV_SIMD256 && \
540
+ (!defined(CV__SIMD_FORCE_WIDTH) || CV__SIMD_FORCE_WIDTH == 256)
541
+ #define CV__SIMD_NAMESPACE simd256
542
+ namespace CV__SIMD_NAMESPACE {
543
+ #define CV_SIMD 1
544
+ #define CV_SIMD_64F CV_SIMD256_64F
545
+ #define CV_SIMD_FP16 CV_SIMD256_FP16
546
+ #define CV_SIMD_WIDTH 32
547
+ //! @addtogroup core_hal_intrin
548
+ //! @{
549
+ //! @brief Maximum available vector register capacity 8-bit unsigned integer
550
+ //! values
551
+ typedef v_uint8x32 v_uint8;
552
+ //! @brief Maximum available vector register capacity 8-bit signed integer
553
+ //! values
554
+ typedef v_int8x32 v_int8;
555
+ //! @brief Maximum available vector register capacity 16-bit unsigned integer
556
+ //! values
557
+ typedef v_uint16x16 v_uint16;
558
+ //! @brief Maximum available vector register capacity 16-bit signed integer
559
+ //! values
560
+ typedef v_int16x16 v_int16;
561
+ //! @brief Maximum available vector register capacity 32-bit unsigned integer
562
+ //! values
563
+ typedef v_uint32x8 v_uint32;
564
+ //! @brief Maximum available vector register capacity 32-bit signed integer
565
+ //! values
566
+ typedef v_int32x8 v_int32;
567
+ //! @brief Maximum available vector register capacity 64-bit unsigned integer
568
+ //! values
569
+ typedef v_uint64x4 v_uint64;
570
+ //! @brief Maximum available vector register capacity 64-bit signed integer
571
+ //! values
572
+ typedef v_int64x4 v_int64;
573
+ //! @brief Maximum available vector register capacity 32-bit floating point
574
+ //! values (single precision)
575
+ typedef v_float32x8 v_float32;
576
+ #if CV_SIMD256_64F
577
+ //! @brief Maximum available vector register capacity 64-bit floating point
578
+ //! values (double precision)
579
+ typedef v_float64x4 v_float64;
580
+ #endif
581
+ //! @}
582
+
583
+ #define VXPREFIX(func) v256##func
584
+ } // namespace CV__SIMD_NAMESPACE
585
+ using namespace CV__SIMD_NAMESPACE;
586
+ #elif (CV_SIMD128 || CV_SIMD128_CPP) && \
587
+ (!defined(CV__SIMD_FORCE_WIDTH) || CV__SIMD_FORCE_WIDTH == 128)
588
+ #if defined CV_SIMD128_CPP
589
+ #define CV__SIMD_NAMESPACE simd128_cpp
590
+ #else
591
+ #define CV__SIMD_NAMESPACE simd128
592
+ #endif
593
+ namespace CV__SIMD_NAMESPACE {
594
+ #define CV_SIMD CV_SIMD128
595
+ #define CV_SIMD_64F CV_SIMD128_64F
596
+ #define CV_SIMD_WIDTH 16
597
+ //! @addtogroup core_hal_intrin
598
+ //! @{
599
+ //! @brief Maximum available vector register capacity 8-bit unsigned integer
600
+ //! values
601
+ typedef v_uint8x16 v_uint8;
602
+ //! @brief Maximum available vector register capacity 8-bit signed integer
603
+ //! values
604
+ typedef v_int8x16 v_int8;
605
+ //! @brief Maximum available vector register capacity 16-bit unsigned integer
606
+ //! values
607
+ typedef v_uint16x8 v_uint16;
608
+ //! @brief Maximum available vector register capacity 16-bit signed integer
609
+ //! values
610
+ typedef v_int16x8 v_int16;
611
+ //! @brief Maximum available vector register capacity 32-bit unsigned integer
612
+ //! values
613
+ typedef v_uint32x4 v_uint32;
614
+ //! @brief Maximum available vector register capacity 32-bit signed integer
615
+ //! values
616
+ typedef v_int32x4 v_int32;
617
+ //! @brief Maximum available vector register capacity 64-bit unsigned integer
618
+ //! values
619
+ typedef v_uint64x2 v_uint64;
620
+ //! @brief Maximum available vector register capacity 64-bit signed integer
621
+ //! values
622
+ typedef v_int64x2 v_int64;
623
+ //! @brief Maximum available vector register capacity 32-bit floating point
624
+ //! values (single precision)
625
+ typedef v_float32x4 v_float32;
626
+ #if CV_SIMD128_64F
627
+ //! @brief Maximum available vector register capacity 64-bit floating point
628
+ //! values (double precision)
629
+ typedef v_float64x2 v_float64;
630
+ #endif
631
+ //! @}
632
+
633
+ #define VXPREFIX(func) v##func
634
+ } // namespace CV__SIMD_NAMESPACE
635
+ using namespace CV__SIMD_NAMESPACE;
636
+
637
+ #elif CV_SIMD_SCALABLE
638
+ #define CV__SIMD_NAMESPACE simd
639
+ namespace CV__SIMD_NAMESPACE {
640
+ #define CV_SIMD 0
641
+ #define CV_SIMD_WIDTH 128 /* 1024/8 */
642
+
643
+ #define VXPREFIX(func) v##func
644
+ } // namespace CV__SIMD_NAMESPACE
645
+ using namespace CV__SIMD_NAMESPACE;
646
+
647
+ #endif
648
+
649
+ //! @cond IGNORED
650
+ #ifndef CV_SIMD_64F
651
+ #define CV_SIMD_64F 0
652
+ #endif
653
+
654
+ namespace CV__SIMD_NAMESPACE {
655
+ //! @addtogroup core_hal_intrin
656
+ //! @{
657
+ //! @name Wide init with value
658
+ //! @{
659
+ //! @brief Create maximum available capacity vector with elements set to a
660
+ //! specific value
661
+ inline v_uint8 vx_setall_u8(uchar v) { return VXPREFIX(_setall_u8)(v); }
662
+ inline v_int8 vx_setall_s8(schar v) { return VXPREFIX(_setall_s8)(v); }
663
+ inline v_uint16 vx_setall_u16(ushort v) { return VXPREFIX(_setall_u16)(v); }
664
+ inline v_int16 vx_setall_s16(short v) { return VXPREFIX(_setall_s16)(v); }
665
+ inline v_int32 vx_setall_s32(int v) { return VXPREFIX(_setall_s32)(v); }
666
+ inline v_uint32 vx_setall_u32(unsigned v) { return VXPREFIX(_setall_u32)(v); }
667
+ inline v_float32 vx_setall_f32(float v) { return VXPREFIX(_setall_f32)(v); }
668
+ inline v_int64 vx_setall_s64(int64 v) { return VXPREFIX(_setall_s64)(v); }
669
+ inline v_uint64 vx_setall_u64(uint64 v) { return VXPREFIX(_setall_u64)(v); }
670
+ #if CV_SIMD_64F || CV_SIMD_SCALABLE_64F
671
+ inline v_float64 vx_setall_f64(double v) { return VXPREFIX(_setall_f64)(v); }
672
+ #endif
673
+ //! @}
674
+
675
+ //! @name Wide init with zero
676
+ //! @{
677
+ //! @brief Create maximum available capacity vector with elements set to zero
678
+ inline v_uint8 vx_setzero_u8() { return VXPREFIX(_setzero_u8)(); }
679
+ inline v_int8 vx_setzero_s8() { return VXPREFIX(_setzero_s8)(); }
680
+ inline v_uint16 vx_setzero_u16() { return VXPREFIX(_setzero_u16)(); }
681
+ inline v_int16 vx_setzero_s16() { return VXPREFIX(_setzero_s16)(); }
682
+ inline v_int32 vx_setzero_s32() { return VXPREFIX(_setzero_s32)(); }
683
+ inline v_uint32 vx_setzero_u32() { return VXPREFIX(_setzero_u32)(); }
684
+ inline v_float32 vx_setzero_f32() { return VXPREFIX(_setzero_f32)(); }
685
+ inline v_int64 vx_setzero_s64() { return VXPREFIX(_setzero_s64)(); }
686
+ inline v_uint64 vx_setzero_u64() { return VXPREFIX(_setzero_u64)(); }
687
+ #if CV_SIMD_64F || CV_SIMD_SCALABLE_64F
688
+ inline v_float64 vx_setzero_f64() { return VXPREFIX(_setzero_f64)(); }
689
+ #endif
690
+ //! @}
691
+
692
+ //! @name Wide load from memory
693
+ //! @{
694
+ //! @brief Load maximum available capacity register contents from memory
695
+ inline v_uint8 vx_load(const uchar *ptr) { return VXPREFIX(_load)(ptr); }
696
+ inline v_int8 vx_load(const schar *ptr) { return VXPREFIX(_load)(ptr); }
697
+ inline v_uint16 vx_load(const ushort *ptr) { return VXPREFIX(_load)(ptr); }
698
+ inline v_int16 vx_load(const short *ptr) { return VXPREFIX(_load)(ptr); }
699
+ inline v_int32 vx_load(const int *ptr) { return VXPREFIX(_load)(ptr); }
700
+ inline v_uint32 vx_load(const unsigned *ptr) { return VXPREFIX(_load)(ptr); }
701
+ inline v_float32 vx_load(const float *ptr) { return VXPREFIX(_load)(ptr); }
702
+ inline v_int64 vx_load(const int64 *ptr) { return VXPREFIX(_load)(ptr); }
703
+ inline v_uint64 vx_load(const uint64 *ptr) { return VXPREFIX(_load)(ptr); }
704
+ #if CV_SIMD_64F || CV_SIMD_SCALABLE_64F
705
+ inline v_float64 vx_load(const double *ptr) { return VXPREFIX(_load)(ptr); }
706
+ #endif
707
+ //! @}
708
+
709
+ //! @name Wide load from memory(aligned)
710
+ //! @{
711
+ //! @brief Load maximum available capacity register contents from
712
+ //! memory(aligned)
713
+ inline v_uint8 vx_load_aligned(const uchar *ptr) {
714
+ return VXPREFIX(_load_aligned)(ptr);
715
+ }
716
+ inline v_int8 vx_load_aligned(const schar *ptr) {
717
+ return VXPREFIX(_load_aligned)(ptr);
718
+ }
719
+ inline v_uint16 vx_load_aligned(const ushort *ptr) {
720
+ return VXPREFIX(_load_aligned)(ptr);
721
+ }
722
+ inline v_int16 vx_load_aligned(const short *ptr) {
723
+ return VXPREFIX(_load_aligned)(ptr);
724
+ }
725
+ inline v_int32 vx_load_aligned(const int *ptr) {
726
+ return VXPREFIX(_load_aligned)(ptr);
727
+ }
728
+ inline v_uint32 vx_load_aligned(const unsigned *ptr) {
729
+ return VXPREFIX(_load_aligned)(ptr);
730
+ }
731
+ inline v_float32 vx_load_aligned(const float *ptr) {
732
+ return VXPREFIX(_load_aligned)(ptr);
733
+ }
734
+ inline v_int64 vx_load_aligned(const int64 *ptr) {
735
+ return VXPREFIX(_load_aligned)(ptr);
736
+ }
737
+ inline v_uint64 vx_load_aligned(const uint64 *ptr) {
738
+ return VXPREFIX(_load_aligned)(ptr);
739
+ }
740
+ #if CV_SIMD_64F || CV_SIMD_SCALABLE_64F
741
+ inline v_float64 vx_load_aligned(const double *ptr) {
742
+ return VXPREFIX(_load_aligned)(ptr);
743
+ }
744
+ #endif
745
+ //! @}
746
+
747
+ //! @name Wide load lower half from memory
748
+ //! @{
749
+ //! @brief Load lower half of maximum available capacity register from memory
750
+ inline v_uint8 vx_load_low(const uchar *ptr) {
751
+ return VXPREFIX(_load_low)(ptr);
752
+ }
753
+ inline v_int8 vx_load_low(const schar *ptr) { return VXPREFIX(_load_low)(ptr); }
754
+ inline v_uint16 vx_load_low(const ushort *ptr) {
755
+ return VXPREFIX(_load_low)(ptr);
756
+ }
757
+ inline v_int16 vx_load_low(const short *ptr) {
758
+ return VXPREFIX(_load_low)(ptr);
759
+ }
760
+ inline v_int32 vx_load_low(const int *ptr) { return VXPREFIX(_load_low)(ptr); }
761
+ inline v_uint32 vx_load_low(const unsigned *ptr) {
762
+ return VXPREFIX(_load_low)(ptr);
763
+ }
764
+ inline v_float32 vx_load_low(const float *ptr) {
765
+ return VXPREFIX(_load_low)(ptr);
766
+ }
767
+ inline v_int64 vx_load_low(const int64 *ptr) {
768
+ return VXPREFIX(_load_low)(ptr);
769
+ }
770
+ inline v_uint64 vx_load_low(const uint64 *ptr) {
771
+ return VXPREFIX(_load_low)(ptr);
772
+ }
773
+ #if CV_SIMD_64F || CV_SIMD_SCALABLE_64F
774
+ inline v_float64 vx_load_low(const double *ptr) {
775
+ return VXPREFIX(_load_low)(ptr);
776
+ }
777
+ #endif
778
+ //! @}
779
+
780
+ //! @name Wide load halfs from memory
781
+ //! @{
782
+ //! @brief Load maximum available capacity register contents from two memory
783
+ //! blocks
784
+ inline v_uint8 vx_load_halves(const uchar *ptr0, const uchar *ptr1) {
785
+ return VXPREFIX(_load_halves)(ptr0, ptr1);
786
+ }
787
+ inline v_int8 vx_load_halves(const schar *ptr0, const schar *ptr1) {
788
+ return VXPREFIX(_load_halves)(ptr0, ptr1);
789
+ }
790
+ inline v_uint16 vx_load_halves(const ushort *ptr0, const ushort *ptr1) {
791
+ return VXPREFIX(_load_halves)(ptr0, ptr1);
792
+ }
793
+ inline v_int16 vx_load_halves(const short *ptr0, const short *ptr1) {
794
+ return VXPREFIX(_load_halves)(ptr0, ptr1);
795
+ }
796
+ inline v_int32 vx_load_halves(const int *ptr0, const int *ptr1) {
797
+ return VXPREFIX(_load_halves)(ptr0, ptr1);
798
+ }
799
+ inline v_uint32 vx_load_halves(const unsigned *ptr0, const unsigned *ptr1) {
800
+ return VXPREFIX(_load_halves)(ptr0, ptr1);
801
+ }
802
+ inline v_float32 vx_load_halves(const float *ptr0, const float *ptr1) {
803
+ return VXPREFIX(_load_halves)(ptr0, ptr1);
804
+ }
805
+ inline v_int64 vx_load_halves(const int64 *ptr0, const int64 *ptr1) {
806
+ return VXPREFIX(_load_halves)(ptr0, ptr1);
807
+ }
808
+ inline v_uint64 vx_load_halves(const uint64 *ptr0, const uint64 *ptr1) {
809
+ return VXPREFIX(_load_halves)(ptr0, ptr1);
810
+ }
811
+ #if CV_SIMD_64F || CV_SIMD_SCALABLE_64F
812
+ inline v_float64 vx_load_halves(const double *ptr0, const double *ptr1) {
813
+ return VXPREFIX(_load_halves)(ptr0, ptr1);
814
+ }
815
+ #endif
816
+ //! @}
817
+
818
+ //! @name Wide LUT of elements
819
+ //! @{
820
+ //! @brief Load maximum available capacity register contents with array elements
821
+ //! by provided indexes
822
+ inline v_uint8 vx_lut(const uchar *ptr, const int *idx) {
823
+ return VXPREFIX(_lut)(ptr, idx);
824
+ }
825
+ inline v_int8 vx_lut(const schar *ptr, const int *idx) {
826
+ return VXPREFIX(_lut)(ptr, idx);
827
+ }
828
+ inline v_uint16 vx_lut(const ushort *ptr, const int *idx) {
829
+ return VXPREFIX(_lut)(ptr, idx);
830
+ }
831
+ inline v_int16 vx_lut(const short *ptr, const int *idx) {
832
+ return VXPREFIX(_lut)(ptr, idx);
833
+ }
834
+ inline v_int32 vx_lut(const int *ptr, const int *idx) {
835
+ return VXPREFIX(_lut)(ptr, idx);
836
+ }
837
+ inline v_uint32 vx_lut(const unsigned *ptr, const int *idx) {
838
+ return VXPREFIX(_lut)(ptr, idx);
839
+ }
840
+ inline v_float32 vx_lut(const float *ptr, const int *idx) {
841
+ return VXPREFIX(_lut)(ptr, idx);
842
+ }
843
+ inline v_int64 vx_lut(const int64 *ptr, const int *idx) {
844
+ return VXPREFIX(_lut)(ptr, idx);
845
+ }
846
+ inline v_uint64 vx_lut(const uint64 *ptr, const int *idx) {
847
+ return VXPREFIX(_lut)(ptr, idx);
848
+ }
849
+ #if CV_SIMD_64F || CV_SIMD_SCALABLE_64F
850
+ inline v_float64 vx_lut(const double *ptr, const int *idx) {
851
+ return VXPREFIX(_lut)(ptr, idx);
852
+ }
853
+ #endif
854
+ //! @}
855
+
856
+ //! @name Wide LUT of element pairs
857
+ //! @{
858
+ //! @brief Load maximum available capacity register contents with array element
859
+ //! pairs by provided indexes
860
+ inline v_uint8 vx_lut_pairs(const uchar *ptr, const int *idx) {
861
+ return VXPREFIX(_lut_pairs)(ptr, idx);
862
+ }
863
+ inline v_int8 vx_lut_pairs(const schar *ptr, const int *idx) {
864
+ return VXPREFIX(_lut_pairs)(ptr, idx);
865
+ }
866
+ inline v_uint16 vx_lut_pairs(const ushort *ptr, const int *idx) {
867
+ return VXPREFIX(_lut_pairs)(ptr, idx);
868
+ }
869
+ inline v_int16 vx_lut_pairs(const short *ptr, const int *idx) {
870
+ return VXPREFIX(_lut_pairs)(ptr, idx);
871
+ }
872
+ inline v_int32 vx_lut_pairs(const int *ptr, const int *idx) {
873
+ return VXPREFIX(_lut_pairs)(ptr, idx);
874
+ }
875
+ inline v_uint32 vx_lut_pairs(const unsigned *ptr, const int *idx) {
876
+ return VXPREFIX(_lut_pairs)(ptr, idx);
877
+ }
878
+ inline v_float32 vx_lut_pairs(const float *ptr, const int *idx) {
879
+ return VXPREFIX(_lut_pairs)(ptr, idx);
880
+ }
881
+ inline v_int64 vx_lut_pairs(const int64 *ptr, const int *idx) {
882
+ return VXPREFIX(_lut_pairs)(ptr, idx);
883
+ }
884
+ inline v_uint64 vx_lut_pairs(const uint64 *ptr, const int *idx) {
885
+ return VXPREFIX(_lut_pairs)(ptr, idx);
886
+ }
887
+ #if CV_SIMD_64F || CV_SIMD_SCALABLE_64F
888
+ inline v_float64 vx_lut_pairs(const double *ptr, const int *idx) {
889
+ return VXPREFIX(_lut_pairs)(ptr, idx);
890
+ }
891
+ #endif
892
+ //! @}
893
+
894
+ //! @name Wide LUT of element quads
895
+ //! @{
896
+ //! @brief Load maximum available capacity register contents with array element
897
+ //! quads by provided indexes
898
+ inline v_uint8 vx_lut_quads(const uchar *ptr, const int *idx) {
899
+ return VXPREFIX(_lut_quads)(ptr, idx);
900
+ }
901
+ inline v_int8 vx_lut_quads(const schar *ptr, const int *idx) {
902
+ return VXPREFIX(_lut_quads)(ptr, idx);
903
+ }
904
+ inline v_uint16 vx_lut_quads(const ushort *ptr, const int *idx) {
905
+ return VXPREFIX(_lut_quads)(ptr, idx);
906
+ }
907
+ inline v_int16 vx_lut_quads(const short *ptr, const int *idx) {
908
+ return VXPREFIX(_lut_quads)(ptr, idx);
909
+ }
910
+ inline v_int32 vx_lut_quads(const int *ptr, const int *idx) {
911
+ return VXPREFIX(_lut_quads)(ptr, idx);
912
+ }
913
+ inline v_uint32 vx_lut_quads(const unsigned *ptr, const int *idx) {
914
+ return VXPREFIX(_lut_quads)(ptr, idx);
915
+ }
916
+ inline v_float32 vx_lut_quads(const float *ptr, const int *idx) {
917
+ return VXPREFIX(_lut_quads)(ptr, idx);
918
+ }
919
+ //! @}
920
+
921
+ //! @name Wide load with double expansion
922
+ //! @{
923
+ //! @brief Load maximum available capacity register contents from memory with
924
+ //! double expand
925
+ inline v_uint16 vx_load_expand(const uchar *ptr) {
926
+ return VXPREFIX(_load_expand)(ptr);
927
+ }
928
+ inline v_int16 vx_load_expand(const schar *ptr) {
929
+ return VXPREFIX(_load_expand)(ptr);
930
+ }
931
+ inline v_uint32 vx_load_expand(const ushort *ptr) {
932
+ return VXPREFIX(_load_expand)(ptr);
933
+ }
934
+ inline v_int32 vx_load_expand(const short *ptr) {
935
+ return VXPREFIX(_load_expand)(ptr);
936
+ }
937
+ inline v_int64 vx_load_expand(const int *ptr) {
938
+ return VXPREFIX(_load_expand)(ptr);
939
+ }
940
+ inline v_uint64 vx_load_expand(const unsigned *ptr) {
941
+ return VXPREFIX(_load_expand)(ptr);
942
+ }
943
+ inline v_float32 vx_load_expand(const hfloat *ptr) {
944
+ return VXPREFIX(_load_expand)(ptr);
945
+ }
946
+ //! @}
947
+
948
+ //! @name Wide load with quad expansion
949
+ //! @{
950
+ //! @brief Load maximum available capacity register contents from memory with
951
+ //! quad expand
952
+ inline v_uint32 vx_load_expand_q(const uchar *ptr) {
953
+ return VXPREFIX(_load_expand_q)(ptr);
954
+ }
955
+ inline v_int32 vx_load_expand_q(const schar *ptr) {
956
+ return VXPREFIX(_load_expand_q)(ptr);
957
+ }
958
+ //! @}
959
+
960
+ /** @brief SIMD processing state cleanup call */
961
+ inline void vx_cleanup() { VXPREFIX(_cleanup)(); }
962
+
963
+ #if !CV_SIMD_SCALABLE
964
+ // Compatibility layer
965
+ #if !(CV_NEON && !defined(CV_FORCE_SIMD128_CPP))
966
+ template <typename T> struct VTraits {
967
+ static inline int vlanes() { return T::nlanes; }
968
+ enum { nlanes = T::nlanes, max_nlanes = T::nlanes };
969
+ using lane_type = typename T::lane_type;
970
+ };
971
+
972
+ //////////// get0 ////////////
973
+ #define OPENCV_HAL_WRAP_GRT0(_Tpvec) \
974
+ inline typename VTraits<_Tpvec>::lane_type v_get0(const _Tpvec &v) { \
975
+ return v.get0(); \
976
+ }
977
+
978
+ OPENCV_HAL_WRAP_GRT0(v_uint8)
979
+ OPENCV_HAL_WRAP_GRT0(v_int8)
980
+ OPENCV_HAL_WRAP_GRT0(v_uint16)
981
+ OPENCV_HAL_WRAP_GRT0(v_int16)
982
+ OPENCV_HAL_WRAP_GRT0(v_uint32)
983
+ OPENCV_HAL_WRAP_GRT0(v_int32)
984
+ OPENCV_HAL_WRAP_GRT0(v_uint64)
985
+ OPENCV_HAL_WRAP_GRT0(v_int64)
986
+ OPENCV_HAL_WRAP_GRT0(v_float32)
987
+ #if CV_SIMD_64F
988
+ OPENCV_HAL_WRAP_GRT0(v_float64)
989
+ #endif
990
+ #if CV_SIMD_WIDTH != 16 /*128*/ && CV_SIMD128
991
+ OPENCV_HAL_WRAP_GRT0(v_uint8x16)
992
+ OPENCV_HAL_WRAP_GRT0(v_uint16x8)
993
+ OPENCV_HAL_WRAP_GRT0(v_uint32x4)
994
+ OPENCV_HAL_WRAP_GRT0(v_uint64x2)
995
+ OPENCV_HAL_WRAP_GRT0(v_int8x16)
996
+ OPENCV_HAL_WRAP_GRT0(v_int16x8)
997
+ OPENCV_HAL_WRAP_GRT0(v_int32x4)
998
+ OPENCV_HAL_WRAP_GRT0(v_int64x2)
999
+ OPENCV_HAL_WRAP_GRT0(v_float32x4)
1000
+ #if CV_SIMD_64F
1001
+ OPENCV_HAL_WRAP_GRT0(v_float64x2)
1002
+ #endif
1003
+ #endif
1004
+ #if CV_SIMD_WIDTH != 32 /*256*/ && CV_SIMD256
1005
+ OPENCV_HAL_WRAP_GRT0(v_uint8x32)
1006
+ OPENCV_HAL_WRAP_GRT0(v_uint16x16)
1007
+ OPENCV_HAL_WRAP_GRT0(v_uint32x8)
1008
+ OPENCV_HAL_WRAP_GRT0(v_uint64x4)
1009
+ OPENCV_HAL_WRAP_GRT0(v_int8x32)
1010
+ OPENCV_HAL_WRAP_GRT0(v_int16x16)
1011
+ OPENCV_HAL_WRAP_GRT0(v_int32x8)
1012
+ OPENCV_HAL_WRAP_GRT0(v_int64x4)
1013
+ OPENCV_HAL_WRAP_GRT0(v_float32x8)
1014
+ #if CV_SIMD_64F
1015
+ OPENCV_HAL_WRAP_GRT0(v_float64x4)
1016
+ #endif
1017
+ #endif
1018
+ #endif
1019
+
1020
+ #define OPENCV_HAL_WRAP_BIN_OP_ADDSUB(_Tpvec) \
1021
+ template <typename... Args> \
1022
+ inline _Tpvec v_add(const _Tpvec &f1, const _Tpvec &f2, const _Tpvec &f3, \
1023
+ const Args &...vf) { \
1024
+ return v_add(v_add(f1, f2), f3, vf...); \
1025
+ }
1026
+
1027
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint8)
1028
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint16)
1029
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint32)
1030
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint64)
1031
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int8)
1032
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int16)
1033
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int32)
1034
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int64)
1035
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_float32)
1036
+ #if CV_SIMD_64F
1037
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_float64)
1038
+ #endif
1039
+ #if CV_SIMD_WIDTH != 16 /*128*/ && CV_SIMD128
1040
+ // when we use CV_SIMD128 with 256/512 bit SIMD (e.g. AVX2 or AVX512)
1041
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint8x16)
1042
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint16x8)
1043
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint32x4)
1044
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint64x2)
1045
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int8x16)
1046
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int16x8)
1047
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int32x4)
1048
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int64x2)
1049
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_float32x4)
1050
+ #if CV_SIMD_64F
1051
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_float64x2)
1052
+ #endif
1053
+ #endif
1054
+ #if CV_SIMD_WIDTH != 32 /*256*/ && CV_SIMD256
1055
+ // when we use CV_SIMD256 with 512 bit SIMD (e.g. AVX512)
1056
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint8x32)
1057
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint16x16)
1058
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint32x8)
1059
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_uint64x4)
1060
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int8x32)
1061
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int16x16)
1062
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int32x8)
1063
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_int64x4)
1064
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_float32x8)
1065
+ #if CV_SIMD_64F
1066
+ OPENCV_HAL_WRAP_BIN_OP_ADDSUB(v_float64x4)
1067
+ #endif
1068
+ #endif
1069
+
1070
+ #define OPENCV_HAL_WRAP_BIN_OP_MUL(_Tpvec) \
1071
+ template <typename... Args> \
1072
+ inline _Tpvec v_mul(const _Tpvec &f1, const _Tpvec &f2, const _Tpvec &f3, \
1073
+ const Args &...vf) { \
1074
+ return v_mul(v_mul(f1, f2), f3, vf...); \
1075
+ }
1076
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_uint8)
1077
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_int8)
1078
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_uint16)
1079
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_uint32)
1080
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_int16)
1081
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_int32)
1082
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_float32)
1083
+ #if CV_SIMD_64F
1084
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_float64)
1085
+ #endif
1086
+ #if CV_SIMD_WIDTH != 16 /*128*/ && CV_SIMD128
1087
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_uint8x16)
1088
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_uint16x8)
1089
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_uint32x4)
1090
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_int8x16)
1091
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_int16x8)
1092
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_int32x4)
1093
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_float32x4)
1094
+ #if CV_SIMD_64F
1095
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_float64x2)
1096
+ #endif
1097
+ #endif
1098
+ #if CV_SIMD_WIDTH != 32 /*256*/ && CV_SIMD256
1099
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_uint8x32)
1100
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_uint16x16)
1101
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_uint32x8)
1102
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_int8x32)
1103
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_int16x16)
1104
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_int32x8)
1105
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_float32x8)
1106
+ #if CV_SIMD_64F
1107
+ OPENCV_HAL_WRAP_BIN_OP_MUL(v_float64x4)
1108
+ #endif
1109
+ #endif
1110
+
1111
+ #define OPENCV_HAL_WRAP_EXTRACT(_Tpvec) \
1112
+ inline typename VTraits<_Tpvec>::lane_type v_extract_highest( \
1113
+ const _Tpvec &v) { \
1114
+ return v_extract_n<VTraits<_Tpvec>::nlanes - 1>(v); \
1115
+ }
1116
+
1117
+ OPENCV_HAL_WRAP_EXTRACT(v_uint8)
1118
+ OPENCV_HAL_WRAP_EXTRACT(v_int8)
1119
+ OPENCV_HAL_WRAP_EXTRACT(v_uint16)
1120
+ OPENCV_HAL_WRAP_EXTRACT(v_int16)
1121
+ OPENCV_HAL_WRAP_EXTRACT(v_uint32)
1122
+ OPENCV_HAL_WRAP_EXTRACT(v_int32)
1123
+ OPENCV_HAL_WRAP_EXTRACT(v_uint64)
1124
+ OPENCV_HAL_WRAP_EXTRACT(v_int64)
1125
+ OPENCV_HAL_WRAP_EXTRACT(v_float32)
1126
+ #if CV_SIMD_64F
1127
+ OPENCV_HAL_WRAP_EXTRACT(v_float64)
1128
+ #endif
1129
+ #if CV_SIMD_WIDTH != 16 /*128*/ && CV_SIMD128
1130
+ OPENCV_HAL_WRAP_EXTRACT(v_uint8x16)
1131
+ OPENCV_HAL_WRAP_EXTRACT(v_uint16x8)
1132
+ OPENCV_HAL_WRAP_EXTRACT(v_uint32x4)
1133
+ OPENCV_HAL_WRAP_EXTRACT(v_uint64x2)
1134
+ OPENCV_HAL_WRAP_EXTRACT(v_int8x16)
1135
+ OPENCV_HAL_WRAP_EXTRACT(v_int16x8)
1136
+ OPENCV_HAL_WRAP_EXTRACT(v_int32x4)
1137
+ OPENCV_HAL_WRAP_EXTRACT(v_int64x2)
1138
+ OPENCV_HAL_WRAP_EXTRACT(v_float32x4)
1139
+ #if CV_SIMD_64F
1140
+ OPENCV_HAL_WRAP_EXTRACT(v_float64x2)
1141
+ #endif
1142
+ #endif
1143
+ #if CV_SIMD_WIDTH != 32 /*256*/ && CV_SIMD256
1144
+ OPENCV_HAL_WRAP_EXTRACT(v_uint8x32)
1145
+ OPENCV_HAL_WRAP_EXTRACT(v_uint16x16)
1146
+ OPENCV_HAL_WRAP_EXTRACT(v_uint32x8)
1147
+ OPENCV_HAL_WRAP_EXTRACT(v_uint64x4)
1148
+ OPENCV_HAL_WRAP_EXTRACT(v_int8x32)
1149
+ OPENCV_HAL_WRAP_EXTRACT(v_int16x16)
1150
+ OPENCV_HAL_WRAP_EXTRACT(v_int32x8)
1151
+ OPENCV_HAL_WRAP_EXTRACT(v_int64x4)
1152
+ OPENCV_HAL_WRAP_EXTRACT(v_float32x8)
1153
+ #if CV_SIMD_64F
1154
+ OPENCV_HAL_WRAP_EXTRACT(v_float64x4)
1155
+ #endif
1156
+ #endif
1157
+
1158
+ #define OPENCV_HAL_WRAP_BROADCAST(_Tpvec) \
1159
+ inline _Tpvec v_broadcast_highest(const _Tpvec &v) { \
1160
+ return v_broadcast_element<VTraits<_Tpvec>::nlanes - 1>(v); \
1161
+ }
1162
+
1163
+ OPENCV_HAL_WRAP_BROADCAST(v_uint32)
1164
+ OPENCV_HAL_WRAP_BROADCAST(v_int32)
1165
+ OPENCV_HAL_WRAP_BROADCAST(v_float32)
1166
+ #if CV_SIMD_WIDTH != 16 /*128*/ && CV_SIMD128
1167
+ OPENCV_HAL_WRAP_BROADCAST(v_uint32x4)
1168
+ OPENCV_HAL_WRAP_BROADCAST(v_int32x4)
1169
+ OPENCV_HAL_WRAP_BROADCAST(v_float32x4)
1170
+ #endif
1171
+ #if CV_SIMD_WIDTH != 32 /*256*/ && CV_SIMD256
1172
+ OPENCV_HAL_WRAP_BROADCAST(v_uint32x8)
1173
+ OPENCV_HAL_WRAP_BROADCAST(v_int32x8)
1174
+ OPENCV_HAL_WRAP_BROADCAST(v_float32x8)
1175
+ #endif
1176
+
1177
+ #endif //! CV_SIMD_SCALABLE
1178
+
1179
+ //! @cond IGNORED
1180
+
1181
+ // backward compatibility
1182
+ template <typename _Tp, typename _Tvec>
1183
+ static inline void vx_store(_Tp *dst, const _Tvec &v) {
1184
+ return v_store(dst, v);
1185
+ }
1186
+ // backward compatibility
1187
+ template <typename _Tp, typename _Tvec>
1188
+ static inline void vx_store_aligned(_Tp *dst, const _Tvec &v) {
1189
+ return v_store_aligned(dst, v);
1190
+ }
1191
+
1192
+ //! @endcond
1193
+
1194
+ //! @}
1195
+ #undef VXPREFIX
1196
+ } // namespace CV__SIMD_NAMESPACE
1197
+
1198
+ #ifndef CV_SIMD_FP16
1199
+ #define CV_SIMD_FP16 \
1200
+ 0 //!< Defined to 1 on native support of operations with float16x8_t /
1201
+ //!< float16x16_t (SIMD256) types
1202
+ #endif
1203
+
1204
+ #ifndef CV_SIMD
1205
+ #define CV_SIMD 0
1206
+ #endif
1207
+
1208
+ #include "simd_utils.impl.hpp"
1209
+
1210
+ #ifndef CV_DOXYGEN
1211
+ CV_CPU_OPTIMIZATION_HAL_NAMESPACE_END
1212
+ #endif
1213
+
1214
+ } // namespace cv
1215
+
1216
+ //! @endcond
1217
+
1218
+ #if defined(__GNUC__) && __GNUC__ == 12
1219
+ #pragma GCC diagnostic pop
1220
+ #endif
1221
+
1222
+ #endif