node-native-win-utils 1.1.1 → 1.3.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 (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 +36 -46
  173. package/src/cpp/main.cpp +10 -2
  174. package/src/cpp/opencv.cpp +425 -0
@@ -0,0 +1,30 @@
1
+ // Helper file to include dispatched functions declaration:
2
+ //
3
+ // Usage:
4
+ // #define CV_CPU_SIMD_FILENAME "<filename>.simd.hpp"
5
+ // #define CV_CPU_DISPATCH_MODE AVX2
6
+ // #include "opencv2/core/private/cv_cpu_include_simd_declarations.hpp"
7
+ // #define CV_CPU_DISPATCH_MODE SSE2
8
+ // #include "opencv2/core/private/cv_cpu_include_simd_declarations.hpp"
9
+
10
+ #ifndef CV_DISABLE_OPTIMIZATION
11
+ #ifdef _MSC_VER
12
+ #pragma warning(disable: 4702) // unreachable code
13
+ #endif
14
+ #endif
15
+
16
+ #ifndef CV_CPU_OPTIMIZATION_DECLARATIONS_ONLY
17
+ #define CV_CPU_OPTIMIZATION_DECLARATIONS_ONLY
18
+ #endif
19
+
20
+ #undef CV_CPU_OPTIMIZATION_NAMESPACE_BEGIN
21
+ #undef CV_CPU_OPTIMIZATION_NAMESPACE_END
22
+
23
+ #define CV_CPU_OPTIMIZATION_NAMESPACE_BEGIN namespace __CV_CAT(opt_, CV_CPU_DISPATCH_MODE) {
24
+ #define CV_CPU_OPTIMIZATION_NAMESPACE_END }
25
+
26
+ #include CV_CPU_SIMD_FILENAME
27
+
28
+ #undef CV_CPU_OPTIMIZATION_NAMESPACE_BEGIN
29
+ #undef CV_CPU_OPTIMIZATION_NAMESPACE_END
30
+ #undef CV_CPU_DISPATCH_MODE
@@ -0,0 +1,169 @@
1
+ /*M///////////////////////////////////////////////////////////////////////////////////////
2
+ //
3
+ // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
4
+ //
5
+ // By downloading, copying, installing or using the software you agree to this license.
6
+ // If you do not agree to this license, do not download, install,
7
+ // copy or use the software.
8
+ //
9
+ //
10
+ // License Agreement
11
+ // For Open Source Computer Vision Library
12
+ //
13
+ // Copyright (C) 2000-2008, Intel Corporation, all rights reserved.
14
+ // Copyright (C) 2009, Willow Garage Inc., all rights reserved.
15
+ // Copyright (C) 2013, OpenCV Foundation, all rights reserved.
16
+ // Third party copyrights are property of their respective owners.
17
+ //
18
+ // Redistribution and use in source and binary forms, with or without modification,
19
+ // are permitted provided that the following conditions are met:
20
+ //
21
+ // * Redistribution's of source code must retain the above copyright notice,
22
+ // this list of conditions and the following disclaimer.
23
+ //
24
+ // * Redistribution's in binary form must reproduce the above copyright notice,
25
+ // this list of conditions and the following disclaimer in the documentation
26
+ // and/or other materials provided with the distribution.
27
+ //
28
+ // * The name of the copyright holders may not be used to endorse or promote products
29
+ // derived from this software without specific prior written permission.
30
+ //
31
+ // This software is provided by the copyright holders and contributors "as is" and
32
+ // any express or implied warranties, including, but not limited to, the implied
33
+ // warranties of merchantability and fitness for a particular purpose are disclaimed.
34
+ // In no event shall the Intel Corporation or contributors be liable for any direct,
35
+ // indirect, incidental, special, exemplary, or consequential damages
36
+ // (including, but not limited to, procurement of substitute goods or services;
37
+ // loss of use, data, or profits; or business interruption) however caused
38
+ // and on any theory of liability, whether in contract, strict liability,
39
+ // or tort (including negligence or otherwise) arising in any way out of
40
+ // the use of this software, even if advised of the possibility of such damage.
41
+ //
42
+ //M*/
43
+
44
+ #ifndef OPENCV_CORE_PRIVATE_CUDA_HPP
45
+ #define OPENCV_CORE_PRIVATE_CUDA_HPP
46
+
47
+ #ifndef __OPENCV_BUILD
48
+ # error this is a private header which should not be used from outside of the OpenCV library
49
+ #endif
50
+
51
+ #include "cvconfig.h"
52
+
53
+ #include "opencv2/core/cvdef.h"
54
+ #include "opencv2/core/base.hpp"
55
+
56
+ #include "opencv2/core/cuda.hpp"
57
+
58
+ #ifdef HAVE_CUDA
59
+ # include <cuda.h>
60
+ # include <cuda_runtime.h>
61
+ # if defined(__CUDACC_VER_MAJOR__) && (8 <= __CUDACC_VER_MAJOR__)
62
+ # if defined (__GNUC__) && !defined(__CUDACC__)
63
+ # pragma GCC diagnostic push
64
+ # pragma GCC diagnostic ignored "-Wstrict-aliasing"
65
+ # include <cuda_fp16.h>
66
+ # pragma GCC diagnostic pop
67
+ # else
68
+ # include <cuda_fp16.h>
69
+ # endif
70
+ # endif // defined(__CUDACC_VER_MAJOR__) && (8 <= __CUDACC_VER_MAJOR__)
71
+ # include <npp.h>
72
+ # include "opencv2/core/cuda_stream_accessor.hpp"
73
+ # include "opencv2/core/cuda/common.hpp"
74
+
75
+ # ifndef NPP_VERSION
76
+ # define NPP_VERSION (NPP_VERSION_MAJOR * 1000 + NPP_VERSION_MINOR * 100 + NPP_VERSION_BUILD)
77
+ # endif
78
+
79
+ # define CUDART_MINIMUM_REQUIRED_VERSION 6050
80
+
81
+ # if (CUDART_VERSION < CUDART_MINIMUM_REQUIRED_VERSION)
82
+ # error "Insufficient Cuda Runtime library version, please update it."
83
+ # endif
84
+
85
+ #endif
86
+
87
+ //! @cond IGNORED
88
+
89
+ namespace cv { namespace cuda {
90
+ CV_EXPORTS cv::String getNppErrorMessage(int code);
91
+ CV_EXPORTS cv::String getCudaDriverApiErrorMessage(int code);
92
+
93
+ CV_EXPORTS GpuMat getInputMat(InputArray _src, Stream& stream);
94
+
95
+ CV_EXPORTS GpuMat getOutputMat(OutputArray _dst, int rows, int cols, int type, Stream& stream);
96
+ static inline GpuMat getOutputMat(OutputArray _dst, Size size, int type, Stream& stream)
97
+ {
98
+ return getOutputMat(_dst, size.height, size.width, type, stream);
99
+ }
100
+
101
+ CV_EXPORTS void syncOutput(const GpuMat& dst, OutputArray _dst, Stream& stream);
102
+ }}
103
+
104
+ #ifndef HAVE_CUDA
105
+
106
+ static inline CV_NORETURN void throw_no_cuda() { CV_Error(cv::Error::GpuNotSupported, "The library is compiled without CUDA support"); }
107
+
108
+ #else // HAVE_CUDA
109
+
110
+ #define nppSafeSetStream(oldStream, newStream) { if(oldStream != newStream) { cudaStreamSynchronize(oldStream); nppSetStream(newStream); } }
111
+
112
+ static inline CV_NORETURN void throw_no_cuda() { CV_Error(cv::Error::StsNotImplemented, "The called functionality is disabled for current build or platform"); }
113
+
114
+ namespace cv { namespace cuda
115
+ {
116
+ static inline void checkNppError(int code, const char* file, const int line, const char* func)
117
+ {
118
+ if (code < 0)
119
+ cv::error(cv::Error::GpuApiCallError, getNppErrorMessage(code), func, file, line);
120
+ }
121
+
122
+ static inline void checkCudaDriverApiError(int code, const char* file, const int line, const char* func)
123
+ {
124
+ if (code != CUDA_SUCCESS)
125
+ cv::error(cv::Error::GpuApiCallError, getCudaDriverApiErrorMessage(code), func, file, line);
126
+ }
127
+
128
+ template<int n> struct NPPTypeTraits;
129
+ template<> struct NPPTypeTraits<CV_8U> { typedef Npp8u npp_type; };
130
+ template<> struct NPPTypeTraits<CV_8S> { typedef Npp8s npp_type; };
131
+ template<> struct NPPTypeTraits<CV_16U> { typedef Npp16u npp_type; };
132
+ template<> struct NPPTypeTraits<CV_16S> { typedef Npp16s npp_type; };
133
+ template<> struct NPPTypeTraits<CV_32S> { typedef Npp32s npp_type; };
134
+ template<> struct NPPTypeTraits<CV_32F> { typedef Npp32f npp_type; };
135
+ template<> struct NPPTypeTraits<CV_64F> { typedef Npp64f npp_type; };
136
+
137
+ class NppStreamHandler
138
+ {
139
+ public:
140
+ inline explicit NppStreamHandler(Stream& newStream)
141
+ {
142
+ oldStream = nppGetStream();
143
+ nppSafeSetStream(oldStream, StreamAccessor::getStream(newStream));
144
+ }
145
+
146
+ inline explicit NppStreamHandler(cudaStream_t newStream)
147
+ {
148
+ oldStream = nppGetStream();
149
+ nppSafeSetStream(oldStream, newStream);
150
+ }
151
+
152
+ inline ~NppStreamHandler()
153
+ {
154
+ nppSafeSetStream(nppGetStream(), oldStream);
155
+ }
156
+
157
+ private:
158
+ cudaStream_t oldStream;
159
+ };
160
+ }}
161
+
162
+ #define nppSafeCall(expr) cv::cuda::checkNppError(expr, __FILE__, __LINE__, CV_Func)
163
+ #define cuSafeCall(expr) cv::cuda::checkCudaDriverApiError(expr, __FILE__, __LINE__, CV_Func)
164
+
165
+ #endif // HAVE_CUDA
166
+
167
+ //! @endcond
168
+
169
+ #endif // OPENCV_CORE_PRIVATE_CUDA_HPP