1use super::*;
2
3impl_template_match_norm_level_same_scaled!(
4 cross_correlation_same_norm_level_u8_c1_buffer_size,
5 cross_correlation_same_norm_level_u8_c1,
6 u8,
7 C1,
8 nppiSameNormLevelGetBufferHostSize_8u_C1RSfs_Ctx,
9 nppiCrossCorrSame_NormLevel_8u_C1RSfs_Ctx
10);
11impl_template_match_norm_level_same_scaled!(
12 cross_correlation_same_norm_level_u8_c3_buffer_size,
13 cross_correlation_same_norm_level_u8_c3,
14 u8,
15 C3,
16 nppiSameNormLevelGetBufferHostSize_8u_C3RSfs_Ctx,
17 nppiCrossCorrSame_NormLevel_8u_C3RSfs_Ctx
18);
19impl_template_match_norm_level_same_scaled!(
20 cross_correlation_same_norm_level_u8_c4_buffer_size,
21 cross_correlation_same_norm_level_u8_c4,
22 u8,
23 C4,
24 nppiSameNormLevelGetBufferHostSize_8u_C4RSfs_Ctx,
25 nppiCrossCorrSame_NormLevel_8u_C4RSfs_Ctx
26);
27impl_template_match_norm_level_same_scaled!(
28 cross_correlation_same_norm_level_u8_ac4_buffer_size,
29 cross_correlation_same_norm_level_u8_ac4,
30 u8,
31 AC4,
32 nppiSameNormLevelGetBufferHostSize_8u_AC4RSfs_Ctx,
33 nppiCrossCorrSame_NormLevel_8u_AC4RSfs_Ctx
34);
35impl_template_match_norm_level_same!(
36 cross_correlation_same_norm_level_f32_c1_buffer_size,
37 cross_correlation_same_norm_level_f32_c1,
38 f32,
39 f32,
40 C1,
41 nppiSameNormLevelGetBufferHostSize_32f_C1R_Ctx,
42 nppiCrossCorrSame_NormLevel_32f_C1R_Ctx
43);
44impl_template_match_norm_level_same!(
45 cross_correlation_same_norm_level_f32_c3_buffer_size,
46 cross_correlation_same_norm_level_f32_c3,
47 f32,
48 f32,
49 C3,
50 nppiSameNormLevelGetBufferHostSize_32f_C3R_Ctx,
51 nppiCrossCorrSame_NormLevel_32f_C3R_Ctx
52);
53impl_template_match_norm_level_same!(
54 cross_correlation_same_norm_level_f32_c4_buffer_size,
55 cross_correlation_same_norm_level_f32_c4,
56 f32,
57 f32,
58 C4,
59 nppiSameNormLevelGetBufferHostSize_32f_C4R_Ctx,
60 nppiCrossCorrSame_NormLevel_32f_C4R_Ctx
61);
62impl_template_match_norm_level_same!(
63 cross_correlation_same_norm_level_f32_ac4_buffer_size,
64 cross_correlation_same_norm_level_f32_ac4,
65 f32,
66 f32,
67 AC4,
68 nppiSameNormLevelGetBufferHostSize_32f_AC4R_Ctx,
69 nppiCrossCorrSame_NormLevel_32f_AC4R_Ctx
70);
71impl_template_match_norm_level_same!(
72 cross_correlation_same_norm_level_f64_c1_buffer_size,
73 cross_correlation_same_norm_level_f64_c1,
74 f64,
75 f64,
76 C1,
77 nppiSameNormLevelGetBufferHostSize_64f_C1R_Ctx,
78 nppiCrossCorrSame_NormLevel_64f_C1R_Ctx
79);
80impl_template_match_norm_level_same!(
81 cross_correlation_same_norm_level_f64_c3_buffer_size,
82 cross_correlation_same_norm_level_f64_c3,
83 f64,
84 f64,
85 C3,
86 nppiSameNormLevelGetBufferHostSize_64f_C3R_Ctx,
87 nppiCrossCorrSame_NormLevel_64f_C3R_Ctx
88);
89impl_template_match_norm_level_same!(
90 cross_correlation_same_norm_level_f64_c4_buffer_size,
91 cross_correlation_same_norm_level_f64_c4,
92 f64,
93 f64,
94 C4,
95 nppiSameNormLevelGetBufferHostSize_64f_C4R_Ctx,
96 nppiCrossCorrSame_NormLevel_64f_C4R_Ctx
97);
98impl_template_match_norm_level_same!(
99 cross_correlation_same_norm_level_f64_ac4_buffer_size,
100 cross_correlation_same_norm_level_f64_ac4,
101 f64,
102 f64,
103 AC4,
104 nppiSameNormLevelGetBufferHostSize_64f_AC4R_Ctx,
105 nppiCrossCorrSame_NormLevel_64f_AC4R_Ctx
106);
107impl_template_match_norm_level_same!(
108 cross_correlation_same_norm_level_u8_to_f32_c1_buffer_size,
109 cross_correlation_same_norm_level_u8_to_f32_c1,
110 u8,
111 f32,
112 C1,
113 nppiSameNormLevelGetBufferHostSize_8u32f_C1R_Ctx,
114 nppiCrossCorrSame_NormLevel_8u32f_C1R_Ctx
115);
116impl_template_match_norm_level_same!(
117 cross_correlation_same_norm_level_u8_to_f32_c3_buffer_size,
118 cross_correlation_same_norm_level_u8_to_f32_c3,
119 u8,
120 f32,
121 C3,
122 nppiSameNormLevelGetBufferHostSize_8u32f_C3R_Ctx,
123 nppiCrossCorrSame_NormLevel_8u32f_C3R_Ctx
124);
125impl_template_match_norm_level_same!(
126 cross_correlation_same_norm_level_u8_to_f32_c4_buffer_size,
127 cross_correlation_same_norm_level_u8_to_f32_c4,
128 u8,
129 f32,
130 C4,
131 nppiSameNormLevelGetBufferHostSize_8u32f_C4R_Ctx,
132 nppiCrossCorrSame_NormLevel_8u32f_C4R_Ctx
133);
134impl_template_match_norm_level_same!(
135 cross_correlation_same_norm_level_u8_to_f32_ac4_buffer_size,
136 cross_correlation_same_norm_level_u8_to_f32_ac4,
137 u8,
138 f32,
139 AC4,
140 nppiSameNormLevelGetBufferHostSize_8u32f_AC4R_Ctx,
141 nppiCrossCorrSame_NormLevel_8u32f_AC4R_Ctx
142);
143impl_template_match_norm_level_same!(
144 cross_correlation_same_norm_level_i8_to_f32_c1_buffer_size,
145 cross_correlation_same_norm_level_i8_to_f32_c1,
146 i8,
147 f32,
148 C1,
149 nppiSameNormLevelGetBufferHostSize_8s32f_C1R_Ctx,
150 nppiCrossCorrSame_NormLevel_8s32f_C1R_Ctx
151);
152impl_template_match_norm_level_same!(
153 cross_correlation_same_norm_level_i8_to_f32_c3_buffer_size,
154 cross_correlation_same_norm_level_i8_to_f32_c3,
155 i8,
156 f32,
157 C3,
158 nppiSameNormLevelGetBufferHostSize_8s32f_C3R_Ctx,
159 nppiCrossCorrSame_NormLevel_8s32f_C3R_Ctx
160);
161impl_template_match_norm_level_same!(
162 cross_correlation_same_norm_level_i8_to_f32_c4_buffer_size,
163 cross_correlation_same_norm_level_i8_to_f32_c4,
164 i8,
165 f32,
166 C4,
167 nppiSameNormLevelGetBufferHostSize_8s32f_C4R_Ctx,
168 nppiCrossCorrSame_NormLevel_8s32f_C4R_Ctx
169);
170impl_template_match_norm_level_same!(
171 cross_correlation_same_norm_level_i8_to_f32_ac4_buffer_size,
172 cross_correlation_same_norm_level_i8_to_f32_ac4,
173 i8,
174 f32,
175 AC4,
176 nppiSameNormLevelGetBufferHostSize_8s32f_AC4R_Ctx,
177 nppiCrossCorrSame_NormLevel_8s32f_AC4R_Ctx
178);
179impl_template_match_norm_level_same!(
180 cross_correlation_same_norm_level_u16_to_f32_c1_buffer_size,
181 cross_correlation_same_norm_level_u16_to_f32_c1,
182 u16,
183 f32,
184 C1,
185 nppiSameNormLevelGetBufferHostSize_16u32f_C1R_Ctx,
186 nppiCrossCorrSame_NormLevel_16u32f_C1R_Ctx
187);
188impl_template_match_norm_level_same!(
189 cross_correlation_same_norm_level_u16_to_f32_c3_buffer_size,
190 cross_correlation_same_norm_level_u16_to_f32_c3,
191 u16,
192 f32,
193 C3,
194 nppiSameNormLevelGetBufferHostSize_16u32f_C3R_Ctx,
195 nppiCrossCorrSame_NormLevel_16u32f_C3R_Ctx
196);
197impl_template_match_norm_level_same!(
198 cross_correlation_same_norm_level_u16_to_f32_c4_buffer_size,
199 cross_correlation_same_norm_level_u16_to_f32_c4,
200 u16,
201 f32,
202 C4,
203 nppiSameNormLevelGetBufferHostSize_16u32f_C4R_Ctx,
204 nppiCrossCorrSame_NormLevel_16u32f_C4R_Ctx
205);
206impl_template_match_norm_level_same!(
207 cross_correlation_same_norm_level_u16_to_f32_ac4_buffer_size,
208 cross_correlation_same_norm_level_u16_to_f32_ac4,
209 u16,
210 f32,
211 AC4,
212 nppiSameNormLevelGetBufferHostSize_16u32f_AC4R_Ctx,
213 nppiCrossCorrSame_NormLevel_16u32f_AC4R_Ctx
214);
215
216impl_generic_template_match_buffered_scaled!(
217 CrossCorrelationSameNormLevelScaledC1,
218 cross_correlation_same_norm_level_c1_scaled,
219 cross_correlation_same_norm_level_c1_scaled_buffer_size,
220 C1,
221 [(
222 u8,
223 cross_correlation_same_norm_level_u8_c1,
224 cross_correlation_same_norm_level_u8_c1_buffer_size
225 )]
226);
227impl_generic_template_match_buffered_scaled!(
228 CrossCorrelationSameNormLevelScaledC3,
229 cross_correlation_same_norm_level_c3_scaled,
230 cross_correlation_same_norm_level_c3_scaled_buffer_size,
231 C3,
232 [(
233 u8,
234 cross_correlation_same_norm_level_u8_c3,
235 cross_correlation_same_norm_level_u8_c3_buffer_size
236 )]
237);
238impl_generic_template_match_buffered_scaled!(
239 CrossCorrelationSameNormLevelScaledC4,
240 cross_correlation_same_norm_level_c4_scaled,
241 cross_correlation_same_norm_level_c4_scaled_buffer_size,
242 C4,
243 [(
244 u8,
245 cross_correlation_same_norm_level_u8_c4,
246 cross_correlation_same_norm_level_u8_c4_buffer_size
247 )]
248);
249impl_generic_template_match_buffered_scaled!(
250 CrossCorrelationSameNormLevelScaledAC4,
251 cross_correlation_same_norm_level_ac4_scaled,
252 cross_correlation_same_norm_level_ac4_scaled_buffer_size,
253 AC4,
254 [(
255 u8,
256 cross_correlation_same_norm_level_u8_ac4,
257 cross_correlation_same_norm_level_u8_ac4_buffer_size
258 )]
259);
260impl_generic_template_match_buffered!(
261 CrossCorrelationSameNormLevelC1,
262 cross_correlation_same_norm_level_c1,
263 cross_correlation_same_norm_level_c1_buffer_size,
264 C1,
265 [
266 (
267 f32,
268 f32,
269 cross_correlation_same_norm_level_f32_c1,
270 cross_correlation_same_norm_level_f32_c1_buffer_size
271 ),
272 (
273 f64,
274 f64,
275 cross_correlation_same_norm_level_f64_c1,
276 cross_correlation_same_norm_level_f64_c1_buffer_size
277 ),
278 (
279 u8,
280 f32,
281 cross_correlation_same_norm_level_u8_to_f32_c1,
282 cross_correlation_same_norm_level_u8_to_f32_c1_buffer_size
283 ),
284 (
285 i8,
286 f32,
287 cross_correlation_same_norm_level_i8_to_f32_c1,
288 cross_correlation_same_norm_level_i8_to_f32_c1_buffer_size
289 ),
290 (
291 u16,
292 f32,
293 cross_correlation_same_norm_level_u16_to_f32_c1,
294 cross_correlation_same_norm_level_u16_to_f32_c1_buffer_size
295 ),
296 ]
297);
298impl_generic_template_match_buffered!(
299 CrossCorrelationSameNormLevelC3,
300 cross_correlation_same_norm_level_c3,
301 cross_correlation_same_norm_level_c3_buffer_size,
302 C3,
303 [
304 (
305 f32,
306 f32,
307 cross_correlation_same_norm_level_f32_c3,
308 cross_correlation_same_norm_level_f32_c3_buffer_size
309 ),
310 (
311 f64,
312 f64,
313 cross_correlation_same_norm_level_f64_c3,
314 cross_correlation_same_norm_level_f64_c3_buffer_size
315 ),
316 (
317 u8,
318 f32,
319 cross_correlation_same_norm_level_u8_to_f32_c3,
320 cross_correlation_same_norm_level_u8_to_f32_c3_buffer_size
321 ),
322 (
323 i8,
324 f32,
325 cross_correlation_same_norm_level_i8_to_f32_c3,
326 cross_correlation_same_norm_level_i8_to_f32_c3_buffer_size
327 ),
328 (
329 u16,
330 f32,
331 cross_correlation_same_norm_level_u16_to_f32_c3,
332 cross_correlation_same_norm_level_u16_to_f32_c3_buffer_size
333 ),
334 ]
335);
336impl_generic_template_match_buffered!(
337 CrossCorrelationSameNormLevelC4,
338 cross_correlation_same_norm_level_c4,
339 cross_correlation_same_norm_level_c4_buffer_size,
340 C4,
341 [
342 (
343 f32,
344 f32,
345 cross_correlation_same_norm_level_f32_c4,
346 cross_correlation_same_norm_level_f32_c4_buffer_size
347 ),
348 (
349 f64,
350 f64,
351 cross_correlation_same_norm_level_f64_c4,
352 cross_correlation_same_norm_level_f64_c4_buffer_size
353 ),
354 (
355 u8,
356 f32,
357 cross_correlation_same_norm_level_u8_to_f32_c4,
358 cross_correlation_same_norm_level_u8_to_f32_c4_buffer_size
359 ),
360 (
361 i8,
362 f32,
363 cross_correlation_same_norm_level_i8_to_f32_c4,
364 cross_correlation_same_norm_level_i8_to_f32_c4_buffer_size
365 ),
366 (
367 u16,
368 f32,
369 cross_correlation_same_norm_level_u16_to_f32_c4,
370 cross_correlation_same_norm_level_u16_to_f32_c4_buffer_size
371 ),
372 ]
373);
374impl_generic_template_match_buffered!(
375 CrossCorrelationSameNormLevelAC4,
376 cross_correlation_same_norm_level_ac4,
377 cross_correlation_same_norm_level_ac4_buffer_size,
378 AC4,
379 [
380 (
381 f32,
382 f32,
383 cross_correlation_same_norm_level_f32_ac4,
384 cross_correlation_same_norm_level_f32_ac4_buffer_size
385 ),
386 (
387 f64,
388 f64,
389 cross_correlation_same_norm_level_f64_ac4,
390 cross_correlation_same_norm_level_f64_ac4_buffer_size
391 ),
392 (
393 u8,
394 f32,
395 cross_correlation_same_norm_level_u8_to_f32_ac4,
396 cross_correlation_same_norm_level_u8_to_f32_ac4_buffer_size
397 ),
398 (
399 i8,
400 f32,
401 cross_correlation_same_norm_level_i8_to_f32_ac4,
402 cross_correlation_same_norm_level_i8_to_f32_ac4_buffer_size
403 ),
404 (
405 u16,
406 f32,
407 cross_correlation_same_norm_level_u16_to_f32_ac4,
408 cross_correlation_same_norm_level_u16_to_f32_ac4_buffer_size
409 ),
410 ]
411);