Skip to main content

singe_npp/image/
threshold_basic.rs

1use super::*;
2
3impl_threshold_c1!(threshold_u8_c1, u8, nppiThreshold_8u_C1R_Ctx);
4impl_threshold_c1!(threshold_u16_c1, u16, nppiThreshold_16u_C1R_Ctx);
5impl_threshold_c1!(threshold_i16_c1, i16, nppiThreshold_16s_C1R_Ctx);
6impl_threshold_c1!(threshold_f32_c1, f32, nppiThreshold_32f_C1R_Ctx);
7impl_threshold_c1_in_place!(threshold_u8_c1_in_place, u8, nppiThreshold_8u_C1IR_Ctx);
8impl_threshold_c1_in_place!(threshold_u16_c1_in_place, u16, nppiThreshold_16u_C1IR_Ctx);
9impl_threshold_c1_in_place!(threshold_i16_c1_in_place, i16, nppiThreshold_16s_C1IR_Ctx);
10impl_threshold_c1_in_place!(threshold_f32_c1_in_place, f32, nppiThreshold_32f_C1IR_Ctx);
11impl_threshold_packed!(threshold_u8_c3, u8, C3, 3, nppiThreshold_8u_C3R_Ctx);
12impl_threshold_packed!(threshold_u8_ac4, u8, AC4, 3, nppiThreshold_8u_AC4R_Ctx);
13impl_threshold_packed!(threshold_u16_c3, u16, C3, 3, nppiThreshold_16u_C3R_Ctx);
14impl_threshold_packed!(threshold_u16_ac4, u16, AC4, 3, nppiThreshold_16u_AC4R_Ctx);
15impl_threshold_packed!(threshold_i16_c3, i16, C3, 3, nppiThreshold_16s_C3R_Ctx);
16impl_threshold_packed!(threshold_i16_ac4, i16, AC4, 3, nppiThreshold_16s_AC4R_Ctx);
17impl_threshold_packed!(threshold_f32_c3, f32, C3, 3, nppiThreshold_32f_C3R_Ctx);
18impl_threshold_packed!(threshold_f32_ac4, f32, AC4, 3, nppiThreshold_32f_AC4R_Ctx);
19impl_threshold_packed_in_place!(
20    threshold_u8_c3_in_place,
21    u8,
22    C3,
23    3,
24    nppiThreshold_8u_C3IR_Ctx
25);
26impl_threshold_packed_in_place!(
27    threshold_u8_ac4_in_place,
28    u8,
29    AC4,
30    3,
31    nppiThreshold_8u_AC4IR_Ctx
32);
33impl_threshold_packed_in_place!(
34    threshold_u16_c3_in_place,
35    u16,
36    C3,
37    3,
38    nppiThreshold_16u_C3IR_Ctx
39);
40impl_threshold_packed_in_place!(
41    threshold_u16_ac4_in_place,
42    u16,
43    AC4,
44    3,
45    nppiThreshold_16u_AC4IR_Ctx
46);
47impl_threshold_packed_in_place!(
48    threshold_i16_c3_in_place,
49    i16,
50    C3,
51    3,
52    nppiThreshold_16s_C3IR_Ctx
53);
54impl_threshold_packed_in_place!(
55    threshold_i16_ac4_in_place,
56    i16,
57    AC4,
58    3,
59    nppiThreshold_16s_AC4IR_Ctx
60);
61impl_threshold_packed_in_place!(
62    threshold_f32_c3_in_place,
63    f32,
64    C3,
65    3,
66    nppiThreshold_32f_C3IR_Ctx
67);
68impl_threshold_packed_in_place!(
69    threshold_f32_ac4_in_place,
70    f32,
71    AC4,
72    3,
73    nppiThreshold_32f_AC4IR_Ctx
74);
75
76impl_generic_threshold_scalar!(ThresholdC1, threshold, threshold_c1, [
77    u8 => threshold_u8_c1,
78    u16 => threshold_u16_c1,
79    i16 => threshold_i16_c1,
80    f32 => threshold_f32_c1,
81]);
82impl_generic_threshold_scalar_in_place!(
83    ThresholdC1InPlace,
84    threshold_in_place,
85    threshold_c1_in_place,
86    [
87        u8 => threshold_u8_c1_in_place,
88        u16 => threshold_u16_c1_in_place,
89        i16 => threshold_i16_c1_in_place,
90        f32 => threshold_f32_c1_in_place,
91    ]
92);
93impl_generic_threshold_array!(ThresholdC3, threshold, threshold_c3, C3, 3, [
94    u8 => threshold_u8_c3,
95    u16 => threshold_u16_c3,
96    i16 => threshold_i16_c3,
97    f32 => threshold_f32_c3,
98]);
99impl_generic_threshold_array_in_place!(
100    ThresholdC3InPlace,
101    threshold_in_place,
102    threshold_c3_in_place,
103    C3,
104    3,
105    [
106        u8 => threshold_u8_c3_in_place,
107        u16 => threshold_u16_c3_in_place,
108        i16 => threshold_i16_c3_in_place,
109        f32 => threshold_f32_c3_in_place,
110    ]
111);
112impl_generic_threshold_array!(ThresholdAc4, threshold, threshold_ac4, AC4, 3, [
113    u8 => threshold_u8_ac4,
114    u16 => threshold_u16_ac4,
115    i16 => threshold_i16_ac4,
116    f32 => threshold_f32_ac4,
117]);
118impl_generic_threshold_array_in_place!(
119    ThresholdAc4InPlace,
120    threshold_in_place,
121    threshold_ac4_in_place,
122    AC4,
123    3,
124    [
125        u8 => threshold_u8_ac4_in_place,
126        u16 => threshold_u16_ac4_in_place,
127        i16 => threshold_i16_ac4_in_place,
128        f32 => threshold_f32_ac4_in_place,
129    ]
130);