Skip to main content

singe_npp/image/
statistics_error_metrics_average.rs

1use super::*;
2
3impl_error_metric!(
4    average_error_u8_c1_buffer_size,
5    average_error_u8_c1,
6    u8,
7    C1,
8    1,
9    nppiAverageErrorGetBufferHostSize_8u_C1R_Ctx,
10    nppiAverageError_8u_C1R_Ctx
11);
12impl_error_metric!(
13    average_error_i8_c1_buffer_size,
14    average_error_i8_c1,
15    i8,
16    C1,
17    1,
18    nppiAverageErrorGetBufferHostSize_8s_C1R_Ctx,
19    nppiAverageError_8s_C1R_Ctx
20);
21impl_error_metric!(
22    average_error_u16_c1_buffer_size,
23    average_error_u16_c1,
24    u16,
25    C1,
26    1,
27    nppiAverageErrorGetBufferHostSize_16u_C1R_Ctx,
28    nppiAverageError_16u_C1R_Ctx
29);
30impl_error_metric!(
31    average_error_i16_c1_buffer_size,
32    average_error_i16_c1,
33    i16,
34    C1,
35    1,
36    nppiAverageErrorGetBufferHostSize_16s_C1R_Ctx,
37    nppiAverageError_16s_C1R_Ctx
38);
39impl_error_metric!(
40    average_error_u32_c1_buffer_size,
41    average_error_u32_c1,
42    u32,
43    C1,
44    1,
45    nppiAverageErrorGetBufferHostSize_32u_C1R_Ctx,
46    nppiAverageError_32u_C1R_Ctx
47);
48impl_error_metric!(
49    average_error_i32_c1_buffer_size,
50    average_error_i32_c1,
51    i32,
52    C1,
53    1,
54    nppiAverageErrorGetBufferHostSize_32s_C1R_Ctx,
55    nppiAverageError_32s_C1R_Ctx
56);
57impl_error_metric!(
58    average_error_f32_c1_buffer_size,
59    average_error_f32_c1,
60    f32,
61    C1,
62    1,
63    nppiAverageErrorGetBufferHostSize_32f_C1R_Ctx,
64    nppiAverageError_32f_C1R_Ctx
65);
66impl_error_metric!(
67    average_error_f64_c1_buffer_size,
68    average_error_f64_c1,
69    f64,
70    C1,
71    1,
72    nppiAverageErrorGetBufferHostSize_64f_C1R_Ctx,
73    nppiAverageError_64f_C1R_Ctx
74);
75impl_error_metric!(
76    average_error_u8_c2_buffer_size,
77    average_error_u8_c2,
78    u8,
79    C2,
80    1,
81    nppiAverageErrorGetBufferHostSize_8u_C2R_Ctx,
82    nppiAverageError_8u_C2R_Ctx
83);
84impl_error_metric!(
85    average_error_i8_c2_buffer_size,
86    average_error_i8_c2,
87    i8,
88    C2,
89    1,
90    nppiAverageErrorGetBufferHostSize_8s_C2R_Ctx,
91    nppiAverageError_8s_C2R_Ctx
92);
93impl_error_metric!(
94    average_error_u16_c2_buffer_size,
95    average_error_u16_c2,
96    u16,
97    C2,
98    1,
99    nppiAverageErrorGetBufferHostSize_16u_C2R_Ctx,
100    nppiAverageError_16u_C2R_Ctx
101);
102impl_error_metric!(
103    average_error_i16_c2_buffer_size,
104    average_error_i16_c2,
105    i16,
106    C2,
107    1,
108    nppiAverageErrorGetBufferHostSize_16s_C2R_Ctx,
109    nppiAverageError_16s_C2R_Ctx
110);
111impl_error_metric!(
112    average_error_u32_c2_buffer_size,
113    average_error_u32_c2,
114    u32,
115    C2,
116    1,
117    nppiAverageErrorGetBufferHostSize_32u_C2R_Ctx,
118    nppiAverageError_32u_C2R_Ctx
119);
120impl_error_metric!(
121    average_error_i32_c2_buffer_size,
122    average_error_i32_c2,
123    i32,
124    C2,
125    1,
126    nppiAverageErrorGetBufferHostSize_32s_C2R_Ctx,
127    nppiAverageError_32s_C2R_Ctx
128);
129impl_error_metric!(
130    average_error_f32_c2_buffer_size,
131    average_error_f32_c2,
132    f32,
133    C2,
134    1,
135    nppiAverageErrorGetBufferHostSize_32f_C2R_Ctx,
136    nppiAverageError_32f_C2R_Ctx
137);
138impl_error_metric!(
139    average_error_f64_c2_buffer_size,
140    average_error_f64_c2,
141    f64,
142    C2,
143    1,
144    nppiAverageErrorGetBufferHostSize_64f_C2R_Ctx,
145    nppiAverageError_64f_C2R_Ctx
146);
147impl_error_metric!(
148    average_error_u8_c3_buffer_size,
149    average_error_u8_c3,
150    u8,
151    C3,
152    1,
153    nppiAverageErrorGetBufferHostSize_8u_C3R_Ctx,
154    nppiAverageError_8u_C3R_Ctx
155);
156impl_error_metric!(
157    average_error_i8_c3_buffer_size,
158    average_error_i8_c3,
159    i8,
160    C3,
161    1,
162    nppiAverageErrorGetBufferHostSize_8s_C3R_Ctx,
163    nppiAverageError_8s_C3R_Ctx
164);
165impl_error_metric!(
166    average_error_u16_c3_buffer_size,
167    average_error_u16_c3,
168    u16,
169    C3,
170    1,
171    nppiAverageErrorGetBufferHostSize_16u_C3R_Ctx,
172    nppiAverageError_16u_C3R_Ctx
173);
174impl_error_metric!(
175    average_error_i16_c3_buffer_size,
176    average_error_i16_c3,
177    i16,
178    C3,
179    1,
180    nppiAverageErrorGetBufferHostSize_16s_C3R_Ctx,
181    nppiAverageError_16s_C3R_Ctx
182);
183impl_error_metric!(
184    average_error_u32_c3_buffer_size,
185    average_error_u32_c3,
186    u32,
187    C3,
188    1,
189    nppiAverageErrorGetBufferHostSize_32u_C3R_Ctx,
190    nppiAverageError_32u_C3R_Ctx
191);
192impl_error_metric!(
193    average_error_i32_c3_buffer_size,
194    average_error_i32_c3,
195    i32,
196    C3,
197    1,
198    nppiAverageErrorGetBufferHostSize_32s_C3R_Ctx,
199    nppiAverageError_32s_C3R_Ctx
200);
201impl_error_metric!(
202    average_error_f32_c3_buffer_size,
203    average_error_f32_c3,
204    f32,
205    C3,
206    1,
207    nppiAverageErrorGetBufferHostSize_32f_C3R_Ctx,
208    nppiAverageError_32f_C3R_Ctx
209);
210impl_error_metric!(
211    average_error_f64_c3_buffer_size,
212    average_error_f64_c3,
213    f64,
214    C3,
215    1,
216    nppiAverageErrorGetBufferHostSize_64f_C3R_Ctx,
217    nppiAverageError_64f_C3R_Ctx
218);
219impl_error_metric!(
220    average_error_u8_c4_buffer_size,
221    average_error_u8_c4,
222    u8,
223    C4,
224    1,
225    nppiAverageErrorGetBufferHostSize_8u_C4R_Ctx,
226    nppiAverageError_8u_C4R_Ctx
227);
228impl_error_metric!(
229    average_error_i8_c4_buffer_size,
230    average_error_i8_c4,
231    i8,
232    C4,
233    1,
234    nppiAverageErrorGetBufferHostSize_8s_C4R_Ctx,
235    nppiAverageError_8s_C4R_Ctx
236);
237impl_error_metric!(
238    average_error_u16_c4_buffer_size,
239    average_error_u16_c4,
240    u16,
241    C4,
242    1,
243    nppiAverageErrorGetBufferHostSize_16u_C4R_Ctx,
244    nppiAverageError_16u_C4R_Ctx
245);
246impl_error_metric!(
247    average_error_i16_c4_buffer_size,
248    average_error_i16_c4,
249    i16,
250    C4,
251    1,
252    nppiAverageErrorGetBufferHostSize_16s_C4R_Ctx,
253    nppiAverageError_16s_C4R_Ctx
254);
255impl_error_metric!(
256    average_error_u32_c4_buffer_size,
257    average_error_u32_c4,
258    u32,
259    C4,
260    1,
261    nppiAverageErrorGetBufferHostSize_32u_C4R_Ctx,
262    nppiAverageError_32u_C4R_Ctx
263);
264impl_error_metric!(
265    average_error_i32_c4_buffer_size,
266    average_error_i32_c4,
267    i32,
268    C4,
269    1,
270    nppiAverageErrorGetBufferHostSize_32s_C4R_Ctx,
271    nppiAverageError_32s_C4R_Ctx
272);
273impl_error_metric!(
274    average_error_f32_c4_buffer_size,
275    average_error_f32_c4,
276    f32,
277    C4,
278    1,
279    nppiAverageErrorGetBufferHostSize_32f_C4R_Ctx,
280    nppiAverageError_32f_C4R_Ctx
281);
282impl_error_metric!(
283    average_error_f64_c4_buffer_size,
284    average_error_f64_c4,
285    f64,
286    C4,
287    1,
288    nppiAverageErrorGetBufferHostSize_64f_C4R_Ctx,
289    nppiAverageError_64f_C4R_Ctx
290);
291impl_error_metric!(
292    average_error_i16_complex_c1_buffer_size,
293    average_error_i16_complex_c1,
294    ComplexI16,
295    C1,
296    1,
297    nppiAverageErrorGetBufferHostSize_16sc_C1R_Ctx,
298    nppiAverageError_16sc_C1R_Ctx
299);
300impl_error_metric!(
301    average_error_i32_complex_c1_buffer_size,
302    average_error_i32_complex_c1,
303    ComplexI32,
304    C1,
305    1,
306    nppiAverageErrorGetBufferHostSize_32sc_C1R_Ctx,
307    nppiAverageError_32sc_C1R_Ctx
308);
309impl_error_metric!(
310    average_error_f32_complex_c1_buffer_size,
311    average_error_f32_complex_c1,
312    Complex32,
313    C1,
314    1,
315    nppiAverageErrorGetBufferHostSize_32fc_C1R_Ctx,
316    nppiAverageError_32fc_C1R_Ctx
317);
318impl_error_metric!(
319    average_error_i16_complex_c2_buffer_size,
320    average_error_i16_complex_c2,
321    ComplexI16,
322    C2,
323    1,
324    nppiAverageErrorGetBufferHostSize_16sc_C2R_Ctx,
325    nppiAverageError_16sc_C2R_Ctx
326);
327impl_error_metric!(
328    average_error_i32_complex_c2_buffer_size,
329    average_error_i32_complex_c2,
330    ComplexI32,
331    C2,
332    1,
333    nppiAverageErrorGetBufferHostSize_32sc_C2R_Ctx,
334    nppiAverageError_32sc_C2R_Ctx
335);
336impl_error_metric!(
337    average_error_f32_complex_c2_buffer_size,
338    average_error_f32_complex_c2,
339    Complex32,
340    C2,
341    1,
342    nppiAverageErrorGetBufferHostSize_32fc_C2R_Ctx,
343    nppiAverageError_32fc_C2R_Ctx
344);
345impl_error_metric!(
346    average_error_i16_complex_c3_buffer_size,
347    average_error_i16_complex_c3,
348    ComplexI16,
349    C3,
350    1,
351    nppiAverageErrorGetBufferHostSize_16sc_C3R_Ctx,
352    nppiAverageError_16sc_C3R_Ctx
353);
354impl_error_metric!(
355    average_error_i32_complex_c3_buffer_size,
356    average_error_i32_complex_c3,
357    ComplexI32,
358    C3,
359    1,
360    nppiAverageErrorGetBufferHostSize_32sc_C3R_Ctx,
361    nppiAverageError_32sc_C3R_Ctx
362);
363impl_error_metric!(
364    average_error_f32_complex_c3_buffer_size,
365    average_error_f32_complex_c3,
366    Complex32,
367    C3,
368    1,
369    nppiAverageErrorGetBufferHostSize_32fc_C3R_Ctx,
370    nppiAverageError_32fc_C3R_Ctx
371);
372impl_error_metric!(
373    average_error_i16_complex_c4_buffer_size,
374    average_error_i16_complex_c4,
375    ComplexI16,
376    C4,
377    1,
378    nppiAverageErrorGetBufferHostSize_16sc_C4R_Ctx,
379    nppiAverageError_16sc_C4R_Ctx
380);
381impl_error_metric!(
382    average_error_i32_complex_c4_buffer_size,
383    average_error_i32_complex_c4,
384    ComplexI32,
385    C4,
386    1,
387    nppiAverageErrorGetBufferHostSize_32sc_C4R_Ctx,
388    nppiAverageError_32sc_C4R_Ctx
389);
390impl_error_metric!(
391    average_error_f32_complex_c4_buffer_size,
392    average_error_f32_complex_c4,
393    Complex32,
394    C4,
395    1,
396    nppiAverageErrorGetBufferHostSize_32fc_C4R_Ctx,
397    nppiAverageError_32fc_C4R_Ctx
398);
399
400impl_generic_dot_prod!(
401    AverageErrorC1,
402    average_error_c1,
403    average_error_c1_buffer_size,
404    C1,
405    [
406        (u8, average_error_u8_c1, average_error_u8_c1_buffer_size),
407        (i8, average_error_i8_c1, average_error_i8_c1_buffer_size),
408        (u16, average_error_u16_c1, average_error_u16_c1_buffer_size),
409        (i16, average_error_i16_c1, average_error_i16_c1_buffer_size),
410        (u32, average_error_u32_c1, average_error_u32_c1_buffer_size),
411        (i32, average_error_i32_c1, average_error_i32_c1_buffer_size),
412        (f32, average_error_f32_c1, average_error_f32_c1_buffer_size),
413        (f64, average_error_f64_c1, average_error_f64_c1_buffer_size),
414        (
415            ComplexI16,
416            average_error_i16_complex_c1,
417            average_error_i16_complex_c1_buffer_size
418        ),
419        (
420            ComplexI32,
421            average_error_i32_complex_c1,
422            average_error_i32_complex_c1_buffer_size
423        ),
424        (
425            Complex32,
426            average_error_f32_complex_c1,
427            average_error_f32_complex_c1_buffer_size
428        ),
429    ]
430);
431impl_generic_dot_prod!(
432    AverageErrorC2,
433    average_error_c2,
434    average_error_c2_buffer_size,
435    C2,
436    [
437        (u8, average_error_u8_c2, average_error_u8_c2_buffer_size),
438        (i8, average_error_i8_c2, average_error_i8_c2_buffer_size),
439        (u16, average_error_u16_c2, average_error_u16_c2_buffer_size),
440        (i16, average_error_i16_c2, average_error_i16_c2_buffer_size),
441        (u32, average_error_u32_c2, average_error_u32_c2_buffer_size),
442        (i32, average_error_i32_c2, average_error_i32_c2_buffer_size),
443        (f32, average_error_f32_c2, average_error_f32_c2_buffer_size),
444        (f64, average_error_f64_c2, average_error_f64_c2_buffer_size),
445        (
446            ComplexI16,
447            average_error_i16_complex_c2,
448            average_error_i16_complex_c2_buffer_size
449        ),
450        (
451            ComplexI32,
452            average_error_i32_complex_c2,
453            average_error_i32_complex_c2_buffer_size
454        ),
455        (
456            Complex32,
457            average_error_f32_complex_c2,
458            average_error_f32_complex_c2_buffer_size
459        ),
460    ]
461);
462impl_generic_dot_prod!(
463    AverageErrorC3,
464    average_error_c3,
465    average_error_c3_buffer_size,
466    C3,
467    [
468        (u8, average_error_u8_c3, average_error_u8_c3_buffer_size),
469        (i8, average_error_i8_c3, average_error_i8_c3_buffer_size),
470        (u16, average_error_u16_c3, average_error_u16_c3_buffer_size),
471        (i16, average_error_i16_c3, average_error_i16_c3_buffer_size),
472        (u32, average_error_u32_c3, average_error_u32_c3_buffer_size),
473        (i32, average_error_i32_c3, average_error_i32_c3_buffer_size),
474        (f32, average_error_f32_c3, average_error_f32_c3_buffer_size),
475        (f64, average_error_f64_c3, average_error_f64_c3_buffer_size),
476        (
477            ComplexI16,
478            average_error_i16_complex_c3,
479            average_error_i16_complex_c3_buffer_size
480        ),
481        (
482            ComplexI32,
483            average_error_i32_complex_c3,
484            average_error_i32_complex_c3_buffer_size
485        ),
486        (
487            Complex32,
488            average_error_f32_complex_c3,
489            average_error_f32_complex_c3_buffer_size
490        ),
491    ]
492);
493impl_generic_dot_prod!(
494    AverageErrorC4,
495    average_error_c4,
496    average_error_c4_buffer_size,
497    C4,
498    [
499        (u8, average_error_u8_c4, average_error_u8_c4_buffer_size),
500        (i8, average_error_i8_c4, average_error_i8_c4_buffer_size),
501        (u16, average_error_u16_c4, average_error_u16_c4_buffer_size),
502        (i16, average_error_i16_c4, average_error_i16_c4_buffer_size),
503        (u32, average_error_u32_c4, average_error_u32_c4_buffer_size),
504        (i32, average_error_i32_c4, average_error_i32_c4_buffer_size),
505        (f32, average_error_f32_c4, average_error_f32_c4_buffer_size),
506        (f64, average_error_f64_c4, average_error_f64_c4_buffer_size),
507        (
508            ComplexI16,
509            average_error_i16_complex_c4,
510            average_error_i16_complex_c4_buffer_size
511        ),
512        (
513            ComplexI32,
514            average_error_i32_complex_c4,
515            average_error_i32_complex_c4_buffer_size
516        ),
517        (
518            Complex32,
519            average_error_f32_complex_c4,
520            average_error_f32_complex_c4_buffer_size
521        ),
522    ]
523);