OpenCV 4.5.3(日本語機械翻訳)
core/hal/interface.h
1 #ifndef OPENCV_CORE_HAL_INTERFACE_H
2 #define OPENCV_CORE_HAL_INTERFACE_H
3
6
9 #define CV_HAL_ERROR_OK 0
10 #define CV_HAL_ERROR_NOT_IMPLEMENTED 1
11 #define CV_HAL_ERROR_UNKNOWN -1
13
14 #ifdef __cplusplus
15 #include <cstddef>
16 #else
17 #include <stddef.h>
18 #include <stdbool.h>
19 #endif
20
32 #if !defined _MSC_VER && !defined __BORLANDC__
33 # if defined __cplusplus && __cplusplus >= 201103L && !defined __APPLE__
34 # include <cstdint>
35 # ifdef __NEWLIB__
36 typedef unsigned int uint;
37 # else
38 typedef std::uint32_t uint;
39 # endif
40 # else
41 # include <stdint.h>
42 typedef uint32_t uint;
43 # endif
44 #else
45 typedef unsigned uint;
46 #endif
47
48 typedef signed char schar;
49
50 #ifndef __IPL_H__
51 typedef unsigned char uchar;
52 typedef unsigned short ushort;
53 #endif
54
55 #if defined _MSC_VER || defined __BORLANDC__
56 typedef __int64 int64;
57 typedef unsigned __int64 uint64;
58 # define CV_BIG_INT(n) n##I64
59 # define CV_BIG_UINT(n) n##UI64
60 #else
61 typedef int64_t int64;
62 typedef uint64_t uint64;
63 # define CV_BIG_INT(n) n##LL
64 # define CV_BIG_UINT(n) n##ULL
65 #endif
66
67 #define CV_USRTYPE1 (void)"CV_USRTYPE1 support has been dropped in OpenCV 4.0"
68
69 #define CV_CN_MAX 512
70 #define CV_CN_SHIFT 3
71 #define CV_DEPTH_MAX (1 << CV_CN_SHIFT)
72
73 #define CV_8U 0
74 #define CV_8S 1
75 #define CV_16U 2
76 #define CV_16S 3
77 #define CV_32S 4
78 #define CV_32F 5
79 #define CV_64F 6
80 #define CV_16F 7
81
82 #define CV_MAT_DEPTH_MASK (CV_DEPTH_MAX - 1)
83 #define CV_MAT_DEPTH(flags) ((flags) & CV_MAT_DEPTH_MASK)
84
85 #define CV_MAKETYPE(depth,cn) (CV_MAT_DEPTH(depth) + (((cn)-1) << CV_CN_SHIFT))
86 #define CV_MAKE_TYPE CV_MAKETYPE
87
88 #define CV_8UC1 CV_MAKETYPE(CV_8U,1)
89 #define CV_8UC2 CV_MAKETYPE(CV_8U,2)
90 #define CV_8UC3 CV_MAKETYPE(CV_8U,3)
91 #define CV_8UC4 CV_MAKETYPE(CV_8U,4)
92 #define CV_8UC(n) CV_MAKETYPE(CV_8U,(n))
93
94 #define CV_8SC1 CV_MAKETYPE(CV_8S,1)
95 #define CV_8SC2 CV_MAKETYPE(CV_8S,2)
96 #define CV_8SC3 CV_MAKETYPE(CV_8S,3)
97 #define CV_8SC4 CV_MAKETYPE(CV_8S,4)
98 #define CV_8SC(n) CV_MAKETYPE(CV_8S,(n))
99
100 #define CV_16UC1 CV_MAKETYPE(CV_16U,1)
101 #define CV_16UC2 CV_MAKETYPE(CV_16U,2)
102 #define CV_16UC3 CV_MAKETYPE(CV_16U,3)
103 #define CV_16UC4 CV_MAKETYPE(CV_16U,4)
104 #define CV_16UC(n) CV_MAKETYPE(CV_16U,(n))
105
106 #define CV_16SC1 CV_MAKETYPE(CV_16S,1)
107 #define CV_16SC2 CV_MAKETYPE(CV_16S,2)
108 #define CV_16SC3 CV_MAKETYPE(CV_16S,3)
109 #define CV_16SC4 CV_MAKETYPE(CV_16S,4)
110 #define CV_16SC(n) CV_MAKETYPE(CV_16S,(n))
111
112 #define CV_32SC1 CV_MAKETYPE(CV_32S,1)
113 #define CV_32SC2 CV_MAKETYPE(CV_32S,2)
114 #define CV_32SC3 CV_MAKETYPE(CV_32S,3)
115 #define CV_32SC4 CV_MAKETYPE(CV_32S,4)
116 #define CV_32SC(n) CV_MAKETYPE(CV_32S,(n))
117
118 #define CV_32FC1 CV_MAKETYPE(CV_32F,1)
119 #define CV_32FC2 CV_MAKETYPE(CV_32F,2)
120 #define CV_32FC3 CV_MAKETYPE(CV_32F,3)
121 #define CV_32FC4 CV_MAKETYPE(CV_32F,4)
122 #define CV_32FC(n) CV_MAKETYPE(CV_32F,(n))
123
124 #define CV_64FC1 CV_MAKETYPE(CV_64F,1)
125 #define CV_64FC2 CV_MAKETYPE(CV_64F,2)
126 #define CV_64FC3 CV_MAKETYPE(CV_64F,3)
127 #define CV_64FC4 CV_MAKETYPE(CV_64F,4)
128 #define CV_64FC(n) CV_MAKETYPE(CV_64F,(n))
129
130 #define CV_16FC1 CV_MAKETYPE(CV_16F,1)
131 #define CV_16FC2 CV_MAKETYPE(CV_16F,2)
132 #define CV_16FC3 CV_MAKETYPE(CV_16F,3)
133 #define CV_16FC4 CV_MAKETYPE(CV_16F,4)
134 #define CV_16FC(n) CV_MAKETYPE(CV_16F,(n))
136
140 #define CV_HAL_CMP_EQ 0
141 #define CV_HAL_CMP_GT 1
142 #define CV_HAL_CMP_GE 2
143 #define CV_HAL_CMP_LT 3
144 #define CV_HAL_CMP_LE 4
145 #define CV_HAL_CMP_NE 5
147
151 #define CV_HAL_BORDER_CONSTANT 0
152 #define CV_HAL_BORDER_REPLICATE 1
153 #define CV_HAL_BORDER_REFLECT 2
154 #define CV_HAL_BORDER_WRAP 3
155 #define CV_HAL_BORDER_REFLECT_101 4
156 #define CV_HAL_BORDER_TRANSPARENT 5
157 #define CV_HAL_BORDER_ISOLATED 16
159
162 #define CV_HAL_DFT_INVERSE 1
163 #define CV_HAL_DFT_SCALE 2
164 #define CV_HAL_DFT_ROWS 4
165 #define CV_HAL_DFT_COMPLEX_OUTPUT 16
166 #define CV_HAL_DFT_REAL_OUTPUT 32
167 #define CV_HAL_DFT_TWO_STAGE 64
168 #define CV_HAL_DFT_STAGE_COLS 128
169 #define CV_HAL_DFT_IS_CONTINUOUS 512
170 #define CV_HAL_DFT_IS_INPLACE 1024
172
175 #define CV_HAL_SVD_NO_UV 1
176 #define CV_HAL_SVD_SHORT_UV 2
177 #define CV_HAL_SVD_MODIFY_A 4
178 #define CV_HAL_SVD_FULL_UV 8
180
183 #define CV_HAL_GEMM_1_T 1
184 #define CV_HAL_GEMM_2_T 2
185 #define CV_HAL_GEMM_3_T 4
187
189
190 #endif