react-native-executorch 0.4.7 → 0.5.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 (1013) 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/SpeechToText.cpp +64 -0
  85. package/common/rnexecutorch/models/speech_to_text/SpeechToText.h +31 -0
  86. package/common/rnexecutorch/models/speech_to_text/SpeechToTextStrategy.h +27 -0
  87. package/common/rnexecutorch/models/speech_to_text/WhisperStrategy.cpp +50 -0
  88. package/common/rnexecutorch/models/speech_to_text/WhisperStrategy.h +25 -0
  89. package/common/rnexecutorch/models/style_transfer/StyleTransfer.cpp +55 -0
  90. package/common/rnexecutorch/models/style_transfer/StyleTransfer.h +29 -0
  91. package/common/rnexecutorch/models/vertical_ocr/VerticalDetector.cpp +92 -0
  92. package/common/rnexecutorch/models/vertical_ocr/VerticalDetector.h +49 -0
  93. package/common/rnexecutorch/models/vertical_ocr/VerticalOCR.cpp +180 -0
  94. package/common/rnexecutorch/models/vertical_ocr/VerticalOCR.h +78 -0
  95. package/common/rnexecutorch/tests/LogTest.cpp +530 -0
  96. package/common/rnexecutorch/tests/README.md +20 -0
  97. package/common/rnexecutorch/tests/run_all_tests.sh +14 -0
  98. package/common/rnexecutorch/tests/run_test.sh +18 -0
  99. package/ios/ExecutorchLib.xcframework/Info.plist +4 -4
  100. package/ios/ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/ExecutorchLib +0 -0
  101. package/ios/ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/Info.plist +0 -0
  102. package/ios/ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/ExecutorchLib +0 -0
  103. package/ios/ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/Info.plist +0 -0
  104. package/ios/RnExecutorch/ETInstaller.h +8 -0
  105. package/ios/RnExecutorch/ETInstaller.mm +56 -0
  106. package/ios/RnExecutorch/utils/Conversions.h +8 -9
  107. package/ios/RnExecutorch/utils/Numerical.h +2 -0
  108. package/ios/RnExecutorch.xcodeproj/project.pbxproj +73 -0
  109. package/lib/module/Error.js +8 -6
  110. package/lib/module/Error.js.map +1 -1
  111. package/lib/module/common/Logger.js +23 -0
  112. package/lib/module/common/Logger.js.map +1 -0
  113. package/lib/module/constants/llmDefaults.js +8 -0
  114. package/lib/module/constants/llmDefaults.js.map +1 -1
  115. package/lib/module/constants/modelUrls.js +328 -84
  116. package/lib/module/constants/modelUrls.js.map +1 -1
  117. package/lib/module/constants/ocr/models.js +181 -286
  118. package/lib/module/constants/ocr/models.js.map +1 -1
  119. package/lib/module/constants/ocr/symbols.js +63 -63
  120. package/lib/module/controllers/LLMController.js +17 -11
  121. package/lib/module/controllers/LLMController.js.map +1 -1
  122. package/lib/module/controllers/OCRController.js +16 -9
  123. package/lib/module/controllers/OCRController.js.map +1 -1
  124. package/lib/module/controllers/VerticalOCRController.js +16 -9
  125. package/lib/module/controllers/VerticalOCRController.js.map +1 -1
  126. package/lib/module/hooks/computer_vision/useClassification.js +5 -5
  127. package/lib/module/hooks/computer_vision/useClassification.js.map +1 -1
  128. package/lib/module/hooks/computer_vision/useImageEmbeddings.js +13 -0
  129. package/lib/module/hooks/computer_vision/useImageEmbeddings.js.map +1 -0
  130. package/lib/module/hooks/computer_vision/useImageSegmentation.js +4 -4
  131. package/lib/module/hooks/computer_vision/useImageSegmentation.js.map +1 -1
  132. package/lib/module/hooks/computer_vision/useOCR.js +14 -15
  133. package/lib/module/hooks/computer_vision/useOCR.js.map +1 -1
  134. package/lib/module/hooks/computer_vision/useObjectDetection.js +5 -5
  135. package/lib/module/hooks/computer_vision/useObjectDetection.js.map +1 -1
  136. package/lib/module/hooks/computer_vision/useStyleTransfer.js +5 -5
  137. package/lib/module/hooks/computer_vision/useStyleTransfer.js.map +1 -1
  138. package/lib/module/hooks/computer_vision/useVerticalOCR.js +16 -17
  139. package/lib/module/hooks/computer_vision/useVerticalOCR.js.map +1 -1
  140. package/lib/module/hooks/general/useExecutorchModule.js +5 -3
  141. package/lib/module/hooks/general/useExecutorchModule.js.map +1 -1
  142. package/lib/module/hooks/natural_language_processing/useLLM.js +22 -25
  143. package/lib/module/hooks/natural_language_processing/useLLM.js.map +1 -1
  144. package/lib/module/hooks/natural_language_processing/useSpeechToText.js +72 -33
  145. package/lib/module/hooks/natural_language_processing/useSpeechToText.js.map +1 -1
  146. package/lib/module/hooks/natural_language_processing/useTextEmbeddings.js +4 -5
  147. package/lib/module/hooks/natural_language_processing/useTextEmbeddings.js.map +1 -1
  148. package/lib/module/hooks/natural_language_processing/useTokenizer.js +20 -19
  149. package/lib/module/hooks/natural_language_processing/useTokenizer.js.map +1 -1
  150. package/lib/module/hooks/useNonStaticModule.js +52 -0
  151. package/lib/module/hooks/useNonStaticModule.js.map +1 -0
  152. package/lib/module/index.js +15 -4
  153. package/lib/module/index.js.map +1 -1
  154. package/lib/module/modules/BaseModule.js +6 -3
  155. package/lib/module/modules/BaseModule.js.map +1 -1
  156. package/lib/module/modules/BaseNonStaticModule.js +17 -0
  157. package/lib/module/modules/BaseNonStaticModule.js.map +1 -0
  158. package/lib/module/modules/computer_vision/ClassificationModule.js +13 -8
  159. package/lib/module/modules/computer_vision/ClassificationModule.js.map +1 -1
  160. package/lib/module/modules/computer_vision/ImageEmbeddingsModule.js +19 -0
  161. package/lib/module/modules/computer_vision/ImageEmbeddingsModule.js.map +1 -0
  162. package/lib/module/modules/computer_vision/ImageSegmentationModule.js +21 -19
  163. package/lib/module/modules/computer_vision/ImageSegmentationModule.js.map +1 -1
  164. package/lib/module/modules/computer_vision/OCRModule.js +13 -10
  165. package/lib/module/modules/computer_vision/OCRModule.js.map +1 -1
  166. package/lib/module/modules/computer_vision/ObjectDetectionModule.js +13 -8
  167. package/lib/module/modules/computer_vision/ObjectDetectionModule.js.map +1 -1
  168. package/lib/module/modules/computer_vision/StyleTransferModule.js +13 -8
  169. package/lib/module/modules/computer_vision/StyleTransferModule.js.map +1 -1
  170. package/lib/module/modules/computer_vision/VerticalOCRModule.js +15 -10
  171. package/lib/module/modules/computer_vision/VerticalOCRModule.js.map +1 -1
  172. package/lib/module/modules/general/ExecutorchModule.js +10 -36
  173. package/lib/module/modules/general/ExecutorchModule.js.map +1 -1
  174. package/lib/module/modules/natural_language_processing/LLMModule.js +18 -22
  175. package/lib/module/modules/natural_language_processing/LLMModule.js.map +1 -1
  176. package/lib/module/modules/natural_language_processing/SpeechToTextModule.js +79 -27
  177. package/lib/module/modules/natural_language_processing/SpeechToTextModule.js.map +1 -1
  178. package/lib/module/modules/natural_language_processing/TextEmbeddingsModule.js +15 -8
  179. package/lib/module/modules/natural_language_processing/TextEmbeddingsModule.js.map +1 -1
  180. package/lib/module/modules/natural_language_processing/TokenizerModule.js +20 -14
  181. package/lib/module/modules/natural_language_processing/TokenizerModule.js.map +1 -1
  182. package/lib/module/native/NativeETInstaller.js +5 -0
  183. package/lib/module/native/NativeETInstaller.js.map +1 -0
  184. package/lib/module/native/RnExecutorchModules.js +2 -11
  185. package/lib/module/native/RnExecutorchModules.js.map +1 -1
  186. package/lib/module/types/common.js +25 -8
  187. package/lib/module/types/common.js.map +1 -1
  188. package/lib/module/types/stt.js +1 -79
  189. package/lib/module/types/stt.js.map +1 -1
  190. package/lib/module/utils/ResourceFetcher.js +276 -114
  191. package/lib/module/utils/ResourceFetcher.js.map +1 -1
  192. package/lib/module/utils/ResourceFetcherUtils.js +155 -0
  193. package/lib/module/utils/ResourceFetcherUtils.js.map +1 -0
  194. package/lib/module/utils/SpeechToTextModule/ASR.js +191 -0
  195. package/lib/module/utils/SpeechToTextModule/ASR.js.map +1 -0
  196. package/lib/module/utils/SpeechToTextModule/OnlineProcessor.js +73 -0
  197. package/lib/module/utils/SpeechToTextModule/OnlineProcessor.js.map +1 -0
  198. package/lib/module/utils/SpeechToTextModule/hypothesisBuffer.js +56 -0
  199. package/lib/module/utils/SpeechToTextModule/hypothesisBuffer.js.map +1 -0
  200. package/lib/module/utils/llm.js +41 -1
  201. package/lib/module/utils/llm.js.map +1 -1
  202. package/lib/typescript/Error.d.ts +2 -0
  203. package/lib/typescript/Error.d.ts.map +1 -1
  204. package/lib/typescript/common/Logger.d.ts +9 -0
  205. package/lib/typescript/common/Logger.d.ts.map +1 -0
  206. package/lib/typescript/constants/llmDefaults.d.ts +1 -0
  207. package/lib/typescript/constants/llmDefaults.d.ts.map +1 -1
  208. package/lib/typescript/constants/modelUrls.d.ts +240 -79
  209. package/lib/typescript/constants/modelUrls.d.ts.map +1 -1
  210. package/lib/typescript/constants/ocr/models.d.ts +882 -284
  211. package/lib/typescript/constants/ocr/models.d.ts.map +1 -1
  212. package/lib/typescript/controllers/LLMController.d.ts +3 -4
  213. package/lib/typescript/controllers/LLMController.d.ts.map +1 -1
  214. package/lib/typescript/controllers/OCRController.d.ts +5 -6
  215. package/lib/typescript/controllers/OCRController.d.ts.map +1 -1
  216. package/lib/typescript/controllers/VerticalOCRController.d.ts +5 -6
  217. package/lib/typescript/controllers/VerticalOCRController.d.ts.map +1 -1
  218. package/lib/typescript/hooks/computer_vision/useClassification.d.ts +8 -6
  219. package/lib/typescript/hooks/computer_vision/useClassification.d.ts.map +1 -1
  220. package/lib/typescript/hooks/computer_vision/useImageEmbeddings.d.ts +16 -0
  221. package/lib/typescript/hooks/computer_vision/useImageEmbeddings.d.ts.map +1 -0
  222. package/lib/typescript/hooks/computer_vision/useImageSegmentation.d.ts +5 -3
  223. package/lib/typescript/hooks/computer_vision/useImageSegmentation.d.ts.map +1 -1
  224. package/lib/typescript/hooks/computer_vision/useOCR.d.ts +4 -4
  225. package/lib/typescript/hooks/computer_vision/useOCR.d.ts.map +1 -1
  226. package/lib/typescript/hooks/computer_vision/useObjectDetection.d.ts +5 -3
  227. package/lib/typescript/hooks/computer_vision/useObjectDetection.d.ts.map +1 -1
  228. package/lib/typescript/hooks/computer_vision/useStyleTransfer.d.ts +5 -3
  229. package/lib/typescript/hooks/computer_vision/useStyleTransfer.d.ts.map +1 -1
  230. package/lib/typescript/hooks/computer_vision/useVerticalOCR.d.ts +3 -5
  231. package/lib/typescript/hooks/computer_vision/useVerticalOCR.d.ts.map +1 -1
  232. package/lib/typescript/hooks/general/useExecutorchModule.d.ts +1 -1
  233. package/lib/typescript/hooks/natural_language_processing/useLLM.d.ts +6 -4
  234. package/lib/typescript/hooks/natural_language_processing/useLLM.d.ts.map +1 -1
  235. package/lib/typescript/hooks/natural_language_processing/useSpeechToText.d.ts +15 -22
  236. package/lib/typescript/hooks/natural_language_processing/useSpeechToText.d.ts.map +1 -1
  237. package/lib/typescript/hooks/natural_language_processing/useTextEmbeddings.d.ts +9 -5
  238. package/lib/typescript/hooks/natural_language_processing/useTextEmbeddings.d.ts.map +1 -1
  239. package/lib/typescript/hooks/natural_language_processing/useTokenizer.d.ts +6 -4
  240. package/lib/typescript/hooks/natural_language_processing/useTokenizer.d.ts.map +1 -1
  241. package/lib/typescript/hooks/useNonStaticModule.d.ts +21 -0
  242. package/lib/typescript/hooks/useNonStaticModule.d.ts.map +1 -0
  243. package/lib/typescript/index.d.ts +17 -4
  244. package/lib/typescript/index.d.ts.map +1 -1
  245. package/lib/typescript/modules/BaseModule.d.ts +1 -1
  246. package/lib/typescript/modules/BaseModule.d.ts.map +1 -1
  247. package/lib/typescript/modules/BaseNonStaticModule.d.ts +10 -0
  248. package/lib/typescript/modules/BaseNonStaticModule.d.ts.map +1 -0
  249. package/lib/typescript/modules/computer_vision/ClassificationModule.d.ts +6 -6
  250. package/lib/typescript/modules/computer_vision/ClassificationModule.d.ts.map +1 -1
  251. package/lib/typescript/modules/computer_vision/ImageEmbeddingsModule.d.ts +9 -0
  252. package/lib/typescript/modules/computer_vision/ImageEmbeddingsModule.d.ts.map +1 -0
  253. package/lib/typescript/modules/computer_vision/ImageSegmentationModule.d.ts +8 -28
  254. package/lib/typescript/modules/computer_vision/ImageSegmentationModule.d.ts.map +1 -1
  255. package/lib/typescript/modules/computer_vision/OCRModule.d.ts +8 -7
  256. package/lib/typescript/modules/computer_vision/OCRModule.d.ts.map +1 -1
  257. package/lib/typescript/modules/computer_vision/ObjectDetectionModule.d.ts +7 -5
  258. package/lib/typescript/modules/computer_vision/ObjectDetectionModule.d.ts.map +1 -1
  259. package/lib/typescript/modules/computer_vision/StyleTransferModule.d.ts +6 -5
  260. package/lib/typescript/modules/computer_vision/StyleTransferModule.d.ts.map +1 -1
  261. package/lib/typescript/modules/computer_vision/VerticalOCRModule.d.ts +7 -8
  262. package/lib/typescript/modules/computer_vision/VerticalOCRModule.d.ts.map +1 -1
  263. package/lib/typescript/modules/general/ExecutorchModule.d.ts +5 -8
  264. package/lib/typescript/modules/general/ExecutorchModule.d.ts.map +1 -1
  265. package/lib/typescript/modules/natural_language_processing/LLMModule.d.ts +16 -16
  266. package/lib/typescript/modules/natural_language_processing/LLMModule.d.ts.map +1 -1
  267. package/lib/typescript/modules/natural_language_processing/SpeechToTextModule.d.ts +20 -13
  268. package/lib/typescript/modules/natural_language_processing/SpeechToTextModule.d.ts.map +1 -1
  269. package/lib/typescript/modules/natural_language_processing/TextEmbeddingsModule.d.ts +7 -5
  270. package/lib/typescript/modules/natural_language_processing/TextEmbeddingsModule.d.ts.map +1 -1
  271. package/lib/typescript/modules/natural_language_processing/TokenizerModule.d.ts +10 -9
  272. package/lib/typescript/modules/natural_language_processing/TokenizerModule.d.ts.map +1 -1
  273. package/lib/typescript/native/{NativeStyleTransfer.d.ts → NativeETInstaller.d.ts} +2 -3
  274. package/lib/typescript/native/NativeETInstaller.d.ts.map +1 -0
  275. package/lib/typescript/native/RnExecutorchModules.d.ts +3 -21
  276. package/lib/typescript/native/RnExecutorchModules.d.ts.map +1 -1
  277. package/lib/typescript/types/common.d.ts +30 -2
  278. package/lib/typescript/types/common.d.ts.map +1 -1
  279. package/lib/typescript/types/stt.d.ts +18 -88
  280. package/lib/typescript/types/stt.d.ts.map +1 -1
  281. package/lib/typescript/utils/ResourceFetcher.d.ts +18 -10
  282. package/lib/typescript/utils/ResourceFetcher.d.ts.map +1 -1
  283. package/lib/typescript/utils/ResourceFetcherUtils.d.ts +55 -0
  284. package/lib/typescript/utils/ResourceFetcherUtils.d.ts.map +1 -0
  285. package/lib/typescript/utils/SpeechToTextModule/ASR.d.ts +27 -0
  286. package/lib/typescript/utils/SpeechToTextModule/ASR.d.ts.map +1 -0
  287. package/lib/typescript/utils/SpeechToTextModule/OnlineProcessor.d.ts +23 -0
  288. package/lib/typescript/utils/SpeechToTextModule/OnlineProcessor.d.ts.map +1 -0
  289. package/lib/typescript/utils/SpeechToTextModule/hypothesisBuffer.d.ts +13 -0
  290. package/lib/typescript/utils/SpeechToTextModule/hypothesisBuffer.d.ts.map +1 -0
  291. package/lib/typescript/utils/llm.d.ts +4 -0
  292. package/lib/typescript/utils/llm.d.ts.map +1 -1
  293. package/package.json +23 -65
  294. package/react-native-executorch.podspec +75 -3
  295. package/src/Error.ts +8 -10
  296. package/src/common/Logger.ts +25 -0
  297. package/src/constants/llmDefaults.ts +11 -0
  298. package/src/constants/modelUrls.ts +401 -168
  299. package/src/constants/ocr/models.ts +826 -395
  300. package/src/constants/ocr/symbols.ts +63 -63
  301. package/src/controllers/LLMController.ts +28 -18
  302. package/src/controllers/OCRController.ts +24 -15
  303. package/src/controllers/VerticalOCRController.ts +24 -14
  304. package/src/hooks/computer_vision/useClassification.ts +10 -11
  305. package/src/hooks/computer_vision/useImageEmbeddings.ts +15 -0
  306. package/src/hooks/computer_vision/useImageSegmentation.ts +5 -8
  307. package/src/hooks/computer_vision/useOCR.ts +29 -21
  308. package/src/hooks/computer_vision/useObjectDetection.ts +6 -9
  309. package/src/hooks/computer_vision/useStyleTransfer.ts +6 -6
  310. package/src/hooks/computer_vision/useVerticalOCR.ts +30 -27
  311. package/src/hooks/general/useExecutorchModule.ts +3 -3
  312. package/src/hooks/natural_language_processing/useLLM.ts +38 -28
  313. package/src/hooks/natural_language_processing/useSpeechToText.ts +91 -88
  314. package/src/hooks/natural_language_processing/useTextEmbeddings.ts +11 -11
  315. package/src/hooks/natural_language_processing/useTokenizer.ts +22 -22
  316. package/src/hooks/useNonStaticModule.ts +74 -0
  317. package/src/index.ts +100 -0
  318. package/src/modules/BaseModule.ts +9 -3
  319. package/src/modules/BaseNonStaticModule.ts +26 -0
  320. package/src/modules/computer_vision/ClassificationModule.ts +20 -11
  321. package/src/modules/computer_vision/ImageEmbeddingsModule.ts +26 -0
  322. package/src/modules/computer_vision/ImageSegmentationModule.ts +35 -27
  323. package/src/modules/computer_vision/OCRModule.ts +23 -15
  324. package/src/modules/computer_vision/ObjectDetectionModule.ts +24 -11
  325. package/src/modules/computer_vision/StyleTransferModule.ts +20 -11
  326. package/src/modules/computer_vision/VerticalOCRModule.ts +25 -21
  327. package/src/modules/general/ExecutorchModule.ts +18 -48
  328. package/src/modules/natural_language_processing/LLMModule.ts +27 -30
  329. package/src/modules/natural_language_processing/SpeechToTextModule.ts +85 -68
  330. package/src/modules/natural_language_processing/TextEmbeddingsModule.ts +27 -12
  331. package/src/modules/natural_language_processing/TokenizerModule.ts +27 -17
  332. package/src/native/NativeETInstaller.ts +8 -0
  333. package/src/native/RnExecutorchModules.ts +4 -46
  334. package/src/types/common.ts +40 -12
  335. package/src/types/stt.ts +98 -89
  336. package/src/utils/ResourceFetcher.ts +338 -119
  337. package/src/utils/ResourceFetcherUtils.ts +186 -0
  338. package/src/utils/SpeechToTextModule/ASR.ts +303 -0
  339. package/src/utils/SpeechToTextModule/OnlineProcessor.ts +87 -0
  340. package/src/utils/SpeechToTextModule/hypothesisBuffer.ts +79 -0
  341. package/src/utils/llm.ts +65 -1
  342. package/third-party/android/libs/executorch/arm64-v8a/libexecutorch.so +0 -0
  343. package/third-party/android/libs/executorch/x86_64/libexecutorch.so +0 -0
  344. package/third-party/android/libs/opencv/arm64-v8a/libopencv_core.a +0 -0
  345. package/third-party/android/libs/opencv/arm64-v8a/libopencv_features2d.a +0 -0
  346. package/third-party/android/libs/opencv/arm64-v8a/libopencv_highgui.a +0 -0
  347. package/third-party/android/libs/opencv/arm64-v8a/libopencv_imgproc.a +0 -0
  348. package/third-party/android/libs/opencv/arm64-v8a/libopencv_photo.a +0 -0
  349. package/third-party/android/libs/opencv/arm64-v8a/libopencv_video.a +0 -0
  350. package/third-party/android/libs/opencv/x86_64/libopencv_core.a +0 -0
  351. package/third-party/android/libs/opencv/x86_64/libopencv_features2d.a +0 -0
  352. package/third-party/android/libs/opencv/x86_64/libopencv_highgui.a +0 -0
  353. package/third-party/android/libs/opencv/x86_64/libopencv_imgproc.a +0 -0
  354. package/third-party/android/libs/opencv/x86_64/libopencv_photo.a +0 -0
  355. package/third-party/android/libs/opencv/x86_64/libopencv_video.a +0 -0
  356. package/third-party/android/libs/opencv-third-party/arm64-v8a/libkleidicv.a +0 -0
  357. package/third-party/android/libs/opencv-third-party/arm64-v8a/libkleidicv_hal.a +0 -0
  358. package/third-party/android/libs/opencv-third-party/arm64-v8a/libkleidicv_thread.a +0 -0
  359. package/third-party/include/c10/macros/Export.h +163 -0
  360. package/third-party/include/c10/macros/Macros.h +497 -0
  361. package/third-party/include/c10/util/BFloat16-inl.h +342 -0
  362. package/third-party/include/c10/util/BFloat16-math.h +266 -0
  363. package/third-party/include/c10/util/BFloat16.h +125 -0
  364. package/third-party/include/c10/util/Half-inl.h +347 -0
  365. package/third-party/include/c10/util/Half.h +416 -0
  366. package/third-party/include/c10/util/TypeSafeSignMath.h +133 -0
  367. package/third-party/include/c10/util/bit_cast.h +43 -0
  368. package/third-party/include/c10/util/floating_point_utils.h +33 -0
  369. package/third-party/include/c10/util/irange.h +107 -0
  370. package/third-party/include/executorch/ExecuTorch.h +13 -0
  371. package/third-party/include/executorch/ExecuTorchError.h +16 -0
  372. package/third-party/include/executorch/ExecuTorchLog.h +76 -0
  373. package/third-party/include/executorch/ExecuTorchModule.h +286 -0
  374. package/third-party/include/executorch/ExecuTorchTensor.h +742 -0
  375. package/third-party/include/executorch/ExecuTorchValue.h +219 -0
  376. package/third-party/include/executorch/extension/module/module.h +492 -0
  377. package/third-party/include/executorch/extension/tensor/tensor.h +13 -0
  378. package/third-party/include/executorch/extension/tensor/tensor_accessor.h +190 -0
  379. package/third-party/include/executorch/extension/tensor/tensor_ptr.h +347 -0
  380. package/third-party/include/executorch/extension/tensor/tensor_ptr_maker.h +653 -0
  381. package/third-party/include/executorch/runtime/backend/backend_execution_context.h +71 -0
  382. package/third-party/include/executorch/runtime/backend/backend_init_context.h +72 -0
  383. package/third-party/include/executorch/runtime/backend/interface.h +166 -0
  384. package/third-party/include/executorch/runtime/core/array_ref.h +235 -0
  385. package/third-party/include/executorch/runtime/core/data_loader.h +136 -0
  386. package/third-party/include/executorch/runtime/core/defines.h +20 -0
  387. package/third-party/include/executorch/runtime/core/error.h +229 -0
  388. package/third-party/include/executorch/runtime/core/evalue.h +521 -0
  389. package/third-party/include/executorch/runtime/core/event_tracer.h +565 -0
  390. package/third-party/include/executorch/runtime/core/event_tracer_hooks.h +323 -0
  391. package/third-party/include/executorch/runtime/core/event_tracer_hooks_delegate.h +197 -0
  392. package/third-party/include/executorch/runtime/core/exec_aten/exec_aten.h +147 -0
  393. package/third-party/include/executorch/runtime/core/exec_aten/util/dim_order_util.h +263 -0
  394. package/third-party/include/executorch/runtime/core/exec_aten/util/scalar_type_util.h +1331 -0
  395. package/third-party/include/executorch/runtime/core/exec_aten/util/tensor_dimension_limit.h +21 -0
  396. package/third-party/include/executorch/runtime/core/exec_aten/util/tensor_shape_to_c_string.h +69 -0
  397. package/third-party/include/executorch/runtime/core/exec_aten/util/tensor_util.h +1250 -0
  398. package/third-party/include/executorch/runtime/core/freeable_buffer.h +107 -0
  399. package/third-party/include/executorch/runtime/core/hierarchical_allocator.h +107 -0
  400. package/third-party/include/executorch/runtime/core/memory_allocator.h +198 -0
  401. package/third-party/include/executorch/runtime/core/named_data_map.h +86 -0
  402. package/third-party/include/executorch/runtime/core/portable_type/bfloat16.h +27 -0
  403. package/third-party/include/executorch/runtime/core/portable_type/bfloat16_math.h +14 -0
  404. package/third-party/include/executorch/runtime/core/portable_type/bits_types.h +83 -0
  405. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/macros/Export.h +163 -0
  406. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/macros/Macros.h +497 -0
  407. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-inl.h +342 -0
  408. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-math.h +266 -0
  409. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/BFloat16.h +125 -0
  410. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/Half-inl.h +347 -0
  411. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/Half.h +416 -0
  412. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/TypeSafeSignMath.h +133 -0
  413. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/bit_cast.h +43 -0
  414. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/floating_point_utils.h +33 -0
  415. package/third-party/include/executorch/runtime/core/portable_type/c10/c10/util/irange.h +107 -0
  416. package/third-party/include/executorch/runtime/core/portable_type/complex.h +44 -0
  417. package/third-party/include/executorch/runtime/core/portable_type/device.h +70 -0
  418. package/third-party/include/executorch/runtime/core/portable_type/half.h +27 -0
  419. package/third-party/include/executorch/runtime/core/portable_type/optional.h +36 -0
  420. package/third-party/include/executorch/runtime/core/portable_type/qint_types.h +83 -0
  421. package/third-party/include/executorch/runtime/core/portable_type/scalar.h +110 -0
  422. package/third-party/include/executorch/runtime/core/portable_type/scalar_type.h +154 -0
  423. package/third-party/include/executorch/runtime/core/portable_type/string_view.h +29 -0
  424. package/third-party/include/executorch/runtime/core/portable_type/tensor.h +142 -0
  425. package/third-party/include/executorch/runtime/core/portable_type/tensor_impl.h +261 -0
  426. package/third-party/include/executorch/runtime/core/portable_type/tensor_options.h +60 -0
  427. package/third-party/include/executorch/runtime/core/result.h +258 -0
  428. package/third-party/include/executorch/runtime/core/span.h +93 -0
  429. package/third-party/include/executorch/runtime/core/tag.h +71 -0
  430. package/third-party/include/executorch/runtime/core/tensor_layout.h +79 -0
  431. package/third-party/include/executorch/runtime/core/tensor_shape_dynamism.h +39 -0
  432. package/third-party/include/executorch/runtime/executor/memory_manager.h +113 -0
  433. package/third-party/include/executorch/runtime/executor/method.h +387 -0
  434. package/third-party/include/executorch/runtime/executor/method_meta.h +251 -0
  435. package/third-party/include/executorch/runtime/executor/program.h +320 -0
  436. package/third-party/include/executorch/runtime/executor/pte_data_map.h +144 -0
  437. package/third-party/include/executorch/runtime/executor/tensor_parser.h +156 -0
  438. package/third-party/include/executorch/runtime/kernel/kernel_runtime_context.h +122 -0
  439. package/third-party/include/executorch/runtime/kernel/operator_registry.h +278 -0
  440. package/third-party/include/executorch/runtime/platform/abort.h +36 -0
  441. package/third-party/include/executorch/runtime/platform/assert.h +119 -0
  442. package/third-party/include/executorch/runtime/platform/clock.h +43 -0
  443. package/third-party/include/executorch/runtime/platform/compat_unistd.h +75 -0
  444. package/third-party/include/executorch/runtime/platform/compiler.h +191 -0
  445. package/third-party/include/executorch/runtime/platform/log.h +177 -0
  446. package/third-party/include/executorch/runtime/platform/platform.h +133 -0
  447. package/third-party/include/executorch/runtime/platform/profiler.h +292 -0
  448. package/third-party/include/executorch/runtime/platform/runtime.h +35 -0
  449. package/third-party/include/executorch/runtime/platform/system.h +49 -0
  450. package/third-party/include/executorch/runtime/platform/types.h +24 -0
  451. package/third-party/include/executorch/schema/extended_header.h +76 -0
  452. package/third-party/include/opencv2/core/affine.hpp +676 -0
  453. package/third-party/include/opencv2/core/async.hpp +107 -0
  454. package/third-party/include/opencv2/core/base.hpp +735 -0
  455. package/third-party/include/opencv2/core/bindings_utils.hpp +279 -0
  456. package/third-party/include/opencv2/core/bufferpool.hpp +39 -0
  457. package/third-party/include/opencv2/core/check.hpp +231 -0
  458. package/third-party/include/opencv2/core/core.hpp +55 -0
  459. package/third-party/include/opencv2/core/core_c.h +3261 -0
  460. package/third-party/include/opencv2/core/cv_cpu_dispatch.h +404 -0
  461. package/third-party/include/opencv2/core/cv_cpu_helper.h +856 -0
  462. package/third-party/include/opencv2/core/cvdef.h +1003 -0
  463. package/third-party/include/opencv2/core/cvstd.hpp +196 -0
  464. package/third-party/include/opencv2/core/cvstd.inl.hpp +188 -0
  465. package/third-party/include/opencv2/core/cvstd_wrapper.hpp +187 -0
  466. package/third-party/include/opencv2/core/detail/async_promise.hpp +73 -0
  467. package/third-party/include/opencv2/core/detail/dispatch_helper.impl.hpp +48 -0
  468. package/third-party/include/opencv2/core/detail/exception_ptr.hpp +24 -0
  469. package/third-party/include/opencv2/core/dualquaternion.hpp +1054 -0
  470. package/third-party/include/opencv2/core/dualquaternion.inl.hpp +464 -0
  471. package/third-party/include/opencv2/core/eigen.hpp +405 -0
  472. package/third-party/include/opencv2/core/fast_math.hpp +433 -0
  473. package/third-party/include/opencv2/core/hal/hal.hpp +451 -0
  474. package/third-party/include/opencv2/core/hal/interface.h +191 -0
  475. package/third-party/include/opencv2/core/hal/intrin.hpp +1222 -0
  476. package/third-party/include/opencv2/core/hal/intrin_avx.hpp +3378 -0
  477. package/third-party/include/opencv2/core/hal/intrin_avx512.hpp +3688 -0
  478. package/third-party/include/opencv2/core/hal/intrin_cpp.hpp +3446 -0
  479. package/third-party/include/opencv2/core/hal/intrin_forward.hpp +195 -0
  480. package/third-party/include/opencv2/core/hal/intrin_lasx.hpp +3243 -0
  481. package/third-party/include/opencv2/core/hal/intrin_lsx.hpp +2671 -0
  482. package/third-party/include/opencv2/core/hal/intrin_math.hpp +772 -0
  483. package/third-party/include/opencv2/core/hal/intrin_msa.hpp +1973 -0
  484. package/third-party/include/opencv2/core/hal/intrin_neon.hpp +2710 -0
  485. package/third-party/include/opencv2/core/hal/intrin_rvv071.hpp +3452 -0
  486. package/third-party/include/opencv2/core/hal/intrin_rvv_scalable.hpp +2559 -0
  487. package/third-party/include/opencv2/core/hal/intrin_sse.hpp +3528 -0
  488. package/third-party/include/opencv2/core/hal/intrin_sse_em.hpp +175 -0
  489. package/third-party/include/opencv2/core/hal/intrin_vsx.hpp +1756 -0
  490. package/third-party/include/opencv2/core/hal/intrin_wasm.hpp +2911 -0
  491. package/third-party/include/opencv2/core/hal/msa_macros.h +2079 -0
  492. package/third-party/include/opencv2/core/hal/simd_utils.impl.hpp +313 -0
  493. package/third-party/include/opencv2/core/mat.hpp +3842 -0
  494. package/third-party/include/opencv2/core/mat.inl.hpp +2753 -0
  495. package/third-party/include/opencv2/core/matx.hpp +603 -0
  496. package/third-party/include/opencv2/core/matx.inl.hpp +1132 -0
  497. package/third-party/include/opencv2/core/neon_utils.hpp +127 -0
  498. package/third-party/include/opencv2/core/operations.hpp +610 -0
  499. package/third-party/include/opencv2/core/optim.hpp +362 -0
  500. package/third-party/include/opencv2/core/parallel/backend/parallel_for.openmp.hpp +66 -0
  501. package/third-party/include/opencv2/core/parallel/backend/parallel_for.tbb.hpp +148 -0
  502. package/third-party/include/opencv2/core/parallel/parallel_backend.hpp +108 -0
  503. package/third-party/include/opencv2/core/persistence.hpp +1321 -0
  504. package/third-party/include/opencv2/core/quaternion.hpp +1889 -0
  505. package/third-party/include/opencv2/core/quaternion.inl.hpp +907 -0
  506. package/third-party/include/opencv2/core/saturate.hpp +347 -0
  507. package/third-party/include/opencv2/core/simd_intrinsics.hpp +90 -0
  508. package/third-party/include/opencv2/core/softfloat.hpp +657 -0
  509. package/third-party/include/opencv2/core/sse_utils.hpp +861 -0
  510. package/third-party/include/opencv2/core/traits.hpp +417 -0
  511. package/third-party/include/opencv2/core/types.hpp +2368 -0
  512. package/third-party/include/opencv2/core/types_c.h +2064 -0
  513. package/third-party/include/opencv2/core/utility.hpp +1296 -0
  514. package/third-party/include/opencv2/core/utils/allocator_stats.hpp +31 -0
  515. package/third-party/include/opencv2/core/utils/allocator_stats.impl.hpp +111 -0
  516. package/third-party/include/opencv2/core/utils/filesystem.hpp +91 -0
  517. package/third-party/include/opencv2/core/utils/fp_control_utils.hpp +70 -0
  518. package/third-party/include/opencv2/core/utils/instrumentation.hpp +127 -0
  519. package/third-party/include/opencv2/core/utils/logger.defines.hpp +50 -0
  520. package/third-party/include/opencv2/core/utils/logger.hpp +258 -0
  521. package/third-party/include/opencv2/core/utils/logtag.hpp +27 -0
  522. package/third-party/include/opencv2/core/utils/tls.hpp +230 -0
  523. package/third-party/include/opencv2/core/utils/trace.hpp +281 -0
  524. package/third-party/include/opencv2/core/version.hpp +29 -0
  525. package/third-party/include/opencv2/core/vsx_utils.hpp +1115 -0
  526. package/third-party/include/opencv2/core.hpp +3699 -0
  527. package/third-party/include/opencv2/cvconfig.h +155 -0
  528. package/third-party/include/opencv2/dnn/dnn.hpp +51 -0
  529. package/third-party/include/opencv2/dnn.hpp +17 -0
  530. package/third-party/include/opencv2/features2d/features2d.hpp +55 -0
  531. package/third-party/include/opencv2/features2d/hal/interface.h +32 -0
  532. package/third-party/include/opencv2/features2d.hpp +1756 -0
  533. package/third-party/include/opencv2/highgui/highgui.hpp +113 -0
  534. package/third-party/include/opencv2/highgui.hpp +17 -0
  535. package/third-party/include/opencv2/imgproc/bindings.hpp +34 -0
  536. package/third-party/include/opencv2/imgproc/detail/gcgraph.hpp +355 -0
  537. package/third-party/include/opencv2/imgproc/detail/legacy.hpp +35 -0
  538. package/third-party/include/opencv2/imgproc/hal/hal.hpp +246 -0
  539. package/third-party/include/opencv2/imgproc/hal/interface.h +52 -0
  540. package/third-party/include/opencv2/imgproc/imgproc.hpp +55 -0
  541. package/third-party/include/opencv2/imgproc/imgproc_c.h +1261 -0
  542. package/third-party/include/opencv2/imgproc/segmentation.hpp +168 -0
  543. package/third-party/include/opencv2/imgproc/types_c.h +632 -0
  544. package/third-party/include/opencv2/imgproc.hpp +5956 -0
  545. package/third-party/include/opencv2/opencv.hpp +102 -0
  546. package/third-party/include/opencv2/opencv_modules.hpp +19 -0
  547. package/third-party/include/opencv2/photo/legacy/constants_c.h +10 -0
  548. package/third-party/include/opencv2/photo/photo.hpp +55 -0
  549. package/third-party/include/opencv2/photo.hpp +975 -0
  550. package/third-party/include/opencv2/video/background_segm.hpp +341 -0
  551. package/third-party/include/opencv2/video/detail/tracking.detail.hpp +435 -0
  552. package/third-party/include/opencv2/video/legacy/constants_c.h +15 -0
  553. package/third-party/include/opencv2/video/tracking.hpp +1014 -0
  554. package/third-party/include/opencv2/video/video.hpp +55 -0
  555. package/third-party/include/opencv2/video.hpp +65 -0
  556. package/third-party/include/tokenizers-cpp/tokenizers_c.h +61 -0
  557. package/third-party/include/tokenizers-cpp/tokenizers_cpp.h +118 -0
  558. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/ETModel.h +27 -0
  559. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/ETModel.mm +249 -0
  560. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/HuggingFaceTokenizer.h +14 -0
  561. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/HuggingFaceTokenizer.mm +80 -0
  562. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/LLaMARunner.h +32 -0
  563. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/LLaMARunner.mm +95 -0
  564. package/third-party/ios/ExecutorchLib/ExecutorchLib/InputType.h +12 -0
  565. package/third-party/ios/ExecutorchLib/ExecutorchLib/Utils.hpp +217 -0
  566. package/third-party/ios/ExecutorchLib/ExecutorchLib/model/Model.cpp +11 -0
  567. package/third-party/ios/ExecutorchLib/ExecutorchLib/model/Model.h +11 -0
  568. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/irunner.h +48 -0
  569. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/runner.cpp +278 -0
  570. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/runner.h +67 -0
  571. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/stats.h +164 -0
  572. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/text_decoder_runner.cpp +65 -0
  573. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/text_decoder_runner.h +105 -0
  574. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/text_prefiller.cpp +91 -0
  575. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/text_prefiller.h +51 -0
  576. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/text_token_generator.h +162 -0
  577. package/third-party/ios/ExecutorchLib/ExecutorchLib/runner/util.h +108 -0
  578. package/third-party/ios/ExecutorchLib/ExecutorchLib/sampler/sampler.cpp +193 -0
  579. package/third-party/ios/ExecutorchLib/ExecutorchLib/sampler/sampler.h +64 -0
  580. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/base64.h +202 -0
  581. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/bpe_tokenizer.cpp +313 -0
  582. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/bpe_tokenizer.h +57 -0
  583. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/llama_tiktoken.cpp +78 -0
  584. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/llama_tiktoken.h +23 -0
  585. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/tiktoken.cpp +427 -0
  586. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/tiktoken.h +87 -0
  587. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/tokenizer.h +76 -0
  588. package/third-party/ios/ExecutorchLib/ExecutorchLib.xcodeproj/project.pbxproj +683 -0
  589. package/third-party/ios/ExecutorchLib/build.sh +44 -0
  590. package/third-party/ios/ExecutorchLib/frameworks/backend_coreml.xcframework/Info.plist +43 -0
  591. package/third-party/ios/ExecutorchLib/frameworks/backend_coreml.xcframework/ios-arm64/libbackend_coreml_ios.a +0 -0
  592. package/third-party/ios/ExecutorchLib/frameworks/backend_coreml.xcframework/ios-arm64-simulator/libbackend_coreml_simulator.a +0 -0
  593. package/third-party/ios/ExecutorchLib/frameworks/backend_mps.xcframework/Info.plist +43 -0
  594. package/third-party/ios/ExecutorchLib/frameworks/backend_mps.xcframework/ios-arm64/libbackend_mps_ios.a +0 -0
  595. package/third-party/ios/ExecutorchLib/frameworks/backend_mps.xcframework/ios-arm64-simulator/libbackend_mps_simulator.a +0 -0
  596. package/third-party/ios/ExecutorchLib/frameworks/backend_xnnpack.xcframework/Info.plist +43 -0
  597. package/third-party/ios/ExecutorchLib/frameworks/backend_xnnpack.xcframework/ios-arm64/libbackend_xnnpack_ios.a +0 -0
  598. package/third-party/ios/ExecutorchLib/frameworks/backend_xnnpack.xcframework/ios-arm64-simulator/libbackend_xnnpack_simulator.a +0 -0
  599. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/Info.plist +47 -0
  600. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/macros/Export.h +163 -0
  601. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/macros/Macros.h +497 -0
  602. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/BFloat16-inl.h +342 -0
  603. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/BFloat16-math.h +266 -0
  604. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/BFloat16.h +125 -0
  605. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/Half-inl.h +347 -0
  606. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/Half.h +416 -0
  607. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/TypeSafeSignMath.h +133 -0
  608. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/bit_cast.h +43 -0
  609. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/floating_point_utils.h +33 -0
  610. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/irange.h +107 -0
  611. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorch.h +13 -0
  612. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchError.h +16 -0
  613. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchLog.h +76 -0
  614. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchModule.h +286 -0
  615. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchTensor.h +742 -0
  616. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchValue.h +219 -0
  617. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/module/module.h +492 -0
  618. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor.h +13 -0
  619. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor_accessor.h +190 -0
  620. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor_ptr.h +347 -0
  621. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor_ptr_maker.h +653 -0
  622. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/backend/backend_execution_context.h +71 -0
  623. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/backend/backend_init_context.h +72 -0
  624. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/backend/interface.h +166 -0
  625. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/array_ref.h +235 -0
  626. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/data_loader.h +136 -0
  627. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/defines.h +20 -0
  628. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/error.h +229 -0
  629. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/evalue.h +521 -0
  630. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/event_tracer.h +565 -0
  631. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/event_tracer_hooks.h +323 -0
  632. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/event_tracer_hooks_delegate.h +197 -0
  633. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/exec_aten.h +147 -0
  634. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/dim_order_util.h +263 -0
  635. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/scalar_type_util.h +1331 -0
  636. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/tensor_dimension_limit.h +21 -0
  637. 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
  638. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/tensor_util.h +1250 -0
  639. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/freeable_buffer.h +107 -0
  640. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/hierarchical_allocator.h +107 -0
  641. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/memory_allocator.h +198 -0
  642. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/named_data_map.h +86 -0
  643. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/bfloat16.h +27 -0
  644. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/bfloat16_math.h +14 -0
  645. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/bits_types.h +83 -0
  646. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Export.h +163 -0
  647. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Macros.h +497 -0
  648. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-inl.h +342 -0
  649. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-math.h +266 -0
  650. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16.h +125 -0
  651. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half-inl.h +347 -0
  652. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half.h +416 -0
  653. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/TypeSafeSignMath.h +133 -0
  654. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/bit_cast.h +43 -0
  655. 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
  656. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/irange.h +107 -0
  657. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/complex.h +44 -0
  658. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/device.h +70 -0
  659. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/half.h +27 -0
  660. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/optional.h +36 -0
  661. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/qint_types.h +83 -0
  662. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/scalar.h +110 -0
  663. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/scalar_type.h +154 -0
  664. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/string_view.h +29 -0
  665. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/tensor.h +142 -0
  666. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/tensor_impl.h +261 -0
  667. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/tensor_options.h +60 -0
  668. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/result.h +258 -0
  669. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/span.h +93 -0
  670. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/tag.h +71 -0
  671. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/tensor_layout.h +79 -0
  672. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/tensor_shape_dynamism.h +39 -0
  673. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/memory_manager.h +113 -0
  674. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/method.h +387 -0
  675. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/method_meta.h +251 -0
  676. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/program.h +320 -0
  677. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/pte_data_map.h +144 -0
  678. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/tensor_parser.h +156 -0
  679. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/kernel/kernel_runtime_context.h +122 -0
  680. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/kernel/operator_registry.h +278 -0
  681. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/abort.h +36 -0
  682. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/assert.h +119 -0
  683. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/clock.h +43 -0
  684. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/compat_unistd.h +75 -0
  685. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/compiler.h +191 -0
  686. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/log.h +177 -0
  687. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/platform.h +133 -0
  688. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/profiler.h +292 -0
  689. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/runtime.h +35 -0
  690. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/system.h +49 -0
  691. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/types.h +24 -0
  692. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/schema/extended_header.h +76 -0
  693. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/module.modulemap +5 -0
  694. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/libexecutorch_ios.a +0 -0
  695. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/macros/Export.h +163 -0
  696. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/macros/Macros.h +497 -0
  697. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/BFloat16-inl.h +342 -0
  698. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/BFloat16-math.h +266 -0
  699. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/BFloat16.h +125 -0
  700. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/Half-inl.h +347 -0
  701. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/Half.h +416 -0
  702. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/TypeSafeSignMath.h +133 -0
  703. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/bit_cast.h +43 -0
  704. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/floating_point_utils.h +33 -0
  705. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/irange.h +107 -0
  706. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorch.h +13 -0
  707. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchError.h +16 -0
  708. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchLog.h +76 -0
  709. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchModule.h +286 -0
  710. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchTensor.h +742 -0
  711. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchValue.h +219 -0
  712. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/module/module.h +492 -0
  713. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor.h +13 -0
  714. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor_accessor.h +190 -0
  715. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor_ptr.h +347 -0
  716. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor_ptr_maker.h +653 -0
  717. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/backend/backend_execution_context.h +71 -0
  718. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/backend/backend_init_context.h +72 -0
  719. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/backend/interface.h +166 -0
  720. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/array_ref.h +235 -0
  721. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/data_loader.h +136 -0
  722. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/defines.h +20 -0
  723. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/error.h +229 -0
  724. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/evalue.h +521 -0
  725. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/event_tracer.h +565 -0
  726. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/event_tracer_hooks.h +323 -0
  727. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/event_tracer_hooks_delegate.h +197 -0
  728. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/exec_aten.h +147 -0
  729. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/dim_order_util.h +263 -0
  730. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/scalar_type_util.h +1331 -0
  731. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/tensor_dimension_limit.h +21 -0
  732. 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
  733. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/tensor_util.h +1250 -0
  734. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/freeable_buffer.h +107 -0
  735. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/hierarchical_allocator.h +107 -0
  736. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/memory_allocator.h +198 -0
  737. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/named_data_map.h +86 -0
  738. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/bfloat16.h +27 -0
  739. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/bfloat16_math.h +14 -0
  740. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/bits_types.h +83 -0
  741. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Export.h +163 -0
  742. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Macros.h +497 -0
  743. 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
  744. 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
  745. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16.h +125 -0
  746. 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
  747. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half.h +416 -0
  748. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/TypeSafeSignMath.h +133 -0
  749. 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
  750. 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
  751. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/irange.h +107 -0
  752. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/complex.h +44 -0
  753. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/device.h +70 -0
  754. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/half.h +27 -0
  755. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/optional.h +36 -0
  756. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/qint_types.h +83 -0
  757. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/scalar.h +110 -0
  758. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/scalar_type.h +154 -0
  759. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/string_view.h +29 -0
  760. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/tensor.h +142 -0
  761. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/tensor_impl.h +261 -0
  762. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/tensor_options.h +60 -0
  763. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/result.h +258 -0
  764. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/span.h +93 -0
  765. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/tag.h +71 -0
  766. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/tensor_layout.h +79 -0
  767. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/tensor_shape_dynamism.h +39 -0
  768. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/memory_manager.h +113 -0
  769. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/method.h +387 -0
  770. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/method_meta.h +251 -0
  771. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/program.h +320 -0
  772. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/pte_data_map.h +144 -0
  773. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/tensor_parser.h +156 -0
  774. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/kernel/kernel_runtime_context.h +122 -0
  775. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/kernel/operator_registry.h +278 -0
  776. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/abort.h +36 -0
  777. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/assert.h +119 -0
  778. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/clock.h +43 -0
  779. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/compat_unistd.h +75 -0
  780. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/compiler.h +191 -0
  781. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/log.h +177 -0
  782. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/platform.h +133 -0
  783. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/profiler.h +292 -0
  784. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/runtime.h +35 -0
  785. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/system.h +49 -0
  786. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/types.h +24 -0
  787. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/schema/extended_header.h +76 -0
  788. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/module.modulemap +5 -0
  789. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/libexecutorch_simulator.a +0 -0
  790. package/third-party/ios/ExecutorchLib/frameworks/kernels_custom.xcframework/Info.plist +43 -0
  791. package/third-party/ios/ExecutorchLib/frameworks/kernels_custom.xcframework/ios-arm64/libkernels_custom_ios.a +0 -0
  792. package/third-party/ios/ExecutorchLib/frameworks/kernels_custom.xcframework/ios-arm64-simulator/libkernels_custom_simulator.a +0 -0
  793. package/third-party/ios/ExecutorchLib/frameworks/kernels_optimized.xcframework/Info.plist +43 -0
  794. package/third-party/ios/ExecutorchLib/frameworks/kernels_optimized.xcframework/ios-arm64/libkernels_optimized_ios.a +0 -0
  795. package/third-party/ios/ExecutorchLib/frameworks/kernels_optimized.xcframework/ios-arm64-simulator/libkernels_optimized_simulator.a +0 -0
  796. package/third-party/ios/ExecutorchLib/frameworks/kernels_portable.xcframework/Info.plist +43 -0
  797. package/third-party/ios/ExecutorchLib/frameworks/kernels_portable.xcframework/ios-arm64/libkernels_portable_ios.a +0 -0
  798. package/third-party/ios/ExecutorchLib/frameworks/kernels_portable.xcframework/ios-arm64-simulator/libkernels_portable_simulator.a +0 -0
  799. package/third-party/ios/ExecutorchLib/frameworks/kernels_quantized.xcframework/Info.plist +43 -0
  800. package/third-party/ios/ExecutorchLib/frameworks/kernels_quantized.xcframework/ios-arm64/libkernels_quantized_ios.a +0 -0
  801. package/third-party/ios/ExecutorchLib/frameworks/kernels_quantized.xcframework/ios-arm64-simulator/libkernels_quantized_simulator.a +0 -0
  802. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/Info.plist +43 -0
  803. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/bitmap256.h +82 -0
  804. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/filtered_re2.h +111 -0
  805. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/pod_array.h +43 -0
  806. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/prefilter.h +130 -0
  807. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/prefilter_tree.h +139 -0
  808. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/prog.h +483 -0
  809. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/re2.h +994 -0
  810. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/regexp.h +692 -0
  811. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/set.h +85 -0
  812. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/sparse_array.h +367 -0
  813. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/sparse_set.h +241 -0
  814. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/stringpiece.h +205 -0
  815. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/unicode_casefold.h +78 -0
  816. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/unicode_groups.h +64 -0
  817. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/walker-inl.h +235 -0
  818. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Info.plist +26 -0
  819. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/re2 +0 -0
  820. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/bitmap256.h +82 -0
  821. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/filtered_re2.h +111 -0
  822. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/pod_array.h +43 -0
  823. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/prefilter.h +130 -0
  824. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/prefilter_tree.h +139 -0
  825. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/prog.h +483 -0
  826. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/re2.h +994 -0
  827. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/regexp.h +692 -0
  828. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/set.h +85 -0
  829. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/sparse_array.h +367 -0
  830. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/sparse_set.h +241 -0
  831. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/stringpiece.h +205 -0
  832. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/unicode_casefold.h +78 -0
  833. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/unicode_groups.h +64 -0
  834. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/walker-inl.h +235 -0
  835. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Info.plist +26 -0
  836. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/re2 +0 -0
  837. package/third-party/ios/ios.toolchain.cmake +1122 -0
  838. package/LICENSE +0 -79
  839. package/README.md +0 -148
  840. package/android/src/main/java/com/swmansion/rnexecutorch/Classification.kt +0 -64
  841. package/android/src/main/java/com/swmansion/rnexecutorch/ETModule.kt +0 -90
  842. package/android/src/main/java/com/swmansion/rnexecutorch/ImageSegmentation.kt +0 -58
  843. package/android/src/main/java/com/swmansion/rnexecutorch/OCR.kt +0 -90
  844. package/android/src/main/java/com/swmansion/rnexecutorch/ObjectDetection.kt +0 -64
  845. package/android/src/main/java/com/swmansion/rnexecutorch/SpeechToText.kt +0 -91
  846. package/android/src/main/java/com/swmansion/rnexecutorch/StyleTransfer.kt +0 -54
  847. package/android/src/main/java/com/swmansion/rnexecutorch/TextEmbeddings.kt +0 -51
  848. package/android/src/main/java/com/swmansion/rnexecutorch/Tokenizer.kt +0 -86
  849. package/android/src/main/java/com/swmansion/rnexecutorch/VerticalOCR.kt +0 -179
  850. package/android/src/main/java/com/swmansion/rnexecutorch/models/BaseModel.kt +0 -54
  851. package/android/src/main/java/com/swmansion/rnexecutorch/models/TextEmbeddings/TextEmbeddingsModel.kt +0 -48
  852. package/android/src/main/java/com/swmansion/rnexecutorch/models/TextEmbeddings/TextEmbeddingsUtils.kt +0 -37
  853. package/android/src/main/java/com/swmansion/rnexecutorch/models/classification/ClassificationModel.kt +0 -46
  854. package/android/src/main/java/com/swmansion/rnexecutorch/models/classification/Constants.kt +0 -1005
  855. package/android/src/main/java/com/swmansion/rnexecutorch/models/imageSegmentation/Constants.kt +0 -26
  856. package/android/src/main/java/com/swmansion/rnexecutorch/models/imageSegmentation/ImageSegmentationModel.kt +0 -142
  857. package/android/src/main/java/com/swmansion/rnexecutorch/models/objectDetection/SSDLiteLargeModel.kt +0 -74
  858. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/Detector.kt +0 -82
  859. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/RecognitionHandler.kt +0 -117
  860. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/Recognizer.kt +0 -51
  861. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/VerticalDetector.kt +0 -89
  862. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/utils/CTCLabelConverter.kt +0 -58
  863. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/utils/Constants.kt +0 -31
  864. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/utils/DetectorUtils.kt +0 -608
  865. package/android/src/main/java/com/swmansion/rnexecutorch/models/ocr/utils/RecognizerUtils.kt +0 -430
  866. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/BaseS2TDecoder.kt +0 -39
  867. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/BaseS2TModule.kt +0 -43
  868. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/Moonshine.kt +0 -16
  869. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/MoonshineDecoder.kt +0 -23
  870. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/MoonshineEncoder.kt +0 -20
  871. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/Whisper.kt +0 -16
  872. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/WhisperDecoder.kt +0 -22
  873. package/android/src/main/java/com/swmansion/rnexecutorch/models/speechToText/WhisperEncoder.kt +0 -29
  874. package/android/src/main/java/com/swmansion/rnexecutorch/models/styleTransfer/StyleTransferModel.kt +0 -43
  875. package/android/src/main/java/com/swmansion/rnexecutorch/utils/ArrayUtils.kt +0 -87
  876. package/android/src/main/java/com/swmansion/rnexecutorch/utils/ETError.kt +0 -34
  877. package/android/src/main/java/com/swmansion/rnexecutorch/utils/ImageProcessor.kt +0 -237
  878. package/android/src/main/java/com/swmansion/rnexecutorch/utils/Numerical.kt +0 -8
  879. package/android/src/main/java/com/swmansion/rnexecutorch/utils/ObjectDetectionUtils.kt +0 -201
  880. package/android/src/main/java/com/swmansion/rnexecutorch/utils/STFT.kt +0 -50
  881. package/android/src/main/java/com/swmansion/rnexecutorch/utils/TensorUtils.kt +0 -103
  882. package/ios/RnExecutorch/Classification.h +0 -5
  883. package/ios/RnExecutorch/Classification.mm +0 -54
  884. package/ios/RnExecutorch/ETModule.h +0 -5
  885. package/ios/RnExecutorch/ETModule.mm +0 -75
  886. package/ios/RnExecutorch/ImageSegmentation.h +0 -5
  887. package/ios/RnExecutorch/ImageSegmentation.mm +0 -60
  888. package/ios/RnExecutorch/OCR.h +0 -5
  889. package/ios/RnExecutorch/OCR.mm +0 -96
  890. package/ios/RnExecutorch/ObjectDetection.h +0 -5
  891. package/ios/RnExecutorch/ObjectDetection.mm +0 -56
  892. package/ios/RnExecutorch/SpeechToText.h +0 -5
  893. package/ios/RnExecutorch/SpeechToText.mm +0 -125
  894. package/ios/RnExecutorch/StyleTransfer.h +0 -5
  895. package/ios/RnExecutorch/StyleTransfer.mm +0 -55
  896. package/ios/RnExecutorch/TextEmbeddings.h +0 -5
  897. package/ios/RnExecutorch/TextEmbeddings.mm +0 -62
  898. package/ios/RnExecutorch/Tokenizer.h +0 -5
  899. package/ios/RnExecutorch/Tokenizer.mm +0 -83
  900. package/ios/RnExecutorch/VerticalOCR.h +0 -5
  901. package/ios/RnExecutorch/VerticalOCR.mm +0 -183
  902. package/ios/RnExecutorch/models/BaseModel.h +0 -21
  903. package/ios/RnExecutorch/models/BaseModel.mm +0 -43
  904. package/ios/RnExecutorch/models/classification/ClassificationModel.h +0 -10
  905. package/ios/RnExecutorch/models/classification/ClassificationModel.mm +0 -53
  906. package/ios/RnExecutorch/models/classification/Constants.h +0 -3
  907. package/ios/RnExecutorch/models/image_segmentation/Constants.h +0 -4
  908. package/ios/RnExecutorch/models/image_segmentation/ImageSegmentationModel.h +0 -10
  909. package/ios/RnExecutorch/models/image_segmentation/ImageSegmentationModel.mm +0 -146
  910. package/ios/RnExecutorch/models/object_detection/SSDLiteLargeModel.hpp +0 -11
  911. package/ios/RnExecutorch/models/object_detection/SSDLiteLargeModel.mm +0 -64
  912. package/ios/RnExecutorch/models/ocr/Detector.h +0 -9
  913. package/ios/RnExecutorch/models/ocr/Detector.mm +0 -101
  914. package/ios/RnExecutorch/models/ocr/RecognitionHandler.h +0 -16
  915. package/ios/RnExecutorch/models/ocr/RecognitionHandler.mm +0 -135
  916. package/ios/RnExecutorch/models/ocr/Recognizer.h +0 -8
  917. package/ios/RnExecutorch/models/ocr/Recognizer.mm +0 -77
  918. package/ios/RnExecutorch/models/ocr/VerticalDetector.h +0 -10
  919. package/ios/RnExecutorch/models/ocr/VerticalDetector.mm +0 -118
  920. package/ios/RnExecutorch/models/ocr/utils/CTCLabelConverter.h +0 -16
  921. package/ios/RnExecutorch/models/ocr/utils/CTCLabelConverter.mm +0 -80
  922. package/ios/RnExecutorch/models/ocr/utils/Constants.h +0 -26
  923. package/ios/RnExecutorch/models/ocr/utils/DetectorUtils.h +0 -31
  924. package/ios/RnExecutorch/models/ocr/utils/DetectorUtils.mm +0 -754
  925. package/ios/RnExecutorch/models/ocr/utils/OCRUtils.h +0 -10
  926. package/ios/RnExecutorch/models/ocr/utils/OCRUtils.mm +0 -67
  927. package/ios/RnExecutorch/models/ocr/utils/RecognizerUtils.h +0 -35
  928. package/ios/RnExecutorch/models/ocr/utils/RecognizerUtils.mm +0 -331
  929. package/ios/RnExecutorch/models/stt/Moonshine.hpp +0 -13
  930. package/ios/RnExecutorch/models/stt/Moonshine.mm +0 -64
  931. package/ios/RnExecutorch/models/stt/MoonshineDecoder.hpp +0 -16
  932. package/ios/RnExecutorch/models/stt/MoonshineDecoder.mm +0 -24
  933. package/ios/RnExecutorch/models/stt/MoonshineEncoder.hpp +0 -15
  934. package/ios/RnExecutorch/models/stt/MoonshineEncoder.mm +0 -18
  935. package/ios/RnExecutorch/models/stt/SpeechToTextBaseModel.hpp +0 -26
  936. package/ios/RnExecutorch/models/stt/SpeechToTextBaseModel.mm +0 -19
  937. package/ios/RnExecutorch/models/stt/Whisper.hpp +0 -12
  938. package/ios/RnExecutorch/models/stt/Whisper.mm +0 -68
  939. package/ios/RnExecutorch/models/stt/WhisperDecoder.hpp +0 -16
  940. package/ios/RnExecutorch/models/stt/WhisperDecoder.mm +0 -22
  941. package/ios/RnExecutorch/models/stt/WhisperEncoder.hpp +0 -15
  942. package/ios/RnExecutorch/models/stt/WhisperEncoder.mm +0 -21
  943. package/ios/RnExecutorch/models/style_transfer/StyleTransferModel.h +0 -11
  944. package/ios/RnExecutorch/models/style_transfer/StyleTransferModel.mm +0 -50
  945. package/ios/RnExecutorch/models/text_embeddings/TextEmbeddingsModel.h +0 -15
  946. package/ios/RnExecutorch/models/text_embeddings/TextEmbeddingsModel.mm +0 -45
  947. package/ios/RnExecutorch/models/text_embeddings/TextEmbeddingsUtils.h +0 -8
  948. package/ios/RnExecutorch/models/text_embeddings/TextEmbeddingsUtils.mm +0 -49
  949. package/ios/RnExecutorch/utils/Constants.h +0 -8
  950. package/ios/RnExecutorch/utils/ObjectDetectionUtils.hpp +0 -23
  951. package/ios/RnExecutorch/utils/SFFT.hpp +0 -13
  952. package/ios/RnExecutorch/utils/SFFT.mm +0 -71
  953. package/lib/module/constants/sttDefaults.js +0 -72
  954. package/lib/module/constants/sttDefaults.js.map +0 -1
  955. package/lib/module/controllers/SpeechToTextController.js +0 -307
  956. package/lib/module/controllers/SpeechToTextController.js.map +0 -1
  957. package/lib/module/native/NativeClassification.js +0 -5
  958. package/lib/module/native/NativeClassification.js.map +0 -1
  959. package/lib/module/native/NativeETModule.js +0 -5
  960. package/lib/module/native/NativeETModule.js.map +0 -1
  961. package/lib/module/native/NativeImageSegmentation.js +0 -5
  962. package/lib/module/native/NativeImageSegmentation.js.map +0 -1
  963. package/lib/module/native/NativeOCR.js +0 -5
  964. package/lib/module/native/NativeOCR.js.map +0 -1
  965. package/lib/module/native/NativeObjectDetection.js +0 -5
  966. package/lib/module/native/NativeObjectDetection.js.map +0 -1
  967. package/lib/module/native/NativeSpeechToText.js +0 -5
  968. package/lib/module/native/NativeSpeechToText.js.map +0 -1
  969. package/lib/module/native/NativeStyleTransfer.js +0 -5
  970. package/lib/module/native/NativeStyleTransfer.js.map +0 -1
  971. package/lib/module/native/NativeTextEmbeddings.js +0 -5
  972. package/lib/module/native/NativeTextEmbeddings.js.map +0 -1
  973. package/lib/module/native/NativeTokenizer.js +0 -5
  974. package/lib/module/native/NativeTokenizer.js.map +0 -1
  975. package/lib/module/native/NativeVerticalOCR.js +0 -5
  976. package/lib/module/native/NativeVerticalOCR.js.map +0 -1
  977. package/lib/module/package.json +0 -1
  978. package/lib/typescript/constants/sttDefaults.d.ts +0 -28
  979. package/lib/typescript/constants/sttDefaults.d.ts.map +0 -1
  980. package/lib/typescript/controllers/SpeechToTextController.d.ts +0 -52
  981. package/lib/typescript/controllers/SpeechToTextController.d.ts.map +0 -1
  982. package/lib/typescript/native/NativeClassification.d.ts +0 -10
  983. package/lib/typescript/native/NativeClassification.d.ts.map +0 -1
  984. package/lib/typescript/native/NativeETModule.d.ts +0 -9
  985. package/lib/typescript/native/NativeETModule.d.ts.map +0 -1
  986. package/lib/typescript/native/NativeImageSegmentation.d.ts +0 -10
  987. package/lib/typescript/native/NativeImageSegmentation.d.ts.map +0 -1
  988. package/lib/typescript/native/NativeOCR.d.ts +0 -9
  989. package/lib/typescript/native/NativeOCR.d.ts.map +0 -1
  990. package/lib/typescript/native/NativeObjectDetection.d.ts +0 -9
  991. package/lib/typescript/native/NativeObjectDetection.d.ts.map +0 -1
  992. package/lib/typescript/native/NativeSpeechToText.d.ts +0 -12
  993. package/lib/typescript/native/NativeSpeechToText.d.ts.map +0 -1
  994. package/lib/typescript/native/NativeStyleTransfer.d.ts.map +0 -1
  995. package/lib/typescript/native/NativeTextEmbeddings.d.ts +0 -8
  996. package/lib/typescript/native/NativeTextEmbeddings.d.ts.map +0 -1
  997. package/lib/typescript/native/NativeTokenizer.d.ts +0 -12
  998. package/lib/typescript/native/NativeTokenizer.d.ts.map +0 -1
  999. package/lib/typescript/native/NativeVerticalOCR.d.ts +0 -9
  1000. package/lib/typescript/native/NativeVerticalOCR.d.ts.map +0 -1
  1001. package/src/constants/sttDefaults.ts +0 -86
  1002. package/src/controllers/SpeechToTextController.ts +0 -458
  1003. package/src/index.tsx +0 -47
  1004. package/src/native/NativeClassification.ts +0 -9
  1005. package/src/native/NativeETModule.ts +0 -14
  1006. package/src/native/NativeImageSegmentation.ts +0 -14
  1007. package/src/native/NativeOCR.ts +0 -16
  1008. package/src/native/NativeObjectDetection.ts +0 -10
  1009. package/src/native/NativeSpeechToText.ts +0 -17
  1010. package/src/native/NativeStyleTransfer.ts +0 -10
  1011. package/src/native/NativeTextEmbeddings.ts +0 -9
  1012. package/src/native/NativeTokenizer.ts +0 -13
  1013. package/src/native/NativeVerticalOCR.ts +0 -16
@@ -0,0 +1,1132 @@
1
+ // This file is part of OpenCV project.
2
+ // It is subject to the license terms in the LICENSE file found in the top-level
3
+ // directory of this distribution and at http://opencv.org/license.html.
4
+
5
+ #ifndef OPENCV_CORE_MATX_INL_HPP
6
+ #define OPENCV_CORE_MATX_INL_HPP
7
+
8
+ #ifndef __cplusplus
9
+ #error matx.inl.hpp header must be compiled as C++
10
+ #endif
11
+
12
+ #include "opencv2/core/matx.hpp"
13
+
14
+ namespace cv {
15
+
16
+ //==============================================================================
17
+ // Helpers
18
+
19
+ namespace internal {
20
+
21
+ template <typename _Tp, int m> struct Matx_DetOp {
22
+ double operator()(const Matx<_Tp, m, m> &a) const {
23
+ Matx<_Tp, m, m> temp = a;
24
+ double p = LU(temp.val, m * sizeof(_Tp), m, 0, 0, 0);
25
+ if (p == 0)
26
+ return p;
27
+ for (int i = 0; i < m; i++)
28
+ p *= temp(i, i);
29
+ return p;
30
+ }
31
+ };
32
+
33
+ template <typename _Tp> struct Matx_DetOp<_Tp, 1> {
34
+ double operator()(const Matx<_Tp, 1, 1> &a) const { return a(0, 0); }
35
+ };
36
+
37
+ template <typename _Tp> struct Matx_DetOp<_Tp, 2> {
38
+ double operator()(const Matx<_Tp, 2, 2> &a) const {
39
+ return a(0, 0) * a(1, 1) - a(0, 1) * a(1, 0);
40
+ }
41
+ };
42
+
43
+ template <typename _Tp> struct Matx_DetOp<_Tp, 3> {
44
+ double operator()(const Matx<_Tp, 3, 3> &a) const {
45
+ return a(0, 0) * (a(1, 1) * a(2, 2) - a(2, 1) * a(1, 2)) -
46
+ a(0, 1) * (a(1, 0) * a(2, 2) - a(2, 0) * a(1, 2)) +
47
+ a(0, 2) * (a(1, 0) * a(2, 1) - a(2, 0) * a(1, 1));
48
+ }
49
+ };
50
+
51
+ template <typename _Tp> Vec<_Tp, 2> inline conjugate(const Vec<_Tp, 2> &v) {
52
+ return Vec<_Tp, 2>(v[0], -v[1]);
53
+ }
54
+
55
+ template <typename _Tp> Vec<_Tp, 4> inline conjugate(const Vec<_Tp, 4> &v) {
56
+ return Vec<_Tp, 4>(v[0], -v[1], -v[2], -v[3]);
57
+ }
58
+
59
+ } // namespace internal
60
+
61
+ //==============================================================================
62
+ // Matx
63
+
64
+ template <typename _Tp, int m, int n> class DataType<Matx<_Tp, m, n>> {
65
+ public:
66
+ typedef Matx<_Tp, m, n> value_type;
67
+ typedef Matx<typename DataType<_Tp>::work_type, m, n> work_type;
68
+ typedef _Tp channel_type;
69
+ typedef value_type vec_type;
70
+
71
+ enum {
72
+ generic_type = 0,
73
+ channels = m * n,
74
+ fmt = traits::SafeFmt<channel_type>::fmt + ((channels - 1) << 8)
75
+ #ifdef OPENCV_TRAITS_ENABLE_DEPRECATED
76
+ ,
77
+ depth = DataType<channel_type>::depth,
78
+ type = CV_MAKETYPE(depth, channels)
79
+ #endif
80
+ };
81
+ };
82
+
83
+ namespace traits {
84
+ template <typename _Tp, int m, int n> struct Depth<Matx<_Tp, m, n>> {
85
+ enum { value = Depth<_Tp>::value };
86
+ };
87
+ template <typename _Tp, int m, int n> struct Type<Matx<_Tp, m, n>> {
88
+ enum { value = CV_MAKETYPE(Depth<_Tp>::value, n *m) };
89
+ };
90
+ } // namespace traits
91
+
92
+ //! @brief Comma-separated Matrix Initializer
93
+ template <typename _Tp, int m, int n> class MatxCommaInitializer {
94
+ public:
95
+ MatxCommaInitializer(Matx<_Tp, m, n> *_mtx);
96
+ template <typename T2> MatxCommaInitializer<_Tp, m, n> &operator,(T2 val);
97
+ Matx<_Tp, m, n> operator*() const;
98
+
99
+ Matx<_Tp, m, n> *dst;
100
+ int idx;
101
+ };
102
+
103
+ template <typename _Tp, typename _T2, int m, int n>
104
+ static inline MatxCommaInitializer<_Tp, m, n>
105
+ operator<<(const Matx<_Tp, m, n> &mtx, _T2 val) {
106
+ MatxCommaInitializer<_Tp, m, n> commaInitializer((Matx<_Tp, m, n> *)&mtx);
107
+ return (commaInitializer, val);
108
+ }
109
+
110
+ template <typename _Tp, int m, int n>
111
+ inline MatxCommaInitializer<_Tp, m, n>::MatxCommaInitializer(
112
+ Matx<_Tp, m, n> *_mtx)
113
+ : dst(_mtx), idx(0) {}
114
+
115
+ template <typename _Tp, int m, int n>
116
+ template <typename _T2>
117
+ inline MatxCommaInitializer<_Tp, m, n>
118
+ &MatxCommaInitializer<_Tp, m, n>::operator,(_T2 value) {
119
+ CV_DbgAssert(idx < m * n);
120
+ dst->val[idx++] = saturate_cast<_Tp>(value);
121
+ return *this;
122
+ }
123
+
124
+ template <typename _Tp, int m, int n>
125
+ inline Matx<_Tp, m, n> MatxCommaInitializer<_Tp, m, n>::operator*() const {
126
+ CV_DbgAssert(idx == n * m);
127
+ return *dst;
128
+ }
129
+
130
+ ////////////////////////////////// Matx Implementation
131
+ //////////////////////////////////////
132
+
133
+ template <typename _Tp, int m, int n> inline Matx<_Tp, m, n>::Matx() {
134
+ for (int i = 0; i < channels; i++)
135
+ val[i] = _Tp(0);
136
+ }
137
+
138
+ template <typename _Tp, int m, int n> inline Matx<_Tp, m, n>::Matx(_Tp v0) {
139
+ val[0] = v0;
140
+ for (int i = 1; i < channels; i++)
141
+ val[i] = _Tp(0);
142
+ }
143
+
144
+ template <typename _Tp, int m, int n>
145
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1) {
146
+ CV_StaticAssert(channels >= 2, "Matx should have at least 2 elements.");
147
+ val[0] = v0;
148
+ val[1] = v1;
149
+ for (int i = 2; i < channels; i++)
150
+ val[i] = _Tp(0);
151
+ }
152
+
153
+ template <typename _Tp, int m, int n>
154
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2) {
155
+ CV_StaticAssert(channels >= 3, "Matx should have at least 3 elements.");
156
+ val[0] = v0;
157
+ val[1] = v1;
158
+ val[2] = v2;
159
+ for (int i = 3; i < channels; i++)
160
+ val[i] = _Tp(0);
161
+ }
162
+
163
+ template <typename _Tp, int m, int n>
164
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2, _Tp v3) {
165
+ CV_StaticAssert(channels >= 4, "Matx should have at least 4 elements.");
166
+ val[0] = v0;
167
+ val[1] = v1;
168
+ val[2] = v2;
169
+ val[3] = v3;
170
+ for (int i = 4; i < channels; i++)
171
+ val[i] = _Tp(0);
172
+ }
173
+
174
+ template <typename _Tp, int m, int n>
175
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4) {
176
+ CV_StaticAssert(channels >= 5, "Matx should have at least 5 elements.");
177
+ val[0] = v0;
178
+ val[1] = v1;
179
+ val[2] = v2;
180
+ val[3] = v3;
181
+ val[4] = v4;
182
+ for (int i = 5; i < channels; i++)
183
+ val[i] = _Tp(0);
184
+ }
185
+
186
+ template <typename _Tp, int m, int n>
187
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5) {
188
+ CV_StaticAssert(channels >= 6, "Matx should have at least 6 elements.");
189
+ val[0] = v0;
190
+ val[1] = v1;
191
+ val[2] = v2;
192
+ val[3] = v3;
193
+ val[4] = v4;
194
+ val[5] = v5;
195
+ for (int i = 6; i < channels; i++)
196
+ val[i] = _Tp(0);
197
+ }
198
+
199
+ template <typename _Tp, int m, int n>
200
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5,
201
+ _Tp v6) {
202
+ CV_StaticAssert(channels >= 7, "Matx should have at least 7 elements.");
203
+ val[0] = v0;
204
+ val[1] = v1;
205
+ val[2] = v2;
206
+ val[3] = v3;
207
+ val[4] = v4;
208
+ val[5] = v5;
209
+ val[6] = v6;
210
+ for (int i = 7; i < channels; i++)
211
+ val[i] = _Tp(0);
212
+ }
213
+
214
+ template <typename _Tp, int m, int n>
215
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5,
216
+ _Tp v6, _Tp v7) {
217
+ CV_StaticAssert(channels >= 8, "Matx should have at least 8 elements.");
218
+ val[0] = v0;
219
+ val[1] = v1;
220
+ val[2] = v2;
221
+ val[3] = v3;
222
+ val[4] = v4;
223
+ val[5] = v5;
224
+ val[6] = v6;
225
+ val[7] = v7;
226
+ for (int i = 8; i < channels; i++)
227
+ val[i] = _Tp(0);
228
+ }
229
+
230
+ template <typename _Tp, int m, int n>
231
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5,
232
+ _Tp v6, _Tp v7, _Tp v8) {
233
+ CV_StaticAssert(channels >= 9, "Matx should have at least 9 elements.");
234
+ val[0] = v0;
235
+ val[1] = v1;
236
+ val[2] = v2;
237
+ val[3] = v3;
238
+ val[4] = v4;
239
+ val[5] = v5;
240
+ val[6] = v6;
241
+ val[7] = v7;
242
+ val[8] = v8;
243
+ for (int i = 9; i < channels; i++)
244
+ val[i] = _Tp(0);
245
+ }
246
+
247
+ template <typename _Tp, int m, int n>
248
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5,
249
+ _Tp v6, _Tp v7, _Tp v8, _Tp v9) {
250
+ CV_StaticAssert(channels >= 10, "Matx should have at least 10 elements.");
251
+ val[0] = v0;
252
+ val[1] = v1;
253
+ val[2] = v2;
254
+ val[3] = v3;
255
+ val[4] = v4;
256
+ val[5] = v5;
257
+ val[6] = v6;
258
+ val[7] = v7;
259
+ val[8] = v8;
260
+ val[9] = v9;
261
+ for (int i = 10; i < channels; i++)
262
+ val[i] = _Tp(0);
263
+ }
264
+
265
+ template <typename _Tp, int m, int n>
266
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5,
267
+ _Tp v6, _Tp v7, _Tp v8, _Tp v9, _Tp v10, _Tp v11) {
268
+ CV_StaticAssert(channels >= 12, "Matx should have at least 12 elements.");
269
+ val[0] = v0;
270
+ val[1] = v1;
271
+ val[2] = v2;
272
+ val[3] = v3;
273
+ val[4] = v4;
274
+ val[5] = v5;
275
+ val[6] = v6;
276
+ val[7] = v7;
277
+ val[8] = v8;
278
+ val[9] = v9;
279
+ val[10] = v10;
280
+ val[11] = v11;
281
+ for (int i = 12; i < channels; i++)
282
+ val[i] = _Tp(0);
283
+ }
284
+
285
+ template <typename _Tp, int m, int n>
286
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5,
287
+ _Tp v6, _Tp v7, _Tp v8, _Tp v9, _Tp v10, _Tp v11,
288
+ _Tp v12, _Tp v13) {
289
+ CV_StaticAssert(channels >= 14, "Matx should have at least 14 elements.");
290
+ val[0] = v0;
291
+ val[1] = v1;
292
+ val[2] = v2;
293
+ val[3] = v3;
294
+ val[4] = v4;
295
+ val[5] = v5;
296
+ val[6] = v6;
297
+ val[7] = v7;
298
+ val[8] = v8;
299
+ val[9] = v9;
300
+ val[10] = v10;
301
+ val[11] = v11;
302
+ val[12] = v12;
303
+ val[13] = v13;
304
+ for (int i = 14; i < channels; i++)
305
+ val[i] = _Tp(0);
306
+ }
307
+
308
+ template <typename _Tp, int m, int n>
309
+ inline Matx<_Tp, m, n>::Matx(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5,
310
+ _Tp v6, _Tp v7, _Tp v8, _Tp v9, _Tp v10, _Tp v11,
311
+ _Tp v12, _Tp v13, _Tp v14, _Tp v15) {
312
+ CV_StaticAssert(channels >= 16, "Matx should have at least 16 elements.");
313
+ val[0] = v0;
314
+ val[1] = v1;
315
+ val[2] = v2;
316
+ val[3] = v3;
317
+ val[4] = v4;
318
+ val[5] = v5;
319
+ val[6] = v6;
320
+ val[7] = v7;
321
+ val[8] = v8;
322
+ val[9] = v9;
323
+ val[10] = v10;
324
+ val[11] = v11;
325
+ val[12] = v12;
326
+ val[13] = v13;
327
+ val[14] = v14;
328
+ val[15] = v15;
329
+ for (int i = 16; i < channels; i++)
330
+ val[i] = _Tp(0);
331
+ }
332
+
333
+ // WARNING: unreachable code using Ninja
334
+ #if defined _MSC_VER && _MSC_VER >= 1920
335
+ #pragma warning(push)
336
+ #pragma warning(disable : 4702)
337
+ #endif
338
+ template <typename _Tp, int m, int n>
339
+ inline Matx<_Tp, m, n>::Matx(const _Tp *values) {
340
+ for (int i = 0; i < channels; i++)
341
+ val[i] = values[i];
342
+ }
343
+ #if defined _MSC_VER && _MSC_VER >= 1920
344
+ #pragma warning(pop)
345
+ #endif
346
+
347
+ template <typename _Tp, int m, int n>
348
+ inline Matx<_Tp, m, n>::Matx(std::initializer_list<_Tp> list) {
349
+ CV_DbgAssert(list.size() == channels);
350
+ int i = 0;
351
+ for (const auto &elem : list) {
352
+ val[i++] = elem;
353
+ }
354
+ }
355
+
356
+ template <typename _Tp, int m, int n>
357
+ inline Matx<_Tp, m, n> Matx<_Tp, m, n>::all(_Tp alpha) {
358
+ Matx<_Tp, m, n> M;
359
+ for (int i = 0; i < m * n; i++)
360
+ M.val[i] = alpha;
361
+ return M;
362
+ }
363
+
364
+ template <typename _Tp, int m, int n>
365
+ inline Matx<_Tp, m, n> Matx<_Tp, m, n>::zeros() {
366
+ return all(0);
367
+ }
368
+
369
+ template <typename _Tp, int m, int n>
370
+ inline Matx<_Tp, m, n> Matx<_Tp, m, n>::ones() {
371
+ return all(1);
372
+ }
373
+
374
+ template <typename _Tp, int m, int n>
375
+ inline Matx<_Tp, m, n> Matx<_Tp, m, n>::eye() {
376
+ Matx<_Tp, m, n> M;
377
+ for (int i = 0; i < shortdim; i++)
378
+ M(i, i) = 1;
379
+ return M;
380
+ }
381
+
382
+ template <typename _Tp, int m, int n>
383
+ inline _Tp Matx<_Tp, m, n>::dot(const Matx<_Tp, m, n> &M) const {
384
+ _Tp s = 0;
385
+ for (int i = 0; i < channels; i++)
386
+ s += val[i] * M.val[i];
387
+ return s;
388
+ }
389
+
390
+ template <typename _Tp, int m, int n>
391
+ inline double Matx<_Tp, m, n>::ddot(const Matx<_Tp, m, n> &M) const {
392
+ double s = 0;
393
+ for (int i = 0; i < channels; i++)
394
+ s += (double)val[i] * M.val[i];
395
+ return s;
396
+ }
397
+
398
+ template <typename _Tp, int m, int n>
399
+ inline Matx<_Tp, m, n>
400
+ Matx<_Tp, m, n>::diag(const typename Matx<_Tp, m, n>::diag_type &d) {
401
+ Matx<_Tp, m, n> M;
402
+ for (int i = 0; i < shortdim; i++)
403
+ M(i, i) = d(i, 0);
404
+ return M;
405
+ }
406
+
407
+ template <typename _Tp, int m, int n>
408
+ template <typename T2>
409
+ inline Matx<_Tp, m, n>::operator Matx<T2, m, n>() const {
410
+ Matx<T2, m, n> M;
411
+ for (int i = 0; i < m * n; i++)
412
+ M.val[i] = saturate_cast<T2>(val[i]);
413
+ return M;
414
+ }
415
+
416
+ template <typename _Tp, int m, int n>
417
+ template <int m1, int n1>
418
+ inline Matx<_Tp, m1, n1> Matx<_Tp, m, n>::reshape() const {
419
+ CV_StaticAssert(
420
+ m1 * n1 == m * n,
421
+ "Input and destination matrices must have the same number of elements");
422
+ return (const Matx<_Tp, m1, n1> &)*this;
423
+ }
424
+
425
+ template <typename _Tp, int m, int n>
426
+ template <int m1, int n1>
427
+ inline Matx<_Tp, m1, n1> Matx<_Tp, m, n>::get_minor(int base_row,
428
+ int base_col) const {
429
+ CV_DbgAssert(0 <= base_row && base_row + m1 <= m && 0 <= base_col &&
430
+ base_col + n1 <= n);
431
+ Matx<_Tp, m1, n1> s;
432
+ for (int di = 0; di < m1; di++)
433
+ for (int dj = 0; dj < n1; dj++)
434
+ s(di, dj) = (*this)(base_row + di, base_col + dj);
435
+ return s;
436
+ }
437
+
438
+ template <typename _Tp, int m, int n>
439
+ inline Matx<_Tp, 1, n> Matx<_Tp, m, n>::row(int i) const {
440
+ CV_DbgAssert((unsigned)i < (unsigned)m);
441
+ return Matx<_Tp, 1, n>(&val[i * n]);
442
+ }
443
+
444
+ template <typename _Tp, int m, int n>
445
+ inline Matx<_Tp, m, 1> Matx<_Tp, m, n>::col(int j) const {
446
+ CV_DbgAssert((unsigned)j < (unsigned)n);
447
+ Matx<_Tp, m, 1> v;
448
+ for (int i = 0; i < m; i++)
449
+ v.val[i] = val[i * n + j];
450
+ return v;
451
+ }
452
+
453
+ template <typename _Tp, int m, int n>
454
+ inline typename Matx<_Tp, m, n>::diag_type Matx<_Tp, m, n>::diag() const {
455
+ diag_type d;
456
+ for (int i = 0; i < shortdim; i++)
457
+ d.val[i] = val[i * n + i];
458
+ return d;
459
+ }
460
+
461
+ template <typename _Tp, int m, int n>
462
+ inline const _Tp &Matx<_Tp, m, n>::operator()(int row_idx, int col_idx) const {
463
+ CV_DbgAssert((unsigned)row_idx < (unsigned)m &&
464
+ (unsigned)col_idx < (unsigned)n);
465
+ return this->val[row_idx * n + col_idx];
466
+ }
467
+
468
+ template <typename _Tp, int m, int n>
469
+ inline _Tp &Matx<_Tp, m, n>::operator()(int row_idx, int col_idx) {
470
+ CV_DbgAssert((unsigned)row_idx < (unsigned)m &&
471
+ (unsigned)col_idx < (unsigned)n);
472
+ return val[row_idx * n + col_idx];
473
+ }
474
+
475
+ template <typename _Tp, int m, int n>
476
+ inline const _Tp &Matx<_Tp, m, n>::operator()(int i) const {
477
+ CV_StaticAssert(
478
+ m == 1 || n == 1,
479
+ "Single index indexation requires matrix to be a column or a row");
480
+ CV_DbgAssert((unsigned)i < (unsigned)(m + n - 1));
481
+ return val[i];
482
+ }
483
+
484
+ template <typename _Tp, int m, int n>
485
+ inline _Tp &Matx<_Tp, m, n>::operator()(int i) {
486
+ CV_StaticAssert(
487
+ m == 1 || n == 1,
488
+ "Single index indexation requires matrix to be a column or a row");
489
+ CV_DbgAssert((unsigned)i < (unsigned)(m + n - 1));
490
+ return val[i];
491
+ }
492
+
493
+ template <typename _Tp, int m, int n>
494
+ inline Matx<_Tp, m, n>::Matx(const Matx<_Tp, m, n> &a, const Matx<_Tp, m, n> &b,
495
+ Matx_AddOp) {
496
+ for (int i = 0; i < channels; i++)
497
+ val[i] = saturate_cast<_Tp>(a.val[i] + b.val[i]);
498
+ }
499
+
500
+ template <typename _Tp, int m, int n>
501
+ inline Matx<_Tp, m, n>::Matx(const Matx<_Tp, m, n> &a, const Matx<_Tp, m, n> &b,
502
+ Matx_SubOp) {
503
+ for (int i = 0; i < channels; i++)
504
+ val[i] = saturate_cast<_Tp>(a.val[i] - b.val[i]);
505
+ }
506
+
507
+ template <typename _Tp, int m, int n>
508
+ template <typename _T2>
509
+ inline Matx<_Tp, m, n>::Matx(const Matx<_Tp, m, n> &a, _T2 alpha,
510
+ Matx_ScaleOp) {
511
+ for (int i = 0; i < channels; i++)
512
+ val[i] = saturate_cast<_Tp>(a.val[i] * alpha);
513
+ }
514
+
515
+ template <typename _Tp, int m, int n>
516
+ inline Matx<_Tp, m, n>::Matx(const Matx<_Tp, m, n> &a, const Matx<_Tp, m, n> &b,
517
+ Matx_MulOp) {
518
+ for (int i = 0; i < channels; i++)
519
+ val[i] = saturate_cast<_Tp>(a.val[i] * b.val[i]);
520
+ }
521
+
522
+ template <typename _Tp, int m, int n>
523
+ inline Matx<_Tp, m, n>::Matx(const Matx<_Tp, m, n> &a, const Matx<_Tp, m, n> &b,
524
+ Matx_DivOp) {
525
+ for (int i = 0; i < channels; i++)
526
+ val[i] = saturate_cast<_Tp>(a.val[i] / b.val[i]);
527
+ }
528
+
529
+ template <typename _Tp, int m, int n>
530
+ template <int l>
531
+ inline Matx<_Tp, m, n>::Matx(const Matx<_Tp, m, l> &a, const Matx<_Tp, l, n> &b,
532
+ Matx_MatMulOp) {
533
+ for (int i = 0; i < m; i++)
534
+ for (int j = 0; j < n; j++) {
535
+ _Tp s = 0;
536
+ for (int k = 0; k < l; k++)
537
+ s += a(i, k) * b(k, j);
538
+ val[i * n + j] = s;
539
+ }
540
+ }
541
+
542
+ template <typename _Tp, int m, int n>
543
+ inline Matx<_Tp, m, n>::Matx(const Matx<_Tp, n, m> &a, Matx_TOp) {
544
+ for (int i = 0; i < m; i++)
545
+ for (int j = 0; j < n; j++)
546
+ val[i * n + j] = a(j, i);
547
+ }
548
+
549
+ template <typename _Tp, int m, int n>
550
+ inline Matx<_Tp, m, n> Matx<_Tp, m, n>::mul(const Matx<_Tp, m, n> &a) const {
551
+ return Matx<_Tp, m, n>(*this, a, Matx_MulOp());
552
+ }
553
+
554
+ template <typename _Tp, int m, int n>
555
+ inline Matx<_Tp, m, n> Matx<_Tp, m, n>::div(const Matx<_Tp, m, n> &a) const {
556
+ return Matx<_Tp, m, n>(*this, a, Matx_DivOp());
557
+ }
558
+
559
+ template <typename _Tp, int m, int n>
560
+ inline Matx<_Tp, n, m> Matx<_Tp, m, n>::t() const {
561
+ return Matx<_Tp, n, m>(*this, Matx_TOp());
562
+ }
563
+
564
+ template <typename _Tp, int m, int n>
565
+ inline Vec<_Tp, n> Matx<_Tp, m, n>::solve(const Vec<_Tp, m> &rhs,
566
+ int method) const {
567
+ Matx<_Tp, n, 1> x = solve((const Matx<_Tp, m, 1> &)(rhs), method);
568
+ return (Vec<_Tp, n> &)(x);
569
+ }
570
+
571
+ template <typename _Tp, int m>
572
+ static inline double determinant(const Matx<_Tp, m, m> &a) {
573
+ return cv::internal::Matx_DetOp<_Tp, m>()(a);
574
+ }
575
+
576
+ template <typename _Tp, int m, int n>
577
+ static inline double trace(const Matx<_Tp, m, n> &a) {
578
+ _Tp s = 0;
579
+ for (int i = 0; i < std::min(m, n); i++)
580
+ s += a(i, i);
581
+ return s;
582
+ }
583
+
584
+ template <typename _Tp, int m, int n>
585
+ static inline double norm(const Matx<_Tp, m, n> &M) {
586
+ return std::sqrt(normL2Sqr<_Tp, double>(M.val, m * n));
587
+ }
588
+
589
+ template <typename _Tp, int m, int n>
590
+ static inline double norm(const Matx<_Tp, m, n> &M, int normType) {
591
+ switch (normType) {
592
+ case NORM_INF:
593
+ return (double)normInf<_Tp, typename DataType<_Tp>::work_type>(M.val,
594
+ m * n);
595
+ case NORM_L1:
596
+ return (double)normL1<_Tp, typename DataType<_Tp>::work_type>(M.val, m * n);
597
+ case NORM_L2SQR:
598
+ return (double)normL2Sqr<_Tp, typename DataType<_Tp>::work_type>(M.val,
599
+ m * n);
600
+ default:
601
+ case NORM_L2:
602
+ return std::sqrt((double)normL2Sqr<_Tp, typename DataType<_Tp>::work_type>(
603
+ M.val, m * n));
604
+ }
605
+ }
606
+
607
+ template <typename _Tp1, typename _Tp2, int m, int n>
608
+ static inline Matx<_Tp1, m, n> &operator+=(Matx<_Tp1, m, n> &a,
609
+ const Matx<_Tp2, m, n> &b) {
610
+ for (int i = 0; i < m * n; i++)
611
+ a.val[i] = saturate_cast<_Tp1>(a.val[i] + b.val[i]);
612
+ return a;
613
+ }
614
+
615
+ template <typename _Tp1, typename _Tp2, int m, int n>
616
+ static inline Matx<_Tp1, m, n> &operator-=(Matx<_Tp1, m, n> &a,
617
+ const Matx<_Tp2, m, n> &b) {
618
+ for (int i = 0; i < m * n; i++)
619
+ a.val[i] = saturate_cast<_Tp1>(a.val[i] - b.val[i]);
620
+ return a;
621
+ }
622
+
623
+ template <typename _Tp, int m, int n>
624
+ static inline Matx<_Tp, m, n> operator+(const Matx<_Tp, m, n> &a,
625
+ const Matx<_Tp, m, n> &b) {
626
+ return Matx<_Tp, m, n>(a, b, Matx_AddOp());
627
+ }
628
+
629
+ template <typename _Tp, int m, int n>
630
+ static inline Matx<_Tp, m, n> operator-(const Matx<_Tp, m, n> &a,
631
+ const Matx<_Tp, m, n> &b) {
632
+ return Matx<_Tp, m, n>(a, b, Matx_SubOp());
633
+ }
634
+
635
+ template <typename _Tp, int m, int n>
636
+ static inline Matx<_Tp, m, n> &operator*=(Matx<_Tp, m, n> &a, int alpha) {
637
+ for (int i = 0; i < m * n; i++)
638
+ a.val[i] = saturate_cast<_Tp>(a.val[i] * alpha);
639
+ return a;
640
+ }
641
+
642
+ template <typename _Tp, int m, int n>
643
+ static inline Matx<_Tp, m, n> &operator*=(Matx<_Tp, m, n> &a, float alpha) {
644
+ for (int i = 0; i < m * n; i++)
645
+ a.val[i] = saturate_cast<_Tp>(a.val[i] * alpha);
646
+ return a;
647
+ }
648
+
649
+ template <typename _Tp, int m, int n>
650
+ static inline Matx<_Tp, m, n> &operator*=(Matx<_Tp, m, n> &a, double alpha) {
651
+ for (int i = 0; i < m * n; i++)
652
+ a.val[i] = saturate_cast<_Tp>(a.val[i] * alpha);
653
+ return a;
654
+ }
655
+
656
+ template <typename _Tp, int m, int n>
657
+ static inline Matx<_Tp, m, n> operator*(const Matx<_Tp, m, n> &a, int alpha) {
658
+ return Matx<_Tp, m, n>(a, alpha, Matx_ScaleOp());
659
+ }
660
+
661
+ template <typename _Tp, int m, int n>
662
+ static inline Matx<_Tp, m, n> operator*(const Matx<_Tp, m, n> &a, float alpha) {
663
+ return Matx<_Tp, m, n>(a, alpha, Matx_ScaleOp());
664
+ }
665
+
666
+ template <typename _Tp, int m, int n>
667
+ static inline Matx<_Tp, m, n> operator*(const Matx<_Tp, m, n> &a,
668
+ double alpha) {
669
+ return Matx<_Tp, m, n>(a, alpha, Matx_ScaleOp());
670
+ }
671
+
672
+ template <typename _Tp, int m, int n>
673
+ static inline Matx<_Tp, m, n> operator*(int alpha, const Matx<_Tp, m, n> &a) {
674
+ return Matx<_Tp, m, n>(a, alpha, Matx_ScaleOp());
675
+ }
676
+
677
+ template <typename _Tp, int m, int n>
678
+ static inline Matx<_Tp, m, n> operator*(float alpha, const Matx<_Tp, m, n> &a) {
679
+ return Matx<_Tp, m, n>(a, alpha, Matx_ScaleOp());
680
+ }
681
+
682
+ template <typename _Tp, int m, int n>
683
+ static inline Matx<_Tp, m, n> operator*(double alpha,
684
+ const Matx<_Tp, m, n> &a) {
685
+ return Matx<_Tp, m, n>(a, alpha, Matx_ScaleOp());
686
+ }
687
+
688
+ template <typename _Tp, int m, int n>
689
+ static inline Matx<_Tp, m, n> &operator/=(Matx<_Tp, m, n> &a, float alpha) {
690
+ for (int i = 0; i < m * n; i++)
691
+ a.val[i] = a.val[i] / alpha;
692
+ return a;
693
+ }
694
+
695
+ template <typename _Tp, int m, int n>
696
+ static inline Matx<_Tp, m, n> &operator/=(Matx<_Tp, m, n> &a, double alpha) {
697
+ for (int i = 0; i < m * n; i++)
698
+ a.val[i] = a.val[i] / alpha;
699
+ return a;
700
+ }
701
+
702
+ template <typename _Tp, int m, int n>
703
+ static inline Matx<_Tp, m, n> operator/(const Matx<_Tp, m, n> &a, float alpha) {
704
+ return Matx<_Tp, m, n>(a, 1.f / alpha, Matx_ScaleOp());
705
+ }
706
+
707
+ template <typename _Tp, int m, int n>
708
+ static inline Matx<_Tp, m, n> operator/(const Matx<_Tp, m, n> &a,
709
+ double alpha) {
710
+ return Matx<_Tp, m, n>(a, 1. / alpha, Matx_ScaleOp());
711
+ }
712
+
713
+ template <typename _Tp, int m, int n>
714
+ static inline Matx<_Tp, m, n> operator-(const Matx<_Tp, m, n> &a) {
715
+ return Matx<_Tp, m, n>(a, -1, Matx_ScaleOp());
716
+ }
717
+
718
+ template <typename _Tp, int m, int n, int l>
719
+ static inline Matx<_Tp, m, n> operator*(const Matx<_Tp, m, l> &a,
720
+ const Matx<_Tp, l, n> &b) {
721
+ return Matx<_Tp, m, n>(a, b, Matx_MatMulOp());
722
+ }
723
+
724
+ template <typename _Tp, int m, int n>
725
+ static inline Vec<_Tp, m> operator*(const Matx<_Tp, m, n> &a,
726
+ const Vec<_Tp, n> &b) {
727
+ Matx<_Tp, m, 1> c(a, b, Matx_MatMulOp());
728
+ return (const Vec<_Tp, m> &)(c);
729
+ }
730
+
731
+ template <typename _Tp, int m, int n>
732
+ static inline bool operator==(const Matx<_Tp, m, n> &a,
733
+ const Matx<_Tp, m, n> &b) {
734
+ for (int i = 0; i < m * n; i++)
735
+ if (a.val[i] != b.val[i])
736
+ return false;
737
+ return true;
738
+ }
739
+
740
+ template <typename _Tp, int m, int n>
741
+ static inline bool operator!=(const Matx<_Tp, m, n> &a,
742
+ const Matx<_Tp, m, n> &b) {
743
+ return !(a == b);
744
+ }
745
+
746
+ //==============================================================================
747
+ // Vec
748
+
749
+ template <typename _Tp, int cn> class DataType<Vec<_Tp, cn>> {
750
+ public:
751
+ typedef Vec<_Tp, cn> value_type;
752
+ typedef Vec<typename DataType<_Tp>::work_type, cn> work_type;
753
+ typedef _Tp channel_type;
754
+ typedef value_type vec_type;
755
+
756
+ enum {
757
+ generic_type = 0,
758
+ channels = cn,
759
+ fmt = DataType<channel_type>::fmt + ((channels - 1) << 8),
760
+ #ifdef OPENCV_TRAITS_ENABLE_DEPRECATED
761
+ depth = DataType<channel_type>::depth,
762
+ type = CV_MAKETYPE(depth, channels),
763
+ #endif
764
+ _dummy_enum_finalizer = 0
765
+ };
766
+ };
767
+
768
+ namespace traits {
769
+ template <typename _Tp, int cn> struct Depth<Vec<_Tp, cn>> {
770
+ enum { value = Depth<_Tp>::value };
771
+ };
772
+ template <typename _Tp, int cn> struct Type<Vec<_Tp, cn>> {
773
+ enum { value = CV_MAKETYPE(Depth<_Tp>::value, cn) };
774
+ };
775
+ } // namespace traits
776
+
777
+ /** @brief Comma-separated Vec Initializer
778
+ */
779
+ template <typename _Tp, int m>
780
+ class VecCommaInitializer : public MatxCommaInitializer<_Tp, m, 1> {
781
+ public:
782
+ VecCommaInitializer(Vec<_Tp, m> *_vec);
783
+ template <typename T2> VecCommaInitializer<_Tp, m> &operator,(T2 val);
784
+ Vec<_Tp, m> operator*() const;
785
+ };
786
+
787
+ template <typename _Tp, typename _T2, int cn>
788
+ static inline VecCommaInitializer<_Tp, cn> operator<<(const Vec<_Tp, cn> &vec,
789
+ _T2 val) {
790
+ VecCommaInitializer<_Tp, cn> commaInitializer((Vec<_Tp, cn> *)&vec);
791
+ return (commaInitializer, val);
792
+ }
793
+
794
+ template <typename _Tp, int cn>
795
+ inline VecCommaInitializer<_Tp, cn>::VecCommaInitializer(Vec<_Tp, cn> *_vec)
796
+ : MatxCommaInitializer<_Tp, cn, 1>(_vec) {}
797
+
798
+ template <typename _Tp, int cn>
799
+ template <typename _T2>
800
+ inline VecCommaInitializer<_Tp, cn> &VecCommaInitializer<_Tp, cn>::operator,(
801
+ _T2 value) {
802
+ CV_DbgAssert(this->idx < cn);
803
+ this->dst->val[this->idx++] = saturate_cast<_Tp>(value);
804
+ return *this;
805
+ }
806
+
807
+ template <typename _Tp, int cn>
808
+ inline Vec<_Tp, cn> VecCommaInitializer<_Tp, cn>::operator*() const {
809
+ CV_DbgAssert(this->idx == cn);
810
+ return *this->dst;
811
+ }
812
+
813
+ template <typename _Tp, int cn> inline Vec<_Tp, cn>::Vec() {}
814
+
815
+ template <typename _Tp, int cn>
816
+ inline Vec<_Tp, cn>::Vec(_Tp v0) : Matx<_Tp, cn, 1>(v0) {}
817
+
818
+ template <typename _Tp, int cn>
819
+ inline Vec<_Tp, cn>::Vec(_Tp v0, _Tp v1) : Matx<_Tp, cn, 1>(v0, v1) {}
820
+
821
+ template <typename _Tp, int cn>
822
+ inline Vec<_Tp, cn>::Vec(_Tp v0, _Tp v1, _Tp v2)
823
+ : Matx<_Tp, cn, 1>(v0, v1, v2) {}
824
+
825
+ template <typename _Tp, int cn>
826
+ inline Vec<_Tp, cn>::Vec(_Tp v0, _Tp v1, _Tp v2, _Tp v3)
827
+ : Matx<_Tp, cn, 1>(v0, v1, v2, v3) {}
828
+
829
+ template <typename _Tp, int cn>
830
+ inline Vec<_Tp, cn>::Vec(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4)
831
+ : Matx<_Tp, cn, 1>(v0, v1, v2, v3, v4) {}
832
+
833
+ template <typename _Tp, int cn>
834
+ inline Vec<_Tp, cn>::Vec(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5)
835
+ : Matx<_Tp, cn, 1>(v0, v1, v2, v3, v4, v5) {}
836
+
837
+ template <typename _Tp, int cn>
838
+ inline Vec<_Tp, cn>::Vec(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6)
839
+ : Matx<_Tp, cn, 1>(v0, v1, v2, v3, v4, v5, v6) {}
840
+
841
+ template <typename _Tp, int cn>
842
+ inline Vec<_Tp, cn>::Vec(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6,
843
+ _Tp v7)
844
+ : Matx<_Tp, cn, 1>(v0, v1, v2, v3, v4, v5, v6, v7) {}
845
+
846
+ template <typename _Tp, int cn>
847
+ inline Vec<_Tp, cn>::Vec(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6,
848
+ _Tp v7, _Tp v8)
849
+ : Matx<_Tp, cn, 1>(v0, v1, v2, v3, v4, v5, v6, v7, v8) {}
850
+
851
+ template <typename _Tp, int cn>
852
+ inline Vec<_Tp, cn>::Vec(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6,
853
+ _Tp v7, _Tp v8, _Tp v9)
854
+ : Matx<_Tp, cn, 1>(v0, v1, v2, v3, v4, v5, v6, v7, v8, v9) {}
855
+
856
+ template <typename _Tp, int cn>
857
+ inline Vec<_Tp, cn>::Vec(_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6,
858
+ _Tp v7, _Tp v8, _Tp v9, _Tp v10, _Tp v11, _Tp v12,
859
+ _Tp v13)
860
+ : Matx<_Tp, cn, 1>(v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12,
861
+ v13) {}
862
+
863
+ template <typename _Tp, int cn>
864
+ inline Vec<_Tp, cn>::Vec(const _Tp *values) : Matx<_Tp, cn, 1>(values) {}
865
+
866
+ template <typename _Tp, int cn>
867
+ inline Vec<_Tp, cn>::Vec(std::initializer_list<_Tp> list)
868
+ : Matx<_Tp, cn, 1>(list) {}
869
+
870
+ template <typename _Tp, int cn>
871
+ inline Vec<_Tp, cn>::Vec(const Vec<_Tp, cn> &m) : Matx<_Tp, cn, 1>(m.val) {}
872
+
873
+ template <typename _Tp, int cn>
874
+ inline Vec<_Tp, cn>::Vec(const Matx<_Tp, cn, 1> &a, const Matx<_Tp, cn, 1> &b,
875
+ Matx_AddOp op)
876
+ : Matx<_Tp, cn, 1>(a, b, op) {}
877
+
878
+ template <typename _Tp, int cn>
879
+ inline Vec<_Tp, cn>::Vec(const Matx<_Tp, cn, 1> &a, const Matx<_Tp, cn, 1> &b,
880
+ Matx_SubOp op)
881
+ : Matx<_Tp, cn, 1>(a, b, op) {}
882
+
883
+ template <typename _Tp, int cn>
884
+ template <typename _T2>
885
+ inline Vec<_Tp, cn>::Vec(const Matx<_Tp, cn, 1> &a, _T2 alpha, Matx_ScaleOp op)
886
+ : Matx<_Tp, cn, 1>(a, alpha, op) {}
887
+
888
+ template <typename _Tp, int cn>
889
+ inline Vec<_Tp, cn> Vec<_Tp, cn>::all(_Tp alpha) {
890
+ Vec v;
891
+ for (int i = 0; i < cn; i++)
892
+ v.val[i] = alpha;
893
+ return v;
894
+ }
895
+
896
+ template <typename _Tp, int cn> inline Vec<_Tp, cn> Vec<_Tp, cn>::ones() {
897
+ return Vec::all(1);
898
+ }
899
+
900
+ template <typename _Tp, int cn> inline Vec<_Tp, cn> Vec<_Tp, cn>::zeros() {
901
+ return Vec::all(0);
902
+ }
903
+
904
+ template <typename _Tp, int cn>
905
+ inline Vec<_Tp, cn> Vec<_Tp, cn>::mul(const Vec<_Tp, cn> &v) const {
906
+ Vec<_Tp, cn> w;
907
+ for (int i = 0; i < cn; i++)
908
+ w.val[i] = saturate_cast<_Tp>(this->val[i] * v.val[i]);
909
+ return w;
910
+ }
911
+
912
+ template <> inline Vec<float, 2> Vec<float, 2>::conj() const {
913
+ return cv::internal::conjugate(*this);
914
+ }
915
+
916
+ template <> inline Vec<double, 2> Vec<double, 2>::conj() const {
917
+ return cv::internal::conjugate(*this);
918
+ }
919
+
920
+ template <> inline Vec<float, 4> Vec<float, 4>::conj() const {
921
+ return cv::internal::conjugate(*this);
922
+ }
923
+
924
+ template <> inline Vec<double, 4> Vec<double, 4>::conj() const {
925
+ return cv::internal::conjugate(*this);
926
+ }
927
+
928
+ template <typename _Tp, int cn>
929
+ inline Vec<_Tp, cn> Vec<_Tp, cn>::cross(const Vec<_Tp, cn> &) const {
930
+ CV_StaticAssert(
931
+ cn == 3, "for arbitrary-size vector there is no cross-product defined");
932
+ return Vec<_Tp, cn>();
933
+ }
934
+
935
+ template <>
936
+ inline Vec<float, 3> Vec<float, 3>::cross(const Vec<float, 3> &v) const {
937
+ return Vec<float, 3>(this->val[1] * v.val[2] - this->val[2] * v.val[1],
938
+ this->val[2] * v.val[0] - this->val[0] * v.val[2],
939
+ this->val[0] * v.val[1] - this->val[1] * v.val[0]);
940
+ }
941
+
942
+ template <>
943
+ inline Vec<double, 3> Vec<double, 3>::cross(const Vec<double, 3> &v) const {
944
+ return Vec<double, 3>(this->val[1] * v.val[2] - this->val[2] * v.val[1],
945
+ this->val[2] * v.val[0] - this->val[0] * v.val[2],
946
+ this->val[0] * v.val[1] - this->val[1] * v.val[0]);
947
+ }
948
+
949
+ template <typename _Tp, int cn>
950
+ template <typename T2>
951
+ inline Vec<_Tp, cn>::operator Vec<T2, cn>() const {
952
+ Vec<T2, cn> v;
953
+ for (int i = 0; i < cn; i++)
954
+ v.val[i] = saturate_cast<T2>(this->val[i]);
955
+ return v;
956
+ }
957
+
958
+ template <typename _Tp, int cn>
959
+ inline const _Tp &Vec<_Tp, cn>::operator[](int i) const {
960
+ CV_DbgAssert((unsigned)i < (unsigned)cn);
961
+ return this->val[i];
962
+ }
963
+
964
+ template <typename _Tp, int cn> inline _Tp &Vec<_Tp, cn>::operator[](int i) {
965
+ CV_DbgAssert((unsigned)i < (unsigned)cn);
966
+ return this->val[i];
967
+ }
968
+
969
+ template <typename _Tp, int cn>
970
+ inline const _Tp &Vec<_Tp, cn>::operator()(int i) const {
971
+ CV_DbgAssert((unsigned)i < (unsigned)cn);
972
+ return this->val[i];
973
+ }
974
+
975
+ template <typename _Tp, int cn> inline _Tp &Vec<_Tp, cn>::operator()(int i) {
976
+ CV_DbgAssert((unsigned)i < (unsigned)cn);
977
+ return this->val[i];
978
+ }
979
+
980
+ template <typename _Tp, int cn>
981
+ inline Vec<_Tp, cn> normalize(const Vec<_Tp, cn> &v) {
982
+ double nv = norm(v);
983
+ return v * (nv ? 1. / nv : 0.);
984
+ }
985
+
986
+ template <typename _Tp1, typename _Tp2, int cn>
987
+ static inline Vec<_Tp1, cn> &operator+=(Vec<_Tp1, cn> &a,
988
+ const Vec<_Tp2, cn> &b) {
989
+ for (int i = 0; i < cn; i++)
990
+ a.val[i] = saturate_cast<_Tp1>(a.val[i] + b.val[i]);
991
+ return a;
992
+ }
993
+
994
+ template <typename _Tp1, typename _Tp2, int cn>
995
+ static inline Vec<_Tp1, cn> &operator-=(Vec<_Tp1, cn> &a,
996
+ const Vec<_Tp2, cn> &b) {
997
+ for (int i = 0; i < cn; i++)
998
+ a.val[i] = saturate_cast<_Tp1>(a.val[i] - b.val[i]);
999
+ return a;
1000
+ }
1001
+
1002
+ template <typename _Tp, int cn>
1003
+ static inline Vec<_Tp, cn> operator+(const Vec<_Tp, cn> &a,
1004
+ const Vec<_Tp, cn> &b) {
1005
+ return Vec<_Tp, cn>(a, b, Matx_AddOp());
1006
+ }
1007
+
1008
+ template <typename _Tp, int cn>
1009
+ static inline Vec<_Tp, cn> operator-(const Vec<_Tp, cn> &a,
1010
+ const Vec<_Tp, cn> &b) {
1011
+ return Vec<_Tp, cn>(a, b, Matx_SubOp());
1012
+ }
1013
+
1014
+ template <typename _Tp, int cn>
1015
+ static inline Vec<_Tp, cn> &operator*=(Vec<_Tp, cn> &a, int alpha) {
1016
+ for (int i = 0; i < cn; i++)
1017
+ a[i] = saturate_cast<_Tp>(a[i] * alpha);
1018
+ return a;
1019
+ }
1020
+
1021
+ template <typename _Tp, int cn>
1022
+ static inline Vec<_Tp, cn> &operator*=(Vec<_Tp, cn> &a, float alpha) {
1023
+ for (int i = 0; i < cn; i++)
1024
+ a[i] = saturate_cast<_Tp>(a[i] * alpha);
1025
+ return a;
1026
+ }
1027
+
1028
+ template <typename _Tp, int cn>
1029
+ static inline Vec<_Tp, cn> &operator*=(Vec<_Tp, cn> &a, double alpha) {
1030
+ for (int i = 0; i < cn; i++)
1031
+ a[i] = saturate_cast<_Tp>(a[i] * alpha);
1032
+ return a;
1033
+ }
1034
+
1035
+ template <typename _Tp, int cn>
1036
+ static inline Vec<_Tp, cn> &operator/=(Vec<_Tp, cn> &a, int alpha) {
1037
+ double ialpha = 1. / alpha;
1038
+ for (int i = 0; i < cn; i++)
1039
+ a[i] = saturate_cast<_Tp>(a[i] * ialpha);
1040
+ return a;
1041
+ }
1042
+
1043
+ template <typename _Tp, int cn>
1044
+ static inline Vec<_Tp, cn> &operator/=(Vec<_Tp, cn> &a, float alpha) {
1045
+ float ialpha = 1.f / alpha;
1046
+ for (int i = 0; i < cn; i++)
1047
+ a[i] = saturate_cast<_Tp>(a[i] * ialpha);
1048
+ return a;
1049
+ }
1050
+
1051
+ template <typename _Tp, int cn>
1052
+ static inline Vec<_Tp, cn> &operator/=(Vec<_Tp, cn> &a, double alpha) {
1053
+ double ialpha = 1. / alpha;
1054
+ for (int i = 0; i < cn; i++)
1055
+ a[i] = saturate_cast<_Tp>(a[i] * ialpha);
1056
+ return a;
1057
+ }
1058
+
1059
+ template <typename _Tp, int cn>
1060
+ static inline Vec<_Tp, cn> operator*(const Vec<_Tp, cn> &a, int alpha) {
1061
+ return Vec<_Tp, cn>(a, alpha, Matx_ScaleOp());
1062
+ }
1063
+
1064
+ template <typename _Tp, int cn>
1065
+ static inline Vec<_Tp, cn> operator*(int alpha, const Vec<_Tp, cn> &a) {
1066
+ return Vec<_Tp, cn>(a, alpha, Matx_ScaleOp());
1067
+ }
1068
+
1069
+ template <typename _Tp, int cn>
1070
+ static inline Vec<_Tp, cn> operator*(const Vec<_Tp, cn> &a, float alpha) {
1071
+ return Vec<_Tp, cn>(a, alpha, Matx_ScaleOp());
1072
+ }
1073
+
1074
+ template <typename _Tp, int cn>
1075
+ static inline Vec<_Tp, cn> operator*(float alpha, const Vec<_Tp, cn> &a) {
1076
+ return Vec<_Tp, cn>(a, alpha, Matx_ScaleOp());
1077
+ }
1078
+
1079
+ template <typename _Tp, int cn>
1080
+ static inline Vec<_Tp, cn> operator*(const Vec<_Tp, cn> &a, double alpha) {
1081
+ return Vec<_Tp, cn>(a, alpha, Matx_ScaleOp());
1082
+ }
1083
+
1084
+ template <typename _Tp, int cn>
1085
+ static inline Vec<_Tp, cn> operator*(double alpha, const Vec<_Tp, cn> &a) {
1086
+ return Vec<_Tp, cn>(a, alpha, Matx_ScaleOp());
1087
+ }
1088
+
1089
+ template <typename _Tp, int cn>
1090
+ static inline Vec<_Tp, cn> operator/(const Vec<_Tp, cn> &a, int alpha) {
1091
+ return Vec<_Tp, cn>(a, 1. / alpha, Matx_ScaleOp());
1092
+ }
1093
+
1094
+ template <typename _Tp, int cn>
1095
+ static inline Vec<_Tp, cn> operator/(const Vec<_Tp, cn> &a, float alpha) {
1096
+ return Vec<_Tp, cn>(a, 1.f / alpha, Matx_ScaleOp());
1097
+ }
1098
+
1099
+ template <typename _Tp, int cn>
1100
+ static inline Vec<_Tp, cn> operator/(const Vec<_Tp, cn> &a, double alpha) {
1101
+ return Vec<_Tp, cn>(a, 1. / alpha, Matx_ScaleOp());
1102
+ }
1103
+
1104
+ template <typename _Tp, int cn>
1105
+ static inline Vec<_Tp, cn> operator-(const Vec<_Tp, cn> &a) {
1106
+ Vec<_Tp, cn> t;
1107
+ for (int i = 0; i < cn; i++)
1108
+ t.val[i] = saturate_cast<_Tp>(-a.val[i]);
1109
+ return t;
1110
+ }
1111
+
1112
+ template <typename _Tp>
1113
+ inline Vec<_Tp, 4> operator*(const Vec<_Tp, 4> &v1, const Vec<_Tp, 4> &v2) {
1114
+ return Vec<_Tp, 4>(saturate_cast<_Tp>(v1[0] * v2[0] - v1[1] * v2[1] -
1115
+ v1[2] * v2[2] - v1[3] * v2[3]),
1116
+ saturate_cast<_Tp>(v1[0] * v2[1] + v1[1] * v2[0] +
1117
+ v1[2] * v2[3] - v1[3] * v2[2]),
1118
+ saturate_cast<_Tp>(v1[0] * v2[2] - v1[1] * v2[3] +
1119
+ v1[2] * v2[0] + v1[3] * v2[1]),
1120
+ saturate_cast<_Tp>(v1[0] * v2[3] + v1[1] * v2[2] -
1121
+ v1[2] * v2[1] + v1[3] * v2[0]));
1122
+ }
1123
+
1124
+ template <typename _Tp>
1125
+ inline Vec<_Tp, 4> &operator*=(Vec<_Tp, 4> &v1, const Vec<_Tp, 4> &v2) {
1126
+ v1 = v1 * v2;
1127
+ return v1;
1128
+ }
1129
+
1130
+ } // namespace cv
1131
+
1132
+ #endif // OPENCV_CORE_MATX_INL_HPP