node-native-win-utils 1.1.1 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. package/README.md +144 -27
  2. package/binding.gyp +18 -5
  3. package/dist/index.d.ts +146 -4
  4. package/dist/index.js +107 -3
  5. package/include/opencv2/core/affine.hpp +678 -0
  6. package/include/opencv2/core/async.hpp +105 -0
  7. package/include/opencv2/core/base.hpp +664 -0
  8. package/include/opencv2/core/bindings_utils.hpp +325 -0
  9. package/include/opencv2/core/bufferpool.hpp +40 -0
  10. package/include/opencv2/core/check.hpp +170 -0
  11. package/include/opencv2/core/core.hpp +48 -0
  12. package/include/opencv2/core/core_c.h +3128 -0
  13. package/include/opencv2/core/cuda/block.hpp +211 -0
  14. package/include/opencv2/core/cuda/border_interpolate.hpp +722 -0
  15. package/include/opencv2/core/cuda/color.hpp +309 -0
  16. package/include/opencv2/core/cuda/common.hpp +131 -0
  17. package/include/opencv2/core/cuda/datamov_utils.hpp +113 -0
  18. package/include/opencv2/core/cuda/detail/color_detail.hpp +2018 -0
  19. package/include/opencv2/core/cuda/detail/reduce.hpp +365 -0
  20. package/include/opencv2/core/cuda/detail/reduce_key_val.hpp +502 -0
  21. package/include/opencv2/core/cuda/detail/transform_detail.hpp +392 -0
  22. package/include/opencv2/core/cuda/detail/type_traits_detail.hpp +191 -0
  23. package/include/opencv2/core/cuda/detail/vec_distance_detail.hpp +121 -0
  24. package/include/opencv2/core/cuda/dynamic_smem.hpp +88 -0
  25. package/include/opencv2/core/cuda/emulation.hpp +269 -0
  26. package/include/opencv2/core/cuda/filters.hpp +293 -0
  27. package/include/opencv2/core/cuda/funcattrib.hpp +79 -0
  28. package/include/opencv2/core/cuda/functional.hpp +805 -0
  29. package/include/opencv2/core/cuda/limits.hpp +128 -0
  30. package/include/opencv2/core/cuda/reduce.hpp +209 -0
  31. package/include/opencv2/core/cuda/saturate_cast.hpp +292 -0
  32. package/include/opencv2/core/cuda/scan.hpp +258 -0
  33. package/include/opencv2/core/cuda/simd_functions.hpp +869 -0
  34. package/include/opencv2/core/cuda/transform.hpp +75 -0
  35. package/include/opencv2/core/cuda/type_traits.hpp +90 -0
  36. package/include/opencv2/core/cuda/utility.hpp +230 -0
  37. package/include/opencv2/core/cuda/vec_distance.hpp +232 -0
  38. package/include/opencv2/core/cuda/vec_math.hpp +923 -0
  39. package/include/opencv2/core/cuda/vec_traits.hpp +288 -0
  40. package/include/opencv2/core/cuda/warp.hpp +139 -0
  41. package/include/opencv2/core/cuda/warp_reduce.hpp +76 -0
  42. package/include/opencv2/core/cuda/warp_shuffle.hpp +162 -0
  43. package/include/opencv2/core/cuda.hpp +1279 -0
  44. package/include/opencv2/core/cuda.inl.hpp +763 -0
  45. package/include/opencv2/core/cuda_stream_accessor.hpp +86 -0
  46. package/include/opencv2/core/cuda_types.hpp +144 -0
  47. package/include/opencv2/core/cv_cpu_dispatch.h +381 -0
  48. package/include/opencv2/core/cv_cpu_helper.h +550 -0
  49. package/include/opencv2/core/cvdef.h +973 -0
  50. package/include/opencv2/core/cvstd.hpp +190 -0
  51. package/include/opencv2/core/cvstd.inl.hpp +197 -0
  52. package/include/opencv2/core/cvstd_wrapper.hpp +154 -0
  53. package/include/opencv2/core/detail/async_promise.hpp +71 -0
  54. package/include/opencv2/core/detail/dispatch_helper.impl.hpp +49 -0
  55. package/include/opencv2/core/detail/exception_ptr.hpp +27 -0
  56. package/include/opencv2/core/directx.hpp +184 -0
  57. package/include/opencv2/core/dualquaternion.hpp +979 -0
  58. package/include/opencv2/core/dualquaternion.inl.hpp +487 -0
  59. package/include/opencv2/core/eigen.hpp +402 -0
  60. package/include/opencv2/core/fast_math.hpp +433 -0
  61. package/include/opencv2/core/hal/hal.hpp +256 -0
  62. package/include/opencv2/core/hal/interface.h +190 -0
  63. package/include/opencv2/core/hal/intrin.hpp +939 -0
  64. package/include/opencv2/core/hal/intrin_avx.hpp +3177 -0
  65. package/include/opencv2/core/hal/intrin_avx512.hpp +3090 -0
  66. package/include/opencv2/core/hal/intrin_cpp.hpp +3321 -0
  67. package/include/opencv2/core/hal/intrin_forward.hpp +191 -0
  68. package/include/opencv2/core/hal/intrin_lasx.hpp +3236 -0
  69. package/include/opencv2/core/hal/intrin_msa.hpp +1887 -0
  70. package/include/opencv2/core/hal/intrin_neon.hpp +2610 -0
  71. package/include/opencv2/core/hal/intrin_rvv.hpp +3320 -0
  72. package/include/opencv2/core/hal/intrin_rvv071.hpp +2545 -0
  73. package/include/opencv2/core/hal/intrin_rvv_scalable.hpp +2080 -0
  74. package/include/opencv2/core/hal/intrin_sse.hpp +3467 -0
  75. package/include/opencv2/core/hal/intrin_sse_em.hpp +180 -0
  76. package/include/opencv2/core/hal/intrin_vsx.hpp +1608 -0
  77. package/include/opencv2/core/hal/intrin_wasm.hpp +2782 -0
  78. package/include/opencv2/core/hal/msa_macros.h +1558 -0
  79. package/include/opencv2/core/hal/simd_utils.impl.hpp +186 -0
  80. package/include/opencv2/core/llapi/llapi.h +102 -0
  81. package/include/opencv2/core/mat.hpp +3775 -0
  82. package/include/opencv2/core/mat.inl.hpp +3422 -0
  83. package/include/opencv2/core/matx.hpp +1536 -0
  84. package/include/opencv2/core/neon_utils.hpp +128 -0
  85. package/include/opencv2/core/ocl.hpp +917 -0
  86. package/include/opencv2/core/ocl_genbase.hpp +69 -0
  87. package/include/opencv2/core/opencl/ocl_defs.hpp +82 -0
  88. package/include/opencv2/core/opencl/opencl_info.hpp +212 -0
  89. package/include/opencv2/core/opencl/opencl_svm.hpp +81 -0
  90. package/include/opencv2/core/opencl/runtime/autogenerated/opencl_clblas.hpp +602 -0
  91. package/include/opencv2/core/opencl/runtime/autogenerated/opencl_clfft.hpp +146 -0
  92. package/include/opencv2/core/opencl/runtime/autogenerated/opencl_core.hpp +371 -0
  93. package/include/opencv2/core/opencl/runtime/autogenerated/opencl_core_wrappers.hpp +272 -0
  94. package/include/opencv2/core/opencl/runtime/autogenerated/opencl_gl.hpp +62 -0
  95. package/include/opencv2/core/opencl/runtime/autogenerated/opencl_gl_wrappers.hpp +42 -0
  96. package/include/opencv2/core/opencl/runtime/opencl_clblas.hpp +53 -0
  97. package/include/opencv2/core/opencl/runtime/opencl_clfft.hpp +53 -0
  98. package/include/opencv2/core/opencl/runtime/opencl_core.hpp +84 -0
  99. package/include/opencv2/core/opencl/runtime/opencl_core_wrappers.hpp +47 -0
  100. package/include/opencv2/core/opencl/runtime/opencl_gl.hpp +53 -0
  101. package/include/opencv2/core/opencl/runtime/opencl_gl_wrappers.hpp +47 -0
  102. package/include/opencv2/core/opencl/runtime/opencl_svm_20.hpp +48 -0
  103. package/include/opencv2/core/opencl/runtime/opencl_svm_definitions.hpp +42 -0
  104. package/include/opencv2/core/opencl/runtime/opencl_svm_hsa_extension.hpp +166 -0
  105. package/include/opencv2/core/opengl.hpp +733 -0
  106. package/include/opencv2/core/openvx/ovx_defs.hpp +48 -0
  107. package/include/opencv2/core/operations.hpp +610 -0
  108. package/include/opencv2/core/optim.hpp +302 -0
  109. package/include/opencv2/core/ovx.hpp +28 -0
  110. package/include/opencv2/core/parallel/backend/parallel_for.openmp.hpp +72 -0
  111. package/include/opencv2/core/parallel/backend/parallel_for.tbb.hpp +153 -0
  112. package/include/opencv2/core/parallel/parallel_backend.hpp +90 -0
  113. package/include/opencv2/core/persistence.hpp +1350 -0
  114. package/include/opencv2/core/private/cv_cpu_include_simd_declarations.hpp +30 -0
  115. package/include/opencv2/core/private.cuda.hpp +169 -0
  116. package/include/opencv2/core/private.hpp +896 -0
  117. package/include/opencv2/core/quaternion.hpp +1696 -0
  118. package/include/opencv2/core/quaternion.inl.hpp +1063 -0
  119. package/include/opencv2/core/saturate.hpp +180 -0
  120. package/include/opencv2/core/simd_intrinsics.hpp +87 -0
  121. package/include/opencv2/core/softfloat.hpp +514 -0
  122. package/include/opencv2/core/sse_utils.hpp +652 -0
  123. package/include/opencv2/core/traits.hpp +417 -0
  124. package/include/opencv2/core/types.hpp +2457 -0
  125. package/include/opencv2/core/types_c.h +2126 -0
  126. package/include/opencv2/core/utility.hpp +1229 -0
  127. package/include/opencv2/core/utils/allocator_stats.hpp +29 -0
  128. package/include/opencv2/core/utils/allocator_stats.impl.hpp +158 -0
  129. package/include/opencv2/core/utils/buffer_area.private.hpp +136 -0
  130. package/include/opencv2/core/utils/configuration.private.hpp +22 -0
  131. package/include/opencv2/core/utils/filesystem.hpp +82 -0
  132. package/include/opencv2/core/utils/filesystem.private.hpp +66 -0
  133. package/include/opencv2/core/utils/fp_control.private.hpp +29 -0
  134. package/include/opencv2/core/utils/fp_control_utils.hpp +69 -0
  135. package/include/opencv2/core/utils/instrumentation.hpp +125 -0
  136. package/include/opencv2/core/utils/lock.private.hpp +119 -0
  137. package/include/opencv2/core/utils/logger.defines.hpp +42 -0
  138. package/include/opencv2/core/utils/logger.hpp +218 -0
  139. package/include/opencv2/core/utils/logtag.hpp +28 -0
  140. package/include/opencv2/core/utils/plugin_loader.private.hpp +165 -0
  141. package/include/opencv2/core/utils/tls.hpp +235 -0
  142. package/include/opencv2/core/utils/trace.hpp +252 -0
  143. package/include/opencv2/core/utils/trace.private.hpp +421 -0
  144. package/include/opencv2/core/va_intel.hpp +75 -0
  145. package/include/opencv2/core/version.hpp +26 -0
  146. package/include/opencv2/core/vsx_utils.hpp +1047 -0
  147. package/include/opencv2/core.hpp +3365 -0
  148. package/include/opencv2/imgcodecs/imgcodecs.hpp +48 -0
  149. package/include/opencv2/imgcodecs/imgcodecs_c.h +1 -0
  150. package/include/opencv2/imgcodecs/ios.h +59 -0
  151. package/include/opencv2/imgcodecs/legacy/constants_c.h +54 -0
  152. package/include/opencv2/imgcodecs/macosx.h +20 -0
  153. package/include/opencv2/imgcodecs.hpp +407 -0
  154. package/include/opencv2/imgproc/bindings.hpp +34 -0
  155. package/include/opencv2/imgproc/detail/gcgraph.hpp +395 -0
  156. package/include/opencv2/imgproc/hal/hal.hpp +246 -0
  157. package/include/opencv2/imgproc/hal/interface.h +46 -0
  158. package/include/opencv2/imgproc/imgproc.hpp +48 -0
  159. package/include/opencv2/imgproc/imgproc_c.h +1177 -0
  160. package/include/opencv2/imgproc/segmentation.hpp +141 -0
  161. package/include/opencv2/imgproc/types_c.h +659 -0
  162. package/include/opencv2/imgproc.hpp +5035 -0
  163. package/include/opencv2/opencv_modules.hpp +17 -0
  164. package/libs/libjpeg-turbo.lib +0 -0
  165. package/libs/libpng.lib +0 -0
  166. package/libs/opencv_core470.lib +0 -0
  167. package/libs/opencv_imgcodecs470.lib +0 -0
  168. package/libs/opencv_imgproc470.lib +0 -0
  169. package/libs/zlib.lib +0 -0
  170. package/package.json +8 -2
  171. package/prebuilds/win32-x64/node.napi.node +0 -0
  172. package/src/cpp/capturewindow.cpp +37 -47
  173. package/src/cpp/main.cpp +10 -2
  174. package/src/cpp/opencv.cpp +425 -0
@@ -0,0 +1,191 @@
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 directory
3
+ // of this distribution and at http://opencv.org/license.html
4
+
5
+ #ifndef CV__SIMD_FORWARD
6
+ #error "Need to pre-define forward width"
7
+ #endif
8
+
9
+ namespace cv
10
+ {
11
+
12
+ //! @cond IGNORED
13
+
14
+ CV_CPU_OPTIMIZATION_HAL_NAMESPACE_BEGIN
15
+
16
+ /** Types **/
17
+ #if CV__SIMD_FORWARD == 1024
18
+ // [todo] 1024
19
+ #error "1024-long ops not implemented yet"
20
+ #elif CV__SIMD_FORWARD == 512
21
+ // 512
22
+ #define __CV_VX(fun) v512_##fun
23
+ #define __CV_V_UINT8 v_uint8x64
24
+ #define __CV_V_INT8 v_int8x64
25
+ #define __CV_V_UINT16 v_uint16x32
26
+ #define __CV_V_INT16 v_int16x32
27
+ #define __CV_V_UINT32 v_uint32x16
28
+ #define __CV_V_INT32 v_int32x16
29
+ #define __CV_V_UINT64 v_uint64x8
30
+ #define __CV_V_INT64 v_int64x8
31
+ #define __CV_V_FLOAT32 v_float32x16
32
+ #define __CV_V_FLOAT64 v_float64x8
33
+ struct v_uint8x64;
34
+ struct v_int8x64;
35
+ struct v_uint16x32;
36
+ struct v_int16x32;
37
+ struct v_uint32x16;
38
+ struct v_int32x16;
39
+ struct v_uint64x8;
40
+ struct v_int64x8;
41
+ struct v_float32x16;
42
+ struct v_float64x8;
43
+ #elif CV__SIMD_FORWARD == 256
44
+ // 256
45
+ #define __CV_VX(fun) v256_##fun
46
+ #define __CV_V_UINT8 v_uint8x32
47
+ #define __CV_V_INT8 v_int8x32
48
+ #define __CV_V_UINT16 v_uint16x16
49
+ #define __CV_V_INT16 v_int16x16
50
+ #define __CV_V_UINT32 v_uint32x8
51
+ #define __CV_V_INT32 v_int32x8
52
+ #define __CV_V_UINT64 v_uint64x4
53
+ #define __CV_V_INT64 v_int64x4
54
+ #define __CV_V_FLOAT32 v_float32x8
55
+ #define __CV_V_FLOAT64 v_float64x4
56
+ struct v_uint8x32;
57
+ struct v_int8x32;
58
+ struct v_uint16x16;
59
+ struct v_int16x16;
60
+ struct v_uint32x8;
61
+ struct v_int32x8;
62
+ struct v_uint64x4;
63
+ struct v_int64x4;
64
+ struct v_float32x8;
65
+ struct v_float64x4;
66
+ #else
67
+ // 128
68
+ #define __CV_VX(fun) v_##fun
69
+ #define __CV_V_UINT8 v_uint8x16
70
+ #define __CV_V_INT8 v_int8x16
71
+ #define __CV_V_UINT16 v_uint16x8
72
+ #define __CV_V_INT16 v_int16x8
73
+ #define __CV_V_UINT32 v_uint32x4
74
+ #define __CV_V_INT32 v_int32x4
75
+ #define __CV_V_UINT64 v_uint64x2
76
+ #define __CV_V_INT64 v_int64x2
77
+ #define __CV_V_FLOAT32 v_float32x4
78
+ #define __CV_V_FLOAT64 v_float64x2
79
+ struct v_uint8x16;
80
+ struct v_int8x16;
81
+ struct v_uint16x8;
82
+ struct v_int16x8;
83
+ struct v_uint32x4;
84
+ struct v_int32x4;
85
+ struct v_uint64x2;
86
+ struct v_int64x2;
87
+ struct v_float32x4;
88
+ struct v_float64x2;
89
+ #endif
90
+
91
+ /** Value reordering **/
92
+
93
+ // Expansion
94
+ void v_expand(const __CV_V_UINT8&, __CV_V_UINT16&, __CV_V_UINT16&);
95
+ void v_expand(const __CV_V_INT8&, __CV_V_INT16&, __CV_V_INT16&);
96
+ void v_expand(const __CV_V_UINT16&, __CV_V_UINT32&, __CV_V_UINT32&);
97
+ void v_expand(const __CV_V_INT16&, __CV_V_INT32&, __CV_V_INT32&);
98
+ void v_expand(const __CV_V_UINT32&, __CV_V_UINT64&, __CV_V_UINT64&);
99
+ void v_expand(const __CV_V_INT32&, __CV_V_INT64&, __CV_V_INT64&);
100
+ // Low Expansion
101
+ __CV_V_UINT16 v_expand_low(const __CV_V_UINT8&);
102
+ __CV_V_INT16 v_expand_low(const __CV_V_INT8&);
103
+ __CV_V_UINT32 v_expand_low(const __CV_V_UINT16&);
104
+ __CV_V_INT32 v_expand_low(const __CV_V_INT16&);
105
+ __CV_V_UINT64 v_expand_low(const __CV_V_UINT32&);
106
+ __CV_V_INT64 v_expand_low(const __CV_V_INT32&);
107
+ // High Expansion
108
+ __CV_V_UINT16 v_expand_high(const __CV_V_UINT8&);
109
+ __CV_V_INT16 v_expand_high(const __CV_V_INT8&);
110
+ __CV_V_UINT32 v_expand_high(const __CV_V_UINT16&);
111
+ __CV_V_INT32 v_expand_high(const __CV_V_INT16&);
112
+ __CV_V_UINT64 v_expand_high(const __CV_V_UINT32&);
113
+ __CV_V_INT64 v_expand_high(const __CV_V_INT32&);
114
+ // Load & Low Expansion
115
+ __CV_V_UINT16 __CV_VX(load_expand)(const uchar*);
116
+ __CV_V_INT16 __CV_VX(load_expand)(const schar*);
117
+ __CV_V_UINT32 __CV_VX(load_expand)(const ushort*);
118
+ __CV_V_INT32 __CV_VX(load_expand)(const short*);
119
+ __CV_V_UINT64 __CV_VX(load_expand)(const uint*);
120
+ __CV_V_INT64 __CV_VX(load_expand)(const int*);
121
+ // Load lower 8-bit and expand into 32-bit
122
+ __CV_V_UINT32 __CV_VX(load_expand_q)(const uchar*);
123
+ __CV_V_INT32 __CV_VX(load_expand_q)(const schar*);
124
+
125
+ // Saturating Pack
126
+ __CV_V_UINT8 v_pack(const __CV_V_UINT16&, const __CV_V_UINT16&);
127
+ __CV_V_INT8 v_pack(const __CV_V_INT16&, const __CV_V_INT16&);
128
+ __CV_V_UINT16 v_pack(const __CV_V_UINT32&, const __CV_V_UINT32&);
129
+ __CV_V_INT16 v_pack(const __CV_V_INT32&, const __CV_V_INT32&);
130
+ // Non-saturating Pack
131
+ __CV_V_UINT32 v_pack(const __CV_V_UINT64&, const __CV_V_UINT64&);
132
+ __CV_V_INT32 v_pack(const __CV_V_INT64&, const __CV_V_INT64&);
133
+ // Pack signed integers with unsigned saturation
134
+ __CV_V_UINT8 v_pack_u(const __CV_V_INT16&, const __CV_V_INT16&);
135
+ __CV_V_UINT16 v_pack_u(const __CV_V_INT32&, const __CV_V_INT32&);
136
+
137
+ /** Arithmetic, bitwise and comparison operations **/
138
+
139
+ // Non-saturating multiply
140
+ #if CV_VSX
141
+ template<typename Tvec>
142
+ Tvec v_mul_wrap(const Tvec& a, const Tvec& b);
143
+ #else
144
+ __CV_V_UINT8 v_mul_wrap(const __CV_V_UINT8&, const __CV_V_UINT8&);
145
+ __CV_V_INT8 v_mul_wrap(const __CV_V_INT8&, const __CV_V_INT8&);
146
+ __CV_V_UINT16 v_mul_wrap(const __CV_V_UINT16&, const __CV_V_UINT16&);
147
+ __CV_V_INT16 v_mul_wrap(const __CV_V_INT16&, const __CV_V_INT16&);
148
+ #endif
149
+
150
+ // Multiply and expand
151
+ #if CV_VSX
152
+ template<typename Tvec, typename Twvec>
153
+ void v_mul_expand(const Tvec& a, const Tvec& b, Twvec& c, Twvec& d);
154
+ #else
155
+ void v_mul_expand(const __CV_V_UINT8&, const __CV_V_UINT8&, __CV_V_UINT16&, __CV_V_UINT16&);
156
+ void v_mul_expand(const __CV_V_INT8&, const __CV_V_INT8&, __CV_V_INT16&, __CV_V_INT16&);
157
+ void v_mul_expand(const __CV_V_UINT16&, const __CV_V_UINT16&, __CV_V_UINT32&, __CV_V_UINT32&);
158
+ void v_mul_expand(const __CV_V_INT16&, const __CV_V_INT16&, __CV_V_INT32&, __CV_V_INT32&);
159
+ void v_mul_expand(const __CV_V_UINT32&, const __CV_V_UINT32&, __CV_V_UINT64&, __CV_V_UINT64&);
160
+ void v_mul_expand(const __CV_V_INT32&, const __CV_V_INT32&, __CV_V_INT64&, __CV_V_INT64&);
161
+ #endif
162
+
163
+ // Conversions
164
+ __CV_V_FLOAT32 v_cvt_f32(const __CV_V_INT32& a);
165
+ __CV_V_FLOAT32 v_cvt_f32(const __CV_V_FLOAT64& a);
166
+ __CV_V_FLOAT32 v_cvt_f32(const __CV_V_FLOAT64& a, const __CV_V_FLOAT64& b);
167
+ __CV_V_FLOAT64 v_cvt_f64(const __CV_V_INT32& a);
168
+ __CV_V_FLOAT64 v_cvt_f64_high(const __CV_V_INT32& a);
169
+ __CV_V_FLOAT64 v_cvt_f64(const __CV_V_FLOAT32& a);
170
+ __CV_V_FLOAT64 v_cvt_f64_high(const __CV_V_FLOAT32& a);
171
+ __CV_V_FLOAT64 v_cvt_f64(const __CV_V_INT64& a);
172
+
173
+ /** Cleanup **/
174
+ #undef CV__SIMD_FORWARD
175
+ #undef __CV_VX
176
+ #undef __CV_V_UINT8
177
+ #undef __CV_V_INT8
178
+ #undef __CV_V_UINT16
179
+ #undef __CV_V_INT16
180
+ #undef __CV_V_UINT32
181
+ #undef __CV_V_INT32
182
+ #undef __CV_V_UINT64
183
+ #undef __CV_V_INT64
184
+ #undef __CV_V_FLOAT32
185
+ #undef __CV_V_FLOAT64
186
+
187
+ CV_CPU_OPTIMIZATION_HAL_NAMESPACE_END
188
+
189
+ //! @endcond
190
+
191
+ } // cv::