dynamsoft-capture-vision-react-native 3.4.1300 → 3.4.3010

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 (198) hide show
  1. package/LICENSE +4 -4
  2. package/README.md +62 -62
  3. package/android/README.md +14 -14
  4. package/android/build.gradle +167 -163
  5. package/android/gradle.properties +20 -20
  6. package/android/settings.gradle +5 -5
  7. package/android/src/main/AndroidManifest.xml +6 -6
  8. package/android/src/main/AndroidManifest_noPackage.xml +5 -5
  9. package/android/src/main/cpp/CMakeLists.txt +21 -21
  10. package/android/src/main/cpp/ImgHO.cpp +94 -94
  11. package/android/src/main/cpp/ImgHO.h +34 -34
  12. package/android/src/main/cpp/JsiCore.cpp +296 -296
  13. package/android/src/main/cpp/JsiCore.h +51 -51
  14. package/android/src/main/cpp/JsiCvr.cpp +332 -332
  15. package/android/src/main/cpp/JsiCvr.h +54 -54
  16. package/android/src/main/cpp/JsiDbr.cpp +283 -283
  17. package/android/src/main/cpp/JsiDbr.h +26 -26
  18. package/android/src/main/cpp/JsiDce.cpp +59 -59
  19. package/android/src/main/cpp/JsiDce.h +17 -17
  20. package/android/src/main/cpp/JsiDcp.cpp +51 -51
  21. package/android/src/main/cpp/JsiDcp.h +31 -31
  22. package/android/src/main/cpp/JsiDdn.cpp +50 -50
  23. package/android/src/main/cpp/JsiDdn.h +28 -28
  24. package/android/src/main/cpp/JsiDlr.cpp +60 -60
  25. package/android/src/main/cpp/JsiDlr.h +26 -26
  26. package/android/src/main/cpp/JsiUtility.cpp +604 -604
  27. package/android/src/main/cpp/JsiUtility.h +26 -26
  28. package/android/src/main/cpp/RawBuffer.cpp +23 -23
  29. package/android/src/main/cpp/RawBuffer.h +24 -24
  30. package/android/src/main/cpp/android_log.h +14 -14
  31. package/android/src/main/dysJniLibsFor86/debug/arm64-v8a/librn_dys.so +0 -0
  32. package/android/src/main/dysJniLibsFor86/debug/armeabi-v7a/librn_dys.so +0 -0
  33. package/android/src/main/dysJniLibsFor86/debug/x86/librn_dys.so +0 -0
  34. package/android/src/main/dysJniLibsFor86/debug/x86_64/librn_dys.so +0 -0
  35. package/android/src/main/dysJniLibsFor86/release/arm64-v8a/librn_dys.so +0 -0
  36. package/android/src/main/dysJniLibsFor86/release/armeabi-v7a/librn_dys.so +0 -0
  37. package/android/src/main/dysJniLibsFor86/release/x86/librn_dys.so +0 -0
  38. package/android/src/main/dysJniLibsFor86/release/x86_64/librn_dys.so +0 -0
  39. package/android/src/main/java/com/dynamsoft/reactnativelib/CVRModule.kt +137 -137
  40. package/android/src/main/java/com/dynamsoft/reactnativelib/CameraViewManager.kt +62 -62
  41. package/android/src/main/java/com/dynamsoft/reactnativelib/DCEModule.kt +125 -125
  42. package/android/src/main/java/com/dynamsoft/reactnativelib/DynamsoftBaseModule.kt +8 -8
  43. package/android/src/main/java/com/dynamsoft/reactnativelib/ISAModule.kt +73 -73
  44. package/android/src/main/java/com/dynamsoft/reactnativelib/ImageEditorViewManager.kt +14 -14
  45. package/android/src/main/java/com/dynamsoft/reactnativelib/ImageEditorViewModule.kt +35 -35
  46. package/android/src/main/java/com/dynamsoft/reactnativelib/ImageManagerModule.kt +15 -15
  47. package/android/src/main/java/com/dynamsoft/reactnativelib/LicenseModule.kt +29 -29
  48. package/android/src/main/java/com/dynamsoft/reactnativelib/MultiCrossFilterModule.kt +83 -83
  49. package/android/src/main/java/com/dynamsoft/reactnativelib/ReactNativeDcvPackage.kt +32 -32
  50. package/android/src/main/java/com/dynamsoft/reactnativelib/VersionsModule.kt +41 -41
  51. package/android/src/main/java/com/dynamsoft/reactnativelib/basicutils/Basic.kt +44 -44
  52. package/android/src/main/java/com/dynamsoft/reactnativelib/basicutils/ForCore.kt +50 -50
  53. package/android/src/main/java/com/dynamsoft/reactnativelib/basicutils/ForCvr.kt +129 -129
  54. package/android/src/main/java/com/dynamsoft/reactnativelib/basicutils/ForDBR.kt +157 -157
  55. package/android/src/main/java/com/dynamsoft/reactnativelib/basicutils/ForDCE.kt +110 -110
  56. package/android/src/main/java/com/dynamsoft/reactnativelib/basicutils/ForDCP.kt +49 -49
  57. package/android/src/main/java/com/dynamsoft/reactnativelib/basicutils/ForDDN.kt +85 -85
  58. package/android/src/main/java/com/dynamsoft/reactnativelib/basicutils/ForDLR.kt +72 -72
  59. package/android/src/main/java/com/dynamsoft/reactnativelib/basicutils/ImageUtil.kt +58 -58
  60. package/android/src/main/java/com/dynamsoft/reactnativelib/core/ImageSourceAdapterModuleImpl.kt +120 -120
  61. package/android/src/main/java/com/dynamsoft/reactnativelib/cvr/CaptureVisionRouterModuleImpl.kt +306 -306
  62. package/android/src/main/java/com/dynamsoft/reactnativelib/dce/CameraEnhancerModuleImpl.kt +247 -247
  63. package/android/src/main/java/com/dynamsoft/reactnativelib/dce/CameraLifeCycleOwner.java +14 -14
  64. package/android/src/main/java/com/dynamsoft/reactnativelib/dce/CameraViewManagerImpl.kt +77 -77
  65. package/android/src/main/java/com/dynamsoft/reactnativelib/dce/ImageEditorViewManagerImpl.kt +15 -15
  66. package/android/src/main/java/com/dynamsoft/reactnativelib/dce/ImageEditorViewModuleImpl.kt +110 -110
  67. package/android/src/main/java/com/dynamsoft/reactnativelib/dce/RNCameraView.kt +20 -20
  68. package/android/src/main/java/com/dynamsoft/reactnativelib/dce/RNImageEditorView.kt +19 -19
  69. package/android/src/main/java/com/dynamsoft/reactnativelib/license/LicenseModuleImpl.kt +39 -39
  70. package/android/src/main/java/com/dynamsoft/reactnativelib/utility/ImageManagerModuleImpl.kt +120 -120
  71. package/android/src/main/java/com/dynamsoft/reactnativelib/utility/MultiCrossFilterModuleImpl.kt +111 -111
  72. package/app.plugin.js +21 -21
  73. package/dynamsoft-capture-vision-react-native.podspec +24 -24
  74. package/ios/CPP/DSImageData+HostObject.h +18 -18
  75. package/ios/CPP/DSImageData+HostObject.mm +38 -38
  76. package/ios/CPP/ImageDataHostObject.cpp +87 -87
  77. package/ios/CPP/ImageDataHostObject.hpp +35 -35
  78. package/ios/CPP/MutableRawBuffer.cpp +23 -23
  79. package/ios/CPP/MutableRawBuffer.hpp +23 -23
  80. package/ios/CPP/RNDynamsoft+JSI.h +22 -22
  81. package/ios/CPP/RNDynamsoft+JSI.mm +303 -303
  82. package/ios/CPP/RNDynamsoft+Json.h +93 -93
  83. package/ios/CPP/RNDynamsoft+Json.m +733 -733
  84. package/ios/CPP/YeetJSIUtils.h +56 -56
  85. package/ios/CPP/YeetJSIUtils.mm +208 -208
  86. package/ios/RNDynamsoftCameraView.h +31 -31
  87. package/ios/RNDynamsoftCameraView.m +108 -108
  88. package/ios/RNDynamsoftCameraViewManager.h +14 -14
  89. package/ios/RNDynamsoftCameraViewManager.m +195 -195
  90. package/ios/RNDynamsoftCaptureVisionRouter.h +18 -18
  91. package/ios/RNDynamsoftCaptureVisionRouter.mm +532 -532
  92. package/ios/RNDynamsoftImageEditorView.h +17 -17
  93. package/ios/RNDynamsoftImageEditorView.m +25 -25
  94. package/ios/RNDynamsoftImageEditorViewManager.h +14 -14
  95. package/ios/RNDynamsoftImageEditorViewManager.mm +183 -183
  96. package/ios/RNDynamsoftImageManager.h +14 -14
  97. package/ios/RNDynamsoftImageManager.mm +369 -369
  98. package/ios/RNDynamsoftImageSourceAdapter.h +19 -19
  99. package/ios/RNDynamsoftImageSourceAdapter.mm +255 -255
  100. package/ios/RNDynamsoftLicense.h +14 -14
  101. package/ios/RNDynamsoftLicense.m +62 -62
  102. package/ios/RNDynamsoftMultiCrossFilter.h +14 -14
  103. package/ios/RNDynamsoftMultiCrossFilter.m +145 -145
  104. package/ios/RNDynamsoftVersions.h +13 -13
  105. package/ios/RNDynamsoftVersions.m +27 -27
  106. package/package.json +48 -48
  107. package/src/NativeDynamsoftVersionsModule.tsx +20 -20
  108. package/src/VersionsModule.tsx +7 -7
  109. package/src/core/CapturedResultBase.tsx +18 -18
  110. package/src/core/CapturedResultItem.tsx +23 -23
  111. package/src/core/CoreModule.tsx +9 -9
  112. package/src/core/DSRect.tsx +29 -29
  113. package/src/core/EnumCaptureResultItemType.tsx +52 -52
  114. package/src/core/EnumColourChannelUsageType.tsx +26 -26
  115. package/src/core/EnumCrossVerificationStatus.tsx +46 -46
  116. package/src/core/EnumGrayscaleEnhancementMode.tsx +46 -46
  117. package/src/core/EnumGrayscaleTransformationMode.tsx +35 -35
  118. package/src/core/EnumImageFileFormat.tsx +6 -6
  119. package/src/core/EnumPixelFormat.tsx +53 -53
  120. package/src/core/ImageData.tsx +87 -87
  121. package/src/core/ImageSourceAdapter.tsx +160 -160
  122. package/src/core/NativeDynamsoftImageSourceAdapterModule.tsx +29 -29
  123. package/src/core/Point.tsx +13 -13
  124. package/src/core/Quadrilateral.tsx +12 -12
  125. package/src/core/index.tsx +18 -18
  126. package/src/cvr/CaptureVisionRouter.tsx +683 -683
  127. package/src/cvr/CaptureVisionRouterModule.tsx +9 -9
  128. package/src/cvr/CapturedResult.tsx +123 -123
  129. package/src/cvr/CapturedResultFilter.tsx +13 -13
  130. package/src/cvr/CapturedResultReceiver.tsx +71 -71
  131. package/src/cvr/EnumPresetTemplate.tsx +81 -81
  132. package/src/cvr/NativeDynamsoftCaptureVisionRouterModule.tsx +25 -25
  133. package/src/cvr/SimplifiedCaptureVisionSettings.tsx +61 -61
  134. package/src/cvr/index.tsx +11 -11
  135. package/src/dbr/BarcodeDetails.tsx +51 -51
  136. package/src/dbr/BarcodeReaderModule.tsx +9 -9
  137. package/src/dbr/BarcodeResultItem.tsx +65 -65
  138. package/src/dbr/DecodedBarcodesResult.tsx +14 -14
  139. package/src/dbr/ECISegment.tsx +23 -23
  140. package/src/dbr/EnumBarcodeFormat.tsx +112 -112
  141. package/src/dbr/EnumDeblurMode.tsx +29 -29
  142. package/src/dbr/EnumLocalizationMode.tsx +27 -27
  143. package/src/dbr/EnumQRCodeErrorCorrectionLevel.tsx +6 -6
  144. package/src/dbr/SimplifiedBarcodeReaderSettings.tsx +80 -80
  145. package/src/dbr/index.tsx +9 -9
  146. package/src/dce/CameraEnhancer.tsx +254 -254
  147. package/src/dce/CameraEnhancerModule.tsx +9 -9
  148. package/src/dce/CameraView.tsx +100 -100
  149. package/src/dce/DynamsoftCameraViewNativeComponent.ts +96 -96
  150. package/src/dce/DynamsoftImageEditorViewNativeComponent.ts +9 -9
  151. package/src/dce/EnumCameraPosition.tsx +25 -25
  152. package/src/dce/EnumDrawingLayerId.tsx +17 -17
  153. package/src/dce/EnumEnhancedFeatures.tsx +24 -24
  154. package/src/dce/EnumFocusMode.tsx +6 -6
  155. package/src/dce/EnumResolution.tsx +8 -8
  156. package/src/dce/EnumTorchState.tsx +10 -10
  157. package/src/dce/FeedBack.tsx +28 -28
  158. package/src/dce/ImageEditorView.tsx +131 -131
  159. package/src/dce/NativeDynamsoftCameraViewModule.tsx +47 -47
  160. package/src/dce/NativeDynamsoftImageEditorViewModule.ts +9 -9
  161. package/src/dce/index.tsx +13 -13
  162. package/src/dcp/CodeParserDedicatorModule.tsx +9 -9
  163. package/src/dcp/CodeParserModule.tsx +9 -9
  164. package/src/dcp/EnumMappingStatus.tsx +14 -14
  165. package/src/dcp/EnumValidationStatus.tsx +14 -14
  166. package/src/dcp/ParsedResult.tsx +14 -14
  167. package/src/dcp/ParsedResultItem.tsx +50 -50
  168. package/src/dcp/index.tsx +8 -8
  169. package/src/ddn/DeskewedImageResultItem.tsx +40 -40
  170. package/src/ddn/DetectedQuadResultItem.tsx +31 -31
  171. package/src/ddn/DocumentNormalizerModule.tsx +9 -9
  172. package/src/ddn/EnhancedImageResultItem.tsx +20 -20
  173. package/src/ddn/EnumImageColourMode.tsx +14 -14
  174. package/src/ddn/ProcessedDocumentResult.tsx +27 -27
  175. package/src/ddn/SimplifiedDocumentNormalizerSettings.tsx +65 -65
  176. package/src/ddn/index.tsx +11 -11
  177. package/src/dip/ImageProcessingModule.tsx +9 -9
  178. package/src/dip/index.tsx +1 -1
  179. package/src/dlr/CharacterResult.tsx +28 -28
  180. package/src/dlr/LabelRecognizerModule.tsx +9 -9
  181. package/src/dlr/RecognizedTextLinesResult.tsx +19 -19
  182. package/src/dlr/SimplifiedLabelRecognizerSettings.tsx +33 -33
  183. package/src/dlr/TextLineResultItem.tsx +41 -41
  184. package/src/dlr/index.tsx +8 -8
  185. package/src/index.tsx +13 -13
  186. package/src/license/LicenseManager.tsx +49 -49
  187. package/src/license/LicenseModule.tsx +9 -9
  188. package/src/license/NativeDynamsoftLicenseModule.tsx +7 -7
  189. package/src/license/index.tsx +7 -7
  190. package/src/utility/CrossVerificationCriteria.tsx +11 -11
  191. package/src/utility/EnumFilterType.tsx +5 -5
  192. package/src/utility/ImageManager.tsx +348 -348
  193. package/src/utility/MultiFrameResultCrossFilter.tsx +183 -183
  194. package/src/utility/NativeDynamsoftImageManagerModule.tsx +7 -7
  195. package/src/utility/NativeDynamsoftMultiCrossFilterModule.tsx +18 -18
  196. package/src/utility/UtilityModule.tsx +9 -9
  197. package/src/utility/index.tsx +4 -4
  198. package/android/.gitignore +0 -4
@@ -1,95 +1,95 @@
1
- //
2
- // Created by Allen on 24/08/26.
3
- //
4
-
5
- #include "ImgHO.h"
6
- #include "RawBuffer.h"
7
- #include "android_log.h"
8
-
9
- #define JSI_FUNC [=](Runtime & runtime, const Value& thisValue, const Value* arguments, size_t count) -> Value
10
- #define GET_VALUE(X) if(name==#X){return this->X;}
11
- #define SET_INT_VALUE(X) if(name==#X){this->X = (int) value.asNumber();}
12
-
13
- ImageDataHostObject::ImageDataHostObject(int width, int height, int stride, int format, int orientation, uint8_t *buffer, int bufferSize)
14
- : width(width), height(height), stride(stride), format(format), orientation(orientation), buffer(buffer), bufferSize(bufferSize) {
15
- }
16
-
17
- ImageDataHostObject ImageDataHostObject::getHOFromObject(Runtime &runtime, Object jsObj) {
18
- if (jsObj.isHostObject(runtime)) {
19
- return *((ImageDataHostObject *) (jsObj.asHostObject(runtime).get()));
20
- }
21
- ImageDataHostObject imageHO;
22
- int width = jsObj.hasProperty(runtime, "width") ? (int) jsObj.getProperty(runtime, "width").asNumber() : 0;
23
- int height = jsObj.hasProperty(runtime, "height") ? (int) jsObj.getProperty(runtime, "height").asNumber() : 0;
24
- int stride = jsObj.hasProperty(runtime, "stride") ? (int) jsObj.getProperty(runtime, "stride").asNumber() : 0;
25
- int format = jsObj.hasProperty(runtime, "format") ? (int) jsObj.getProperty(runtime, "format").asNumber() : 0;
26
- int orientation = jsObj.hasProperty(runtime, "orientation") ? (int) jsObj.getProperty(runtime, "orientation").asNumber() : 0;
27
- uint8_t *buffer = nullptr;
28
- int bufferSize = 0;
29
- if (jsObj.hasProperty(runtime, "buffer")) {
30
- ArrayBuffer array_buffer = jsObj.getProperty(runtime, "buffer").asObject(runtime).getArrayBuffer(runtime);
31
- buffer = array_buffer.data(runtime);
32
- bufferSize = (int) array_buffer.length(runtime);
33
- }
34
- return ImageDataHostObject(width, height, stride, format, orientation, buffer, bufferSize);
35
- }
36
-
37
- Value ImageDataHostObject::get(Runtime &runtime, const PropNameID &propName) {
38
- auto name = propName.utf8(runtime);
39
- GET_VALUE(width)
40
- GET_VALUE(height)
41
- GET_VALUE(stride)
42
- GET_VALUE(format)
43
- GET_VALUE(orientation)
44
- GET_VALUE(bufferSize)
45
- //todo
46
- if (name == "buffer") {
47
- auto mutableBuffer = std::make_shared<MutableRawBuffer>(buffer, bufferSize, false);
48
- return ArrayBuffer(runtime, mutableBuffer);
49
- }
50
-
51
- if (name == "release") {
52
- auto release = JSI_FUNC {
53
- if(buffer != nullptr) {
54
- delete[] buffer;
55
- buffer = nullptr;
56
- bufferSize = 0;
57
- }
58
- return {};
59
- };
60
- return Function::createFromHostFunction(runtime, PropNameID::forUtf8(runtime, "release"), 0, release);
61
- }
62
- return {};
63
- }
64
-
65
- void ImageDataHostObject::set(Runtime &runtime, const PropNameID &propName, const Value &value) {
66
- auto name = propName.utf8(runtime);
67
- SET_INT_VALUE(width)
68
- SET_INT_VALUE(height)
69
- SET_INT_VALUE(stride)
70
- SET_INT_VALUE(format)
71
- SET_INT_VALUE(orientation)
72
- //todo
73
- if (name == "buffer") {
74
- auto arrayBuffer = value.asObject(runtime).getArrayBuffer(runtime);
75
- this->buffer = arrayBuffer.data(runtime);
76
- this->bufferSize = (int) arrayBuffer.length(runtime);
77
- }
78
- }
79
-
80
- std::vector<PropNameID> ImageDataHostObject::getPropertyNames(Runtime &rt) {
81
- std::vector<PropNameID> result;
82
- result.push_back(PropNameID::forUtf8(rt, std::string("width")));
83
- result.push_back(PropNameID::forUtf8(rt, std::string("height")));
84
- result.push_back(PropNameID::forUtf8(rt, std::string("stride")));
85
- result.push_back(PropNameID::forUtf8(rt, std::string("format")));
86
- result.push_back(PropNameID::forUtf8(rt, std::string("orientation")));
87
- result.push_back(PropNameID::forUtf8(rt, std::string("buffer")));
88
- result.push_back(PropNameID::forUtf8(rt, std::string("release")));
89
- return result;
90
- }
91
-
92
- void ImageDataHostObject::logString(const char *preStr) const {
93
- LOGI("%s wid:%d, hgt:%d, stride:%d, format:%d, orientation:%d, bufferSize:%d, buffer:%p, this:%p",
94
- preStr, width, height, stride, format, orientation, bufferSize, buffer, this);
1
+ //
2
+ // Created by Allen on 24/08/26.
3
+ //
4
+
5
+ #include "ImgHO.h"
6
+ #include "RawBuffer.h"
7
+ #include "android_log.h"
8
+
9
+ #define JSI_FUNC [=](Runtime & runtime, const Value& thisValue, const Value* arguments, size_t count) -> Value
10
+ #define GET_VALUE(X) if(name==#X){return this->X;}
11
+ #define SET_INT_VALUE(X) if(name==#X){this->X = (int) value.asNumber();}
12
+
13
+ ImageDataHostObject::ImageDataHostObject(int width, int height, int stride, int format, int orientation, uint8_t *buffer, int bufferSize)
14
+ : width(width), height(height), stride(stride), format(format), orientation(orientation), buffer(buffer), bufferSize(bufferSize) {
15
+ }
16
+
17
+ ImageDataHostObject ImageDataHostObject::getHOFromObject(Runtime &runtime, Object jsObj) {
18
+ if (jsObj.isHostObject(runtime)) {
19
+ return *((ImageDataHostObject *) (jsObj.asHostObject(runtime).get()));
20
+ }
21
+ ImageDataHostObject imageHO;
22
+ int width = jsObj.hasProperty(runtime, "width") ? (int) jsObj.getProperty(runtime, "width").asNumber() : 0;
23
+ int height = jsObj.hasProperty(runtime, "height") ? (int) jsObj.getProperty(runtime, "height").asNumber() : 0;
24
+ int stride = jsObj.hasProperty(runtime, "stride") ? (int) jsObj.getProperty(runtime, "stride").asNumber() : 0;
25
+ int format = jsObj.hasProperty(runtime, "format") ? (int) jsObj.getProperty(runtime, "format").asNumber() : 0;
26
+ int orientation = jsObj.hasProperty(runtime, "orientation") ? (int) jsObj.getProperty(runtime, "orientation").asNumber() : 0;
27
+ uint8_t *buffer = nullptr;
28
+ int bufferSize = 0;
29
+ if (jsObj.hasProperty(runtime, "buffer")) {
30
+ ArrayBuffer array_buffer = jsObj.getProperty(runtime, "buffer").asObject(runtime).getArrayBuffer(runtime);
31
+ buffer = array_buffer.data(runtime);
32
+ bufferSize = (int) array_buffer.length(runtime);
33
+ }
34
+ return ImageDataHostObject(width, height, stride, format, orientation, buffer, bufferSize);
35
+ }
36
+
37
+ Value ImageDataHostObject::get(Runtime &runtime, const PropNameID &propName) {
38
+ auto name = propName.utf8(runtime);
39
+ GET_VALUE(width)
40
+ GET_VALUE(height)
41
+ GET_VALUE(stride)
42
+ GET_VALUE(format)
43
+ GET_VALUE(orientation)
44
+ GET_VALUE(bufferSize)
45
+ //todo
46
+ if (name == "buffer") {
47
+ auto mutableBuffer = std::make_shared<MutableRawBuffer>(buffer, bufferSize, false);
48
+ return ArrayBuffer(runtime, mutableBuffer);
49
+ }
50
+
51
+ if (name == "release") {
52
+ auto release = JSI_FUNC {
53
+ if(buffer != nullptr) {
54
+ delete[] buffer;
55
+ buffer = nullptr;
56
+ bufferSize = 0;
57
+ }
58
+ return {};
59
+ };
60
+ return Function::createFromHostFunction(runtime, PropNameID::forUtf8(runtime, "release"), 0, release);
61
+ }
62
+ return {};
63
+ }
64
+
65
+ void ImageDataHostObject::set(Runtime &runtime, const PropNameID &propName, const Value &value) {
66
+ auto name = propName.utf8(runtime);
67
+ SET_INT_VALUE(width)
68
+ SET_INT_VALUE(height)
69
+ SET_INT_VALUE(stride)
70
+ SET_INT_VALUE(format)
71
+ SET_INT_VALUE(orientation)
72
+ //todo
73
+ if (name == "buffer") {
74
+ auto arrayBuffer = value.asObject(runtime).getArrayBuffer(runtime);
75
+ this->buffer = arrayBuffer.data(runtime);
76
+ this->bufferSize = (int) arrayBuffer.length(runtime);
77
+ }
78
+ }
79
+
80
+ std::vector<PropNameID> ImageDataHostObject::getPropertyNames(Runtime &rt) {
81
+ std::vector<PropNameID> result;
82
+ result.push_back(PropNameID::forUtf8(rt, std::string("width")));
83
+ result.push_back(PropNameID::forUtf8(rt, std::string("height")));
84
+ result.push_back(PropNameID::forUtf8(rt, std::string("stride")));
85
+ result.push_back(PropNameID::forUtf8(rt, std::string("format")));
86
+ result.push_back(PropNameID::forUtf8(rt, std::string("orientation")));
87
+ result.push_back(PropNameID::forUtf8(rt, std::string("buffer")));
88
+ result.push_back(PropNameID::forUtf8(rt, std::string("release")));
89
+ return result;
90
+ }
91
+
92
+ void ImageDataHostObject::logString(const char *preStr) const {
93
+ LOGI("%s wid:%d, hgt:%d, stride:%d, format:%d, orientation:%d, bufferSize:%d, buffer:%p, this:%p",
94
+ preStr, width, height, stride, format, orientation, bufferSize, buffer, this);
95
95
  }
@@ -1,34 +1,34 @@
1
- //
2
- // Created by Allen on 24/08/26.
3
- //
4
-
5
- #ifndef REACT_NATIVE_DCV_ANDROID_SRC_MAIN_CPP_CORE_IMAGEDATAHOSTOBJECT_H_
6
- #define REACT_NATIVE_DCV_ANDROID_SRC_MAIN_CPP_CORE_IMAGEDATAHOSTOBJECT_H_
7
-
8
- #include "jsi/jsi.h"
9
-
10
- using namespace facebook::jsi;
11
-
12
- class ImageDataHostObject : public HostObject {
13
- public:
14
- int width = 0;
15
- int height = 0;
16
- int stride = 0;
17
- int format = 0;
18
- int orientation = 0;
19
-
20
- uint8_t *buffer = nullptr;
21
- int bufferSize = 0;
22
-
23
- explicit ImageDataHostObject() = default;
24
- explicit ImageDataHostObject(int width, int height, int stride, int format, int orientation, uint8_t *buffer, int bufferSize);
25
-
26
- Value get(Runtime &, const PropNameID &name) override;
27
- void set(Runtime &, const PropNameID &name, const Value &value) override;
28
- std::vector<PropNameID> getPropertyNames(Runtime &rt) override;
29
-
30
- static ImageDataHostObject getHOFromObject(Runtime &runtime, Object jsObj);
31
- void logString(const char *preStr = "ImageDataHostObject") const;
32
- };
33
-
34
- #endif //REACT_NATIVE_DCV_ANDROID_SRC_MAIN_CPP_CORE_IMAGEDATAHOSTOBJECT_H_
1
+ //
2
+ // Created by Allen on 24/08/26.
3
+ //
4
+
5
+ #ifndef REACT_NATIVE_DCV_ANDROID_SRC_MAIN_CPP_CORE_IMAGEDATAHOSTOBJECT_H_
6
+ #define REACT_NATIVE_DCV_ANDROID_SRC_MAIN_CPP_CORE_IMAGEDATAHOSTOBJECT_H_
7
+
8
+ #include "jsi/jsi.h"
9
+
10
+ using namespace facebook::jsi;
11
+
12
+ class ImageDataHostObject : public HostObject {
13
+ public:
14
+ int width = 0;
15
+ int height = 0;
16
+ int stride = 0;
17
+ int format = 0;
18
+ int orientation = 0;
19
+
20
+ uint8_t *buffer = nullptr;
21
+ int bufferSize = 0;
22
+
23
+ explicit ImageDataHostObject() = default;
24
+ explicit ImageDataHostObject(int width, int height, int stride, int format, int orientation, uint8_t *buffer, int bufferSize);
25
+
26
+ Value get(Runtime &, const PropNameID &name) override;
27
+ void set(Runtime &, const PropNameID &name, const Value &value) override;
28
+ std::vector<PropNameID> getPropertyNames(Runtime &rt) override;
29
+
30
+ static ImageDataHostObject getHOFromObject(Runtime &runtime, Object jsObj);
31
+ void logString(const char *preStr = "ImageDataHostObject") const;
32
+ };
33
+
34
+ #endif //REACT_NATIVE_DCV_ANDROID_SRC_MAIN_CPP_CORE_IMAGEDATAHOSTOBJECT_H_