1use super::*;
2
3impl_template_match_norm_level_full_scaled!(
4 cross_correlation_full_norm_level_u8_c1_buffer_size,
5 cross_correlation_full_norm_level_u8_c1,
6 u8,
7 C1,
8 nppiFullNormLevelGetBufferHostSize_8u_C1RSfs_Ctx,
9 nppiCrossCorrFull_NormLevel_8u_C1RSfs_Ctx
10);
11impl_template_match_norm_level_full_scaled!(
12 cross_correlation_full_norm_level_u8_c3_buffer_size,
13 cross_correlation_full_norm_level_u8_c3,
14 u8,
15 C3,
16 nppiFullNormLevelGetBufferHostSize_8u_C3RSfs_Ctx,
17 nppiCrossCorrFull_NormLevel_8u_C3RSfs_Ctx
18);
19impl_template_match_norm_level_full_scaled!(
20 cross_correlation_full_norm_level_u8_c4_buffer_size,
21 cross_correlation_full_norm_level_u8_c4,
22 u8,
23 C4,
24 nppiFullNormLevelGetBufferHostSize_8u_C4RSfs_Ctx,
25 nppiCrossCorrFull_NormLevel_8u_C4RSfs_Ctx
26);
27impl_template_match_norm_level_full_scaled!(
28 cross_correlation_full_norm_level_u8_ac4_buffer_size,
29 cross_correlation_full_norm_level_u8_ac4,
30 u8,
31 AC4,
32 nppiFullNormLevelGetBufferHostSize_8u_AC4RSfs_Ctx,
33 nppiCrossCorrFull_NormLevel_8u_AC4RSfs_Ctx
34);
35impl_template_match_norm_level_full!(
36 cross_correlation_full_norm_level_f32_c1_buffer_size,
37 cross_correlation_full_norm_level_f32_c1,
38 f32,
39 f32,
40 C1,
41 nppiFullNormLevelGetBufferHostSize_32f_C1R_Ctx,
42 nppiCrossCorrFull_NormLevel_32f_C1R_Ctx
43);
44impl_template_match_norm_level_full!(
45 cross_correlation_full_norm_level_f32_c3_buffer_size,
46 cross_correlation_full_norm_level_f32_c3,
47 f32,
48 f32,
49 C3,
50 nppiFullNormLevelGetBufferHostSize_32f_C3R_Ctx,
51 nppiCrossCorrFull_NormLevel_32f_C3R_Ctx
52);
53impl_template_match_norm_level_full!(
54 cross_correlation_full_norm_level_f32_c4_buffer_size,
55 cross_correlation_full_norm_level_f32_c4,
56 f32,
57 f32,
58 C4,
59 nppiFullNormLevelGetBufferHostSize_32f_C4R_Ctx,
60 nppiCrossCorrFull_NormLevel_32f_C4R_Ctx
61);
62impl_template_match_norm_level_full!(
63 cross_correlation_full_norm_level_f32_ac4_buffer_size,
64 cross_correlation_full_norm_level_f32_ac4,
65 f32,
66 f32,
67 AC4,
68 nppiFullNormLevelGetBufferHostSize_32f_AC4R_Ctx,
69 nppiCrossCorrFull_NormLevel_32f_AC4R_Ctx
70);
71impl_template_match_norm_level_full!(
72 cross_correlation_full_norm_level_f64_c1_buffer_size,
73 cross_correlation_full_norm_level_f64_c1,
74 f64,
75 f64,
76 C1,
77 nppiFullNormLevelGetBufferHostSize_64f_C1R_Ctx,
78 nppiCrossCorrFull_NormLevel_64f_C1R_Ctx
79);
80impl_template_match_norm_level_full!(
81 cross_correlation_full_norm_level_f64_c3_buffer_size,
82 cross_correlation_full_norm_level_f64_c3,
83 f64,
84 f64,
85 C3,
86 nppiFullNormLevelGetBufferHostSize_64f_C3R_Ctx,
87 nppiCrossCorrFull_NormLevel_64f_C3R_Ctx
88);
89impl_template_match_norm_level_full!(
90 cross_correlation_full_norm_level_f64_c4_buffer_size,
91 cross_correlation_full_norm_level_f64_c4,
92 f64,
93 f64,
94 C4,
95 nppiFullNormLevelGetBufferHostSize_64f_C4R_Ctx,
96 nppiCrossCorrFull_NormLevel_64f_C4R_Ctx
97);
98impl_template_match_norm_level_full!(
99 cross_correlation_full_norm_level_f64_ac4_buffer_size,
100 cross_correlation_full_norm_level_f64_ac4,
101 f64,
102 f64,
103 AC4,
104 nppiFullNormLevelGetBufferHostSize_64f_AC4R_Ctx,
105 nppiCrossCorrFull_NormLevel_64f_AC4R_Ctx
106);
107impl_template_match_norm_level_full!(
108 cross_correlation_full_norm_level_u8_to_f32_c1_buffer_size,
109 cross_correlation_full_norm_level_u8_to_f32_c1,
110 u8,
111 f32,
112 C1,
113 nppiFullNormLevelGetBufferHostSize_8u32f_C1R_Ctx,
114 nppiCrossCorrFull_NormLevel_8u32f_C1R_Ctx
115);
116impl_template_match_norm_level_full!(
117 cross_correlation_full_norm_level_u8_to_f32_c3_buffer_size,
118 cross_correlation_full_norm_level_u8_to_f32_c3,
119 u8,
120 f32,
121 C3,
122 nppiFullNormLevelGetBufferHostSize_8u32f_C3R_Ctx,
123 nppiCrossCorrFull_NormLevel_8u32f_C3R_Ctx
124);
125impl_template_match_norm_level_full!(
126 cross_correlation_full_norm_level_u8_to_f32_c4_buffer_size,
127 cross_correlation_full_norm_level_u8_to_f32_c4,
128 u8,
129 f32,
130 C4,
131 nppiFullNormLevelGetBufferHostSize_8u32f_C4R_Ctx,
132 nppiCrossCorrFull_NormLevel_8u32f_C4R_Ctx
133);
134impl_template_match_norm_level_full!(
135 cross_correlation_full_norm_level_u8_to_f32_ac4_buffer_size,
136 cross_correlation_full_norm_level_u8_to_f32_ac4,
137 u8,
138 f32,
139 AC4,
140 nppiFullNormLevelGetBufferHostSize_8u32f_AC4R_Ctx,
141 nppiCrossCorrFull_NormLevel_8u32f_AC4R_Ctx
142);
143impl_template_match_norm_level_full!(
144 cross_correlation_full_norm_level_i8_to_f32_c1_buffer_size,
145 cross_correlation_full_norm_level_i8_to_f32_c1,
146 i8,
147 f32,
148 C1,
149 nppiFullNormLevelGetBufferHostSize_8s32f_C1R_Ctx,
150 nppiCrossCorrFull_NormLevel_8s32f_C1R_Ctx
151);
152impl_template_match_norm_level_full!(
153 cross_correlation_full_norm_level_i8_to_f32_c3_buffer_size,
154 cross_correlation_full_norm_level_i8_to_f32_c3,
155 i8,
156 f32,
157 C3,
158 nppiFullNormLevelGetBufferHostSize_8s32f_C3R_Ctx,
159 nppiCrossCorrFull_NormLevel_8s32f_C3R_Ctx
160);
161impl_template_match_norm_level_full!(
162 cross_correlation_full_norm_level_i8_to_f32_c4_buffer_size,
163 cross_correlation_full_norm_level_i8_to_f32_c4,
164 i8,
165 f32,
166 C4,
167 nppiFullNormLevelGetBufferHostSize_8s32f_C4R_Ctx,
168 nppiCrossCorrFull_NormLevel_8s32f_C4R_Ctx
169);
170impl_template_match_norm_level_full!(
171 cross_correlation_full_norm_level_i8_to_f32_ac4_buffer_size,
172 cross_correlation_full_norm_level_i8_to_f32_ac4,
173 i8,
174 f32,
175 AC4,
176 nppiFullNormLevelGetBufferHostSize_8s32f_AC4R_Ctx,
177 nppiCrossCorrFull_NormLevel_8s32f_AC4R_Ctx
178);
179impl_template_match_norm_level_full!(
180 cross_correlation_full_norm_level_u16_to_f32_c1_buffer_size,
181 cross_correlation_full_norm_level_u16_to_f32_c1,
182 u16,
183 f32,
184 C1,
185 nppiFullNormLevelGetBufferHostSize_16u32f_C1R_Ctx,
186 nppiCrossCorrFull_NormLevel_16u32f_C1R_Ctx
187);
188impl_template_match_norm_level_full!(
189 cross_correlation_full_norm_level_u16_to_f32_c3_buffer_size,
190 cross_correlation_full_norm_level_u16_to_f32_c3,
191 u16,
192 f32,
193 C3,
194 nppiFullNormLevelGetBufferHostSize_16u32f_C3R_Ctx,
195 nppiCrossCorrFull_NormLevel_16u32f_C3R_Ctx
196);
197impl_template_match_norm_level_full!(
198 cross_correlation_full_norm_level_u16_to_f32_c4_buffer_size,
199 cross_correlation_full_norm_level_u16_to_f32_c4,
200 u16,
201 f32,
202 C4,
203 nppiFullNormLevelGetBufferHostSize_16u32f_C4R_Ctx,
204 nppiCrossCorrFull_NormLevel_16u32f_C4R_Ctx
205);
206impl_template_match_norm_level_full!(
207 cross_correlation_full_norm_level_u16_to_f32_ac4_buffer_size,
208 cross_correlation_full_norm_level_u16_to_f32_ac4,
209 u16,
210 f32,
211 AC4,
212 nppiFullNormLevelGetBufferHostSize_16u32f_AC4R_Ctx,
213 nppiCrossCorrFull_NormLevel_16u32f_AC4R_Ctx
214);
215impl_generic_template_match_buffered_scaled!(
216 CrossCorrelationFullNormLevelScaledC1,
217 cross_correlation_full_norm_level_c1_scaled,
218 cross_correlation_full_norm_level_c1_scaled_buffer_size,
219 C1,
220 [(
221 u8,
222 cross_correlation_full_norm_level_u8_c1,
223 cross_correlation_full_norm_level_u8_c1_buffer_size
224 )]
225);
226impl_generic_template_match_buffered_scaled!(
227 CrossCorrelationFullNormLevelScaledC3,
228 cross_correlation_full_norm_level_c3_scaled,
229 cross_correlation_full_norm_level_c3_scaled_buffer_size,
230 C3,
231 [(
232 u8,
233 cross_correlation_full_norm_level_u8_c3,
234 cross_correlation_full_norm_level_u8_c3_buffer_size
235 )]
236);
237impl_generic_template_match_buffered_scaled!(
238 CrossCorrelationFullNormLevelScaledC4,
239 cross_correlation_full_norm_level_c4_scaled,
240 cross_correlation_full_norm_level_c4_scaled_buffer_size,
241 C4,
242 [(
243 u8,
244 cross_correlation_full_norm_level_u8_c4,
245 cross_correlation_full_norm_level_u8_c4_buffer_size
246 )]
247);
248impl_generic_template_match_buffered_scaled!(
249 CrossCorrelationFullNormLevelScaledAC4,
250 cross_correlation_full_norm_level_ac4_scaled,
251 cross_correlation_full_norm_level_ac4_scaled_buffer_size,
252 AC4,
253 [(
254 u8,
255 cross_correlation_full_norm_level_u8_ac4,
256 cross_correlation_full_norm_level_u8_ac4_buffer_size
257 )]
258);
259impl_generic_template_match_buffered!(
260 CrossCorrelationFullNormLevelC1,
261 cross_correlation_full_norm_level_c1,
262 cross_correlation_full_norm_level_c1_buffer_size,
263 C1,
264 [
265 (
266 f32,
267 f32,
268 cross_correlation_full_norm_level_f32_c1,
269 cross_correlation_full_norm_level_f32_c1_buffer_size
270 ),
271 (
272 f64,
273 f64,
274 cross_correlation_full_norm_level_f64_c1,
275 cross_correlation_full_norm_level_f64_c1_buffer_size
276 ),
277 (
278 u8,
279 f32,
280 cross_correlation_full_norm_level_u8_to_f32_c1,
281 cross_correlation_full_norm_level_u8_to_f32_c1_buffer_size
282 ),
283 (
284 i8,
285 f32,
286 cross_correlation_full_norm_level_i8_to_f32_c1,
287 cross_correlation_full_norm_level_i8_to_f32_c1_buffer_size
288 ),
289 (
290 u16,
291 f32,
292 cross_correlation_full_norm_level_u16_to_f32_c1,
293 cross_correlation_full_norm_level_u16_to_f32_c1_buffer_size
294 ),
295 ]
296);
297impl_generic_template_match_buffered!(
298 CrossCorrelationFullNormLevelC3,
299 cross_correlation_full_norm_level_c3,
300 cross_correlation_full_norm_level_c3_buffer_size,
301 C3,
302 [
303 (
304 f32,
305 f32,
306 cross_correlation_full_norm_level_f32_c3,
307 cross_correlation_full_norm_level_f32_c3_buffer_size
308 ),
309 (
310 f64,
311 f64,
312 cross_correlation_full_norm_level_f64_c3,
313 cross_correlation_full_norm_level_f64_c3_buffer_size
314 ),
315 (
316 u8,
317 f32,
318 cross_correlation_full_norm_level_u8_to_f32_c3,
319 cross_correlation_full_norm_level_u8_to_f32_c3_buffer_size
320 ),
321 (
322 i8,
323 f32,
324 cross_correlation_full_norm_level_i8_to_f32_c3,
325 cross_correlation_full_norm_level_i8_to_f32_c3_buffer_size
326 ),
327 (
328 u16,
329 f32,
330 cross_correlation_full_norm_level_u16_to_f32_c3,
331 cross_correlation_full_norm_level_u16_to_f32_c3_buffer_size
332 ),
333 ]
334);
335impl_generic_template_match_buffered!(
336 CrossCorrelationFullNormLevelC4,
337 cross_correlation_full_norm_level_c4,
338 cross_correlation_full_norm_level_c4_buffer_size,
339 C4,
340 [
341 (
342 f32,
343 f32,
344 cross_correlation_full_norm_level_f32_c4,
345 cross_correlation_full_norm_level_f32_c4_buffer_size
346 ),
347 (
348 f64,
349 f64,
350 cross_correlation_full_norm_level_f64_c4,
351 cross_correlation_full_norm_level_f64_c4_buffer_size
352 ),
353 (
354 u8,
355 f32,
356 cross_correlation_full_norm_level_u8_to_f32_c4,
357 cross_correlation_full_norm_level_u8_to_f32_c4_buffer_size
358 ),
359 (
360 i8,
361 f32,
362 cross_correlation_full_norm_level_i8_to_f32_c4,
363 cross_correlation_full_norm_level_i8_to_f32_c4_buffer_size
364 ),
365 (
366 u16,
367 f32,
368 cross_correlation_full_norm_level_u16_to_f32_c4,
369 cross_correlation_full_norm_level_u16_to_f32_c4_buffer_size
370 ),
371 ]
372);
373impl_generic_template_match_buffered!(
374 CrossCorrelationFullNormLevelAC4,
375 cross_correlation_full_norm_level_ac4,
376 cross_correlation_full_norm_level_ac4_buffer_size,
377 AC4,
378 [
379 (
380 f32,
381 f32,
382 cross_correlation_full_norm_level_f32_ac4,
383 cross_correlation_full_norm_level_f32_ac4_buffer_size
384 ),
385 (
386 f64,
387 f64,
388 cross_correlation_full_norm_level_f64_ac4,
389 cross_correlation_full_norm_level_f64_ac4_buffer_size
390 ),
391 (
392 u8,
393 f32,
394 cross_correlation_full_norm_level_u8_to_f32_ac4,
395 cross_correlation_full_norm_level_u8_to_f32_ac4_buffer_size
396 ),
397 (
398 i8,
399 f32,
400 cross_correlation_full_norm_level_i8_to_f32_ac4,
401 cross_correlation_full_norm_level_i8_to_f32_ac4_buffer_size
402 ),
403 (
404 u16,
405 f32,
406 cross_correlation_full_norm_level_u16_to_f32_ac4,
407 cross_correlation_full_norm_level_u16_to_f32_ac4_buffer_size
408 ),
409 ]
410);