Image Utilities (IU)
 All Data Structures Namespaces Functions Variables Typedefs Enumerations Friends Groups Pages
iumath.h
1 #pragma once
2 
3 #include "iumath/iumathapi.h"
4 #include "iudefs.h"
5 
6 namespace iu {
8 namespace math {
9 
19 //---------------------------------------------------------------------------------------------------
20 // ARITHMETICS
21 
22 // add constant
28 IUMATH_DLLAPI void addC(iu::ImageGpu_32f_C1& src, const float& val, iu::ImageGpu_32f_C1& dst);
29 IUMATH_DLLAPI void addC(iu::ImageGpu_32f_C2& src, const float2& val, iu::ImageGpu_32f_C2& dst);
30 IUMATH_DLLAPI void addC(iu::ImageGpu_32f_C3& src, const float3& val, iu::ImageGpu_32f_C3& dst);
31 IUMATH_DLLAPI void addC(iu::ImageGpu_32f_C4& src, const float4& val, iu::ImageGpu_32f_C4& dst);
32 
33 IUMATH_DLLAPI void addC(iu::ImageGpu_64f_C1& src, const double& val, iu::ImageGpu_64f_C1& dst);
34 IUMATH_DLLAPI void addC(iu::ImageGpu_64f_C2& src, const double2& val, iu::ImageGpu_64f_C2& dst);
35 IUMATH_DLLAPI void addC(iu::ImageGpu_64f_C3& src, const double3& val, iu::ImageGpu_64f_C3& dst);
36 IUMATH_DLLAPI void addC(iu::ImageGpu_64f_C4& src, const double4& val, iu::ImageGpu_64f_C4& dst);
37 
38 IUMATH_DLLAPI void addC(iu::ImageGpu_8u_C1& src, const unsigned char& val, iu::ImageGpu_8u_C1& dst);
39 IUMATH_DLLAPI void addC(iu::ImageGpu_8u_C2& src, const uchar2& val, iu::ImageGpu_8u_C2& dst);
40 IUMATH_DLLAPI void addC(iu::ImageGpu_8u_C3& src, const uchar3& val, iu::ImageGpu_8u_C3& dst);
41 IUMATH_DLLAPI void addC(iu::ImageGpu_8u_C4& src, const uchar4& val, iu::ImageGpu_8u_C4& dst);
42 
43 IUMATH_DLLAPI void addC(iu::ImageGpu_32s_C1& src, const int& val, iu::ImageGpu_32s_C1& dst);
44 IUMATH_DLLAPI void addC(iu::ImageGpu_32u_C1& src, const unsigned int& val, iu::ImageGpu_32u_C1& dst);
45 IUMATH_DLLAPI void addC(iu::ImageGpu_16u_C1& src, const unsigned short& val, iu::ImageGpu_16u_C1& dst);
46 
47 IUMATH_DLLAPI void addC(iu::VolumeGpu_32f_C1& src, const float& val, iu::VolumeGpu_32f_C1& dst);
48 IUMATH_DLLAPI void addC(iu::VolumeGpu_32f_C2& src, const float2& val, iu::VolumeGpu_32f_C2& dst);
49 IUMATH_DLLAPI void addC(iu::VolumeGpu_32f_C3& src, const float3& val, iu::VolumeGpu_32f_C3& dst);
50 IUMATH_DLLAPI void addC(iu::VolumeGpu_32f_C4& src, const float4& val, iu::VolumeGpu_32f_C4& dst);
51 
52 IUMATH_DLLAPI void addC(iu::VolumeGpu_64f_C1& src, const double& val, iu::VolumeGpu_64f_C1& dst);
53 IUMATH_DLLAPI void addC(iu::VolumeGpu_64f_C2& src, const double2& val, iu::VolumeGpu_64f_C2& dst);
54 IUMATH_DLLAPI void addC(iu::VolumeGpu_64f_C3& src, const double3& val, iu::VolumeGpu_64f_C3& dst);
55 IUMATH_DLLAPI void addC(iu::VolumeGpu_64f_C4& src, const double4& val, iu::VolumeGpu_64f_C4& dst);
56 
57 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_32f_C1& src, const float& val, iu::LinearDeviceMemory_32f_C1& dst);
58 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_32f_C2& src, const float2& val, iu::LinearDeviceMemory_32f_C2& dst);
59 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_32f_C3& src, const float3& val, iu::LinearDeviceMemory_32f_C3& dst);
60 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_32f_C4& src, const float4& val, iu::LinearDeviceMemory_32f_C4& dst);
61 
62 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_64f_C1& src, const double& val, iu::LinearDeviceMemory_64f_C1& dst);
63 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_64f_C2& src, const double2& val, iu::LinearDeviceMemory_64f_C2& dst);
64 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_64f_C3& src, const double3& val, iu::LinearDeviceMemory_64f_C3& dst);
65 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_64f_C4& src, const double4& val, iu::LinearDeviceMemory_64f_C4& dst);
66 
67 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_8u_C1& src, const unsigned char& val, iu::LinearDeviceMemory_8u_C1& dst);
68 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_8u_C2& src, const uchar2& val, iu::LinearDeviceMemory_8u_C2& dst);
69 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_8u_C3& src, const uchar3& val, iu::LinearDeviceMemory_8u_C3& dst);
70 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_8u_C4& src, const uchar4& val, iu::LinearDeviceMemory_8u_C4& dst);
71 
72 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_32s_C1& src, const int& val, iu::LinearDeviceMemory_32s_C1& dst);
73 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_32u_C1& src, const unsigned int& val, iu::LinearDeviceMemory_32u_C1& dst);
74 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory_16u_C1& src, const unsigned short& val, iu::LinearDeviceMemory_16u_C1& dst);
75 
76 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float, 2>& src, const float& val, iu::LinearDeviceMemory<float, 2>& dst);
77 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float2, 2>& src, const float2& val, iu::LinearDeviceMemory<float2, 2>& dst);
78 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float3, 2>& src, const float3& val, iu::LinearDeviceMemory<float3, 2>& dst);
79 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float4, 2>& src, const float4& val, iu::LinearDeviceMemory<float4, 2>& dst);
80 
81 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float, 3>& src, const float& val, iu::LinearDeviceMemory<float, 3>& dst);
82 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float2, 3>& src, const float2& val, iu::LinearDeviceMemory<float2, 3>& dst);
83 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float3, 3>& src, const float3& val, iu::LinearDeviceMemory<float3, 3>& dst);
84 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float4, 3>& src, const float4& val, iu::LinearDeviceMemory<float4, 3>& dst);
85 
86 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float, 4>& src, const float& val, iu::LinearDeviceMemory<float, 4>& dst);
87 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float2, 4>& src, const float2& val, iu::LinearDeviceMemory<float2, 4>& dst);
88 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float3, 4>& src, const float3& val, iu::LinearDeviceMemory<float3, 4>& dst);
89 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float4, 4>& src, const float4& val, iu::LinearDeviceMemory<float4, 4>& dst);
90 
91 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float, 5>& src, const float& val, iu::LinearDeviceMemory<float, 5>& dst);
92 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float2, 5>& src, const float2& val, iu::LinearDeviceMemory<float2, 5>& dst);
93 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float3, 5>& src, const float3& val, iu::LinearDeviceMemory<float3, 5>& dst);
94 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<float4, 5>& src, const float4& val, iu::LinearDeviceMemory<float4, 5>& dst);
95 
96 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double, 2>& src, const double& val, iu::LinearDeviceMemory<double, 2>& dst);
97 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double2, 2>& src, const double2& val, iu::LinearDeviceMemory<double2, 2>& dst);
98 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double3, 2>& src, const double3& val, iu::LinearDeviceMemory<double3, 2>& dst);
99 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double4, 2>& src, const double4& val, iu::LinearDeviceMemory<double4, 2>& dst);
100 
101 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double, 3>& src, const double& val, iu::LinearDeviceMemory<double, 3>& dst);
102 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double2, 3>& src, const double2& val, iu::LinearDeviceMemory<double2, 3>& dst);
103 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double3, 3>& src, const double3& val, iu::LinearDeviceMemory<double3, 3>& dst);
104 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double4, 3>& src, const double4& val, iu::LinearDeviceMemory<double4, 3>& dst);
105 
106 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double, 4>& src, const double& val, iu::LinearDeviceMemory<double, 4>& dst);
107 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double2, 4>& src, const double2& val, iu::LinearDeviceMemory<double2, 4>& dst);
108 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double3, 4>& src, const double3& val, iu::LinearDeviceMemory<double3, 4>& dst);
109 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double4, 4>& src, const double4& val, iu::LinearDeviceMemory<double4, 4>& dst);
110 
111 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double, 5>& src, const double& val, iu::LinearDeviceMemory<double, 5>& dst);
112 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double2, 5>& src, const double2& val, iu::LinearDeviceMemory<double2, 5>& dst);
113 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double3, 5>& src, const double3& val, iu::LinearDeviceMemory<double3, 5>& dst);
114 IUMATH_DLLAPI void addC(iu::LinearDeviceMemory<double4, 5>& src, const double4& val, iu::LinearDeviceMemory<double4, 5>& dst);
115 
116 IUMATH_DLLAPI void addC(iu::ImageCpu_32f_C1& src, const float& val, iu::ImageCpu_32f_C1& dst);
117 IUMATH_DLLAPI void addC(iu::ImageCpu_32f_C2& src, const float2& val, iu::ImageCpu_32f_C2& dst);
118 IUMATH_DLLAPI void addC(iu::ImageCpu_32f_C3& src, const float3& val, iu::ImageCpu_32f_C3& dst);
119 IUMATH_DLLAPI void addC(iu::ImageCpu_32f_C4& src, const float4& val, iu::ImageCpu_32f_C4& dst);
120 
121 IUMATH_DLLAPI void addC(iu::ImageCpu_64f_C1& src, const double& val, iu::ImageCpu_64f_C1& dst);
122 IUMATH_DLLAPI void addC(iu::ImageCpu_64f_C2& src, const double2& val, iu::ImageCpu_64f_C2& dst);
123 IUMATH_DLLAPI void addC(iu::ImageCpu_64f_C3& src, const double3& val, iu::ImageCpu_64f_C3& dst);
124 IUMATH_DLLAPI void addC(iu::ImageCpu_64f_C4& src, const double4& val, iu::ImageCpu_64f_C4& dst);
125 
126 IUMATH_DLLAPI void addC(iu::ImageCpu_8u_C1& src, const unsigned char& val, iu::ImageCpu_8u_C1& dst);
127 IUMATH_DLLAPI void addC(iu::ImageCpu_8u_C2& src, const uchar2& val, iu::ImageCpu_8u_C2& dst);
128 IUMATH_DLLAPI void addC(iu::ImageCpu_8u_C3& src, const uchar3& val, iu::ImageCpu_8u_C3& dst);
129 IUMATH_DLLAPI void addC(iu::ImageCpu_8u_C4& src, const uchar4& val, iu::ImageCpu_8u_C4& dst);
130 
131 IUMATH_DLLAPI void addC(iu::ImageCpu_32s_C1& src, const int& val, iu::ImageCpu_32s_C1& dst);
132 IUMATH_DLLAPI void addC(iu::ImageCpu_32u_C1& src, const unsigned int& val, iu::ImageCpu_32u_C1& dst);
133 IUMATH_DLLAPI void addC(iu::ImageCpu_16u_C1& src, const unsigned short& val, iu::ImageCpu_16u_C1& dst);
134 
135 IUMATH_DLLAPI void addC(iu::VolumeCpu_32f_C1& src, const float& val, iu::VolumeCpu_32f_C1& dst);
136 IUMATH_DLLAPI void addC(iu::VolumeCpu_32f_C2& src, const float2& val, iu::VolumeCpu_32f_C2& dst);
137 IUMATH_DLLAPI void addC(iu::VolumeCpu_32f_C3& src, const float3& val, iu::VolumeCpu_32f_C3& dst);
138 IUMATH_DLLAPI void addC(iu::VolumeCpu_32f_C4& src, const float4& val, iu::VolumeCpu_32f_C4& dst);
139 
140 IUMATH_DLLAPI void addC(iu::VolumeCpu_64f_C1& src, const double& val, iu::VolumeCpu_64f_C1& dst);
141 IUMATH_DLLAPI void addC(iu::VolumeCpu_64f_C2& src, const double2& val, iu::VolumeCpu_64f_C2& dst);
142 IUMATH_DLLAPI void addC(iu::VolumeCpu_64f_C3& src, const double3& val, iu::VolumeCpu_64f_C3& dst);
143 IUMATH_DLLAPI void addC(iu::VolumeCpu_64f_C4& src, const double4& val, iu::VolumeCpu_64f_C4& dst);
144 
145 IUMATH_DLLAPI void addC(iu::LinearHostMemory_32f_C1& src, const float& val, iu::LinearHostMemory_32f_C1& dst);
146 IUMATH_DLLAPI void addC(iu::LinearHostMemory_32f_C2& src, const float2& val, iu::LinearHostMemory_32f_C2& dst);
147 IUMATH_DLLAPI void addC(iu::LinearHostMemory_32f_C3& src, const float3& val, iu::LinearHostMemory_32f_C3& dst);
148 IUMATH_DLLAPI void addC(iu::LinearHostMemory_32f_C4& src, const float4& val, iu::LinearHostMemory_32f_C4& dst);
149 
150 IUMATH_DLLAPI void addC(iu::LinearHostMemory_64f_C1& src, const double& val, iu::LinearHostMemory_64f_C1& dst);
151 IUMATH_DLLAPI void addC(iu::LinearHostMemory_64f_C2& src, const double2& val, iu::LinearHostMemory_64f_C2& dst);
152 IUMATH_DLLAPI void addC(iu::LinearHostMemory_64f_C3& src, const double3& val, iu::LinearHostMemory_64f_C3& dst);
153 IUMATH_DLLAPI void addC(iu::LinearHostMemory_64f_C4& src, const double4& val, iu::LinearHostMemory_64f_C4& dst);
154 
155 IUMATH_DLLAPI void addC(iu::LinearHostMemory_8u_C1& src, const unsigned char& val, iu::LinearHostMemory_8u_C1& dst);
156 IUMATH_DLLAPI void addC(iu::LinearHostMemory_8u_C2& src, const uchar2& val, iu::LinearHostMemory_8u_C2& dst);
157 IUMATH_DLLAPI void addC(iu::LinearHostMemory_8u_C3& src, const uchar3& val, iu::LinearHostMemory_8u_C3& dst);
158 IUMATH_DLLAPI void addC(iu::LinearHostMemory_8u_C4& src, const uchar4& val, iu::LinearHostMemory_8u_C4& dst);
159 
160 IUMATH_DLLAPI void addC(iu::LinearHostMemory_32s_C1& src, const int& val, iu::LinearHostMemory_32s_C1& dst);
161 IUMATH_DLLAPI void addC(iu::LinearHostMemory_32u_C1& src, const unsigned int& val, iu::LinearHostMemory_32u_C1& dst);
162 IUMATH_DLLAPI void addC(iu::LinearHostMemory_16u_C1& src, const unsigned short& val, iu::LinearHostMemory_16u_C1& dst);
163 
164 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float, 2>& src, const float& val, iu::LinearHostMemory<float, 2>& dst);
165 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float2, 2>& src, const float2& val, iu::LinearHostMemory<float2, 2>& dst);
166 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float3, 2>& src, const float3& val, iu::LinearHostMemory<float3, 2>& dst);
167 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float4, 2>& src, const float4& val, iu::LinearHostMemory<float4, 2>& dst);
168 
169 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float, 3>& src, const float& val, iu::LinearHostMemory<float, 3>& dst);
170 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float2, 3>& src, const float2& val, iu::LinearHostMemory<float2, 3>& dst);
171 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float3, 3>& src, const float3& val, iu::LinearHostMemory<float3, 3>& dst);
172 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float4, 3>& src, const float4& val, iu::LinearHostMemory<float4, 3>& dst);
173 
174 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float, 4>& src, const float& val, iu::LinearHostMemory<float, 4>& dst);
175 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float2, 4>& src, const float2& val, iu::LinearHostMemory<float2, 4>& dst);
176 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float3, 4>& src, const float3& val, iu::LinearHostMemory<float3, 4>& dst);
177 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float4, 4>& src, const float4& val, iu::LinearHostMemory<float4, 4>& dst);
178 
179 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float, 5>& src, const float& val, iu::LinearHostMemory<float, 5>& dst);
180 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float2, 5>& src, const float2& val, iu::LinearHostMemory<float2, 5>& dst);
181 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float3, 5>& src, const float3& val, iu::LinearHostMemory<float3, 5>& dst);
182 IUMATH_DLLAPI void addC(iu::LinearHostMemory<float4, 5>& src, const float4& val, iu::LinearHostMemory<float4, 5>& dst);
183 
184 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double, 2>& src, const double& val, iu::LinearHostMemory<double, 2>& dst);
185 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double2, 2>& src, const double2& val, iu::LinearHostMemory<double2, 2>& dst);
186 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double3, 2>& src, const double3& val, iu::LinearHostMemory<double3, 2>& dst);
187 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double4, 2>& src, const double4& val, iu::LinearHostMemory<double4, 2>& dst);
188 
189 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double, 3>& src, const double& val, iu::LinearHostMemory<double, 3>& dst);
190 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double2, 3>& src, const double2& val, iu::LinearHostMemory<double2, 3>& dst);
191 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double3, 3>& src, const double3& val, iu::LinearHostMemory<double3, 3>& dst);
192 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double4, 3>& src, const double4& val, iu::LinearHostMemory<double4, 3>& dst);
193 
194 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double, 4>& src, const double& val, iu::LinearHostMemory<double, 4>& dst);
195 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double2, 4>& src, const double2& val, iu::LinearHostMemory<double2, 4>& dst);
196 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double3, 4>& src, const double3& val, iu::LinearHostMemory<double3, 4>& dst);
197 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double4, 4>& src, const double4& val, iu::LinearHostMemory<double4, 4>& dst);
198 
199 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double, 5>& src, const double& val, iu::LinearHostMemory<double, 5>& dst);
200 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double2, 5>& src, const double2& val, iu::LinearHostMemory<double2, 5>& dst);
201 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double3, 5>& src, const double3& val, iu::LinearHostMemory<double3, 5>& dst);
202 IUMATH_DLLAPI void addC(iu::LinearHostMemory<double4, 5>& src, const double4& val, iu::LinearHostMemory<double4, 5>& dst);
203 
204 // multiply constant
210 IUMATH_DLLAPI void mulC(iu::ImageGpu_32f_C1& src, const float& val, iu::ImageGpu_32f_C1& dst);
211 IUMATH_DLLAPI void mulC(iu::ImageGpu_32f_C2& src, const float2& val, iu::ImageGpu_32f_C2& dst);
212 IUMATH_DLLAPI void mulC(iu::ImageGpu_32f_C3& src, const float3& val, iu::ImageGpu_32f_C3& dst);
213 IUMATH_DLLAPI void mulC(iu::ImageGpu_32f_C4& src, const float4& val, iu::ImageGpu_32f_C4& dst);
214 
215 IUMATH_DLLAPI void mulC(iu::ImageGpu_64f_C1& src, const double& val, iu::ImageGpu_64f_C1& dst);
216 IUMATH_DLLAPI void mulC(iu::ImageGpu_64f_C2& src, const double2& val, iu::ImageGpu_64f_C2& dst);
217 IUMATH_DLLAPI void mulC(iu::ImageGpu_64f_C3& src, const double3& val, iu::ImageGpu_64f_C3& dst);
218 IUMATH_DLLAPI void mulC(iu::ImageGpu_64f_C4& src, const double4& val, iu::ImageGpu_64f_C4& dst);
219 
220 IUMATH_DLLAPI void mulC(iu::ImageGpu_8u_C1& src, const unsigned char& val, iu::ImageGpu_8u_C1& dst);
221 IUMATH_DLLAPI void mulC(iu::ImageGpu_8u_C2& src, const uchar2& val, iu::ImageGpu_8u_C2& dst);
222 IUMATH_DLLAPI void mulC(iu::ImageGpu_8u_C3& src, const uchar3& val, iu::ImageGpu_8u_C3& dst);
223 IUMATH_DLLAPI void mulC(iu::ImageGpu_8u_C4& src, const uchar4& val, iu::ImageGpu_8u_C4& dst);
224 
225 IUMATH_DLLAPI void mulC(iu::ImageGpu_8u_C1& src, const unsigned char& val, iu::ImageGpu_8u_C1& dst);
226 IUMATH_DLLAPI void mulC(iu::ImageGpu_32s_C1& src, const int& val, iu::ImageGpu_32s_C1& dst);
227 IUMATH_DLLAPI void mulC(iu::ImageGpu_32u_C1& src, const unsigned int& val, iu::ImageGpu_32u_C1& dst);
228 IUMATH_DLLAPI void mulC(iu::ImageGpu_16u_C1& src, const unsigned short& val, iu::ImageGpu_16u_C1& dst);
229 
230 IUMATH_DLLAPI void mulC(iu::VolumeGpu_32f_C1& src, const float& val, iu::VolumeGpu_32f_C1& dst);
231 IUMATH_DLLAPI void mulC(iu::VolumeGpu_32f_C2& src, const float2& val, iu::VolumeGpu_32f_C2& dst);
232 IUMATH_DLLAPI void mulC(iu::VolumeGpu_32f_C3& src, const float3& val, iu::VolumeGpu_32f_C3& dst);
233 IUMATH_DLLAPI void mulC(iu::VolumeGpu_32f_C4& src, const float4& val, iu::VolumeGpu_32f_C4& dst);
234 
235 IUMATH_DLLAPI void mulC(iu::VolumeGpu_64f_C1& src, const double& val, iu::VolumeGpu_64f_C1& dst);
236 IUMATH_DLLAPI void mulC(iu::VolumeGpu_64f_C2& src, const double2& val, iu::VolumeGpu_64f_C2& dst);
237 IUMATH_DLLAPI void mulC(iu::VolumeGpu_64f_C3& src, const double3& val, iu::VolumeGpu_64f_C3& dst);
238 IUMATH_DLLAPI void mulC(iu::VolumeGpu_64f_C4& src, const double4& val, iu::VolumeGpu_64f_C4& dst);
239 
240 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_32f_C1& src, const float& val, iu::LinearDeviceMemory_32f_C1& dst);
241 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_32f_C2& src, const float2& val, iu::LinearDeviceMemory_32f_C2& dst);
242 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_32f_C3& src, const float3& val, iu::LinearDeviceMemory_32f_C3& dst);
243 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_32f_C4& src, const float4& val, iu::LinearDeviceMemory_32f_C4& dst);
244 
245 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_64f_C1& src, const double& val, iu::LinearDeviceMemory_64f_C1& dst);
246 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_64f_C2& src, const double2& val, iu::LinearDeviceMemory_64f_C2& dst);
247 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_64f_C3& src, const double3& val, iu::LinearDeviceMemory_64f_C3& dst);
248 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_64f_C4& src, const double4& val, iu::LinearDeviceMemory_64f_C4& dst);
249 
250 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_8u_C1& src, const unsigned char& val, iu::LinearDeviceMemory_8u_C1& dst);
251 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_8u_C2& src, const uchar2& val, iu::LinearDeviceMemory_8u_C2& dst);
252 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_8u_C3& src, const uchar3& val, iu::LinearDeviceMemory_8u_C3& dst);
253 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_8u_C4& src, const uchar4& val, iu::LinearDeviceMemory_8u_C4& dst);
254 
255 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_8u_C1& src, const unsigned char& val, iu::LinearDeviceMemory_8u_C1& dst);
256 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_32s_C1& src, const int& val, iu::LinearDeviceMemory_32s_C1& dst);
257 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_32u_C1& src, const unsigned int& val, iu::LinearDeviceMemory_32u_C1& dst);
258 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory_16u_C1& src, const unsigned short& val, iu::LinearDeviceMemory_16u_C1& dst);
259 
260 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float, 2>& src, const float& val, iu::LinearDeviceMemory<float, 2>& dst);
261 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float2, 2>& src, const float2& val, iu::LinearDeviceMemory<float2, 2>& dst);
262 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float3, 2>& src, const float3& val, iu::LinearDeviceMemory<float3, 2>& dst);
263 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float4, 2>& src, const float4& val, iu::LinearDeviceMemory<float4, 2>& dst);
264 
265 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float, 3>& src, const float& val, iu::LinearDeviceMemory<float, 3>& dst);
266 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float2, 3>& src, const float2& val, iu::LinearDeviceMemory<float2, 3>& dst);
267 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float3, 3>& src, const float3& val, iu::LinearDeviceMemory<float3, 3>& dst);
268 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float4, 3>& src, const float4& val, iu::LinearDeviceMemory<float4, 3>& dst);
269 
270 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float, 4>& src, const float& val, iu::LinearDeviceMemory<float, 4>& dst);
271 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float2, 4>& src, const float2& val, iu::LinearDeviceMemory<float2, 4>& dst);
272 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float3, 4>& src, const float3& val, iu::LinearDeviceMemory<float3, 4>& dst);
273 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float4, 4>& src, const float4& val, iu::LinearDeviceMemory<float4, 4>& dst);
274 
275 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float, 5>& src, const float& val, iu::LinearDeviceMemory<float, 5>& dst);
276 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float2, 5>& src, const float2& val, iu::LinearDeviceMemory<float2, 5>& dst);
277 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float3, 5>& src, const float3& val, iu::LinearDeviceMemory<float3, 5>& dst);
278 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<float4, 5>& src, const float4& val, iu::LinearDeviceMemory<float4, 5>& dst);
279 
280 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double, 2>& src, const double& val, iu::LinearDeviceMemory<double, 2>& dst);
281 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double2, 2>& src, const double2& val, iu::LinearDeviceMemory<double2, 2>& dst);
282 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double3, 2>& src, const double3& val, iu::LinearDeviceMemory<double3, 2>& dst);
283 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double4, 2>& src, const double4& val, iu::LinearDeviceMemory<double4, 2>& dst);
284 
285 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double, 3>& src, const double& val, iu::LinearDeviceMemory<double, 3>& dst);
286 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double2, 3>& src, const double2& val, iu::LinearDeviceMemory<double2, 3>& dst);
287 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double3, 3>& src, const double3& val, iu::LinearDeviceMemory<double3, 3>& dst);
288 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double4, 3>& src, const double4& val, iu::LinearDeviceMemory<double4, 3>& dst);
289 
290 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double, 4>& src, const double& val, iu::LinearDeviceMemory<double, 4>& dst);
291 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double2, 4>& src, const double2& val, iu::LinearDeviceMemory<double2, 4>& dst);
292 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double3, 4>& src, const double3& val, iu::LinearDeviceMemory<double3, 4>& dst);
293 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double4, 4>& src, const double4& val, iu::LinearDeviceMemory<double4, 4>& dst);
294 
295 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double, 5>& src, const double& val, iu::LinearDeviceMemory<double, 5>& dst);
296 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double2, 5>& src, const double2& val, iu::LinearDeviceMemory<double2, 5>& dst);
297 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double3, 5>& src, const double3& val, iu::LinearDeviceMemory<double3, 5>& dst);
298 IUMATH_DLLAPI void mulC(iu::LinearDeviceMemory<double4, 5>& src, const double4& val, iu::LinearDeviceMemory<double4, 5>& dst);
299 
300 IUMATH_DLLAPI void mulC(iu::ImageCpu_32f_C1& src, const float& val, iu::ImageCpu_32f_C1& dst);
301 IUMATH_DLLAPI void mulC(iu::ImageCpu_32f_C2& src, const float2& val, iu::ImageCpu_32f_C2& dst);
302 IUMATH_DLLAPI void mulC(iu::ImageCpu_32f_C3& src, const float3& val, iu::ImageCpu_32f_C3& dst);
303 IUMATH_DLLAPI void mulC(iu::ImageCpu_32f_C4& src, const float4& val, iu::ImageCpu_32f_C4& dst);
304 
305 IUMATH_DLLAPI void mulC(iu::ImageCpu_64f_C1& src, const double& val, iu::ImageCpu_64f_C1& dst);
306 IUMATH_DLLAPI void mulC(iu::ImageCpu_64f_C2& src, const double2& val, iu::ImageCpu_64f_C2& dst);
307 IUMATH_DLLAPI void mulC(iu::ImageCpu_64f_C3& src, const double3& val, iu::ImageCpu_64f_C3& dst);
308 IUMATH_DLLAPI void mulC(iu::ImageCpu_64f_C4& src, const double4& val, iu::ImageCpu_64f_C4& dst);
309 
310 IUMATH_DLLAPI void mulC(iu::ImageCpu_8u_C1& src, const unsigned char& val, iu::ImageCpu_8u_C1& dst);
311 IUMATH_DLLAPI void mulC(iu::ImageCpu_8u_C2& src, const uchar2& val, iu::ImageCpu_8u_C2& dst);
312 IUMATH_DLLAPI void mulC(iu::ImageCpu_8u_C3& src, const uchar3& val, iu::ImageCpu_8u_C3& dst);
313 IUMATH_DLLAPI void mulC(iu::ImageCpu_8u_C4& src, const uchar4& val, iu::ImageCpu_8u_C4& dst);
314 
315 IUMATH_DLLAPI void mulC(iu::ImageCpu_8u_C1& src, const unsigned char& val, iu::ImageCpu_8u_C1& dst);
316 IUMATH_DLLAPI void mulC(iu::ImageCpu_32s_C1& src, const int& val, iu::ImageCpu_32s_C1& dst);
317 IUMATH_DLLAPI void mulC(iu::ImageCpu_32u_C1& src, const unsigned int& val, iu::ImageCpu_32u_C1& dst);
318 IUMATH_DLLAPI void mulC(iu::ImageCpu_16u_C1& src, const unsigned short& val, iu::ImageCpu_16u_C1& dst);
319 
320 IUMATH_DLLAPI void mulC(iu::VolumeCpu_32f_C1& src, const float& val, iu::VolumeCpu_32f_C1& dst);
321 IUMATH_DLLAPI void mulC(iu::VolumeCpu_32f_C2& src, const float2& val, iu::VolumeCpu_32f_C2& dst);
322 IUMATH_DLLAPI void mulC(iu::VolumeCpu_32f_C3& src, const float3& val, iu::VolumeCpu_32f_C3& dst);
323 IUMATH_DLLAPI void mulC(iu::VolumeCpu_32f_C4& src, const float4& val, iu::VolumeCpu_32f_C4& dst);
324 
325 IUMATH_DLLAPI void mulC(iu::VolumeCpu_64f_C1& src, const double& val, iu::VolumeCpu_64f_C1& dst);
326 IUMATH_DLLAPI void mulC(iu::VolumeCpu_64f_C2& src, const double2& val, iu::VolumeCpu_64f_C2& dst);
327 IUMATH_DLLAPI void mulC(iu::VolumeCpu_64f_C3& src, const double3& val, iu::VolumeCpu_64f_C3& dst);
328 IUMATH_DLLAPI void mulC(iu::VolumeCpu_64f_C4& src, const double4& val, iu::VolumeCpu_64f_C4& dst);
329 
330 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_32f_C1& src, const float& val, iu::LinearHostMemory_32f_C1& dst);
331 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_32f_C2& src, const float2& val, iu::LinearHostMemory_32f_C2& dst);
332 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_32f_C3& src, const float3& val, iu::LinearHostMemory_32f_C3& dst);
333 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_32f_C4& src, const float4& val, iu::LinearHostMemory_32f_C4& dst);
334 
335 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_64f_C1& src, const double& val, iu::LinearHostMemory_64f_C1& dst);
336 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_64f_C2& src, const double2& val, iu::LinearHostMemory_64f_C2& dst);
337 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_64f_C3& src, const double3& val, iu::LinearHostMemory_64f_C3& dst);
338 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_64f_C4& src, const double4& val, iu::LinearHostMemory_64f_C4& dst);
339 
340 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_8u_C1& src, const unsigned char& val, iu::LinearHostMemory_8u_C1& dst);
341 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_8u_C2& src, const uchar2& val, iu::LinearHostMemory_8u_C2& dst);
342 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_8u_C3& src, const uchar3& val, iu::LinearHostMemory_8u_C3& dst);
343 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_8u_C4& src, const uchar4& val, iu::LinearHostMemory_8u_C4& dst);
344 
345 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_8u_C1& src, const unsigned char& val, iu::LinearHostMemory_8u_C1& dst);
346 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_32s_C1& src, const int& val, iu::LinearHostMemory_32s_C1& dst);
347 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_32u_C1& src, const unsigned int& val, iu::LinearHostMemory_32u_C1& dst);
348 IUMATH_DLLAPI void mulC(iu::LinearHostMemory_16u_C1& src, const unsigned short& val, iu::LinearHostMemory_16u_C1& dst);
349 
350 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float, 2>& src, const float& val, iu::LinearHostMemory<float, 2>& dst);
351 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float2, 2>& src, const float2& val, iu::LinearHostMemory<float2, 2>& dst);
352 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float3, 2>& src, const float3& val, iu::LinearHostMemory<float3, 2>& dst);
353 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float4, 2>& src, const float4& val, iu::LinearHostMemory<float4, 2>& dst);
354 
355 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float, 3>& src, const float& val, iu::LinearHostMemory<float, 3>& dst);
356 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float2, 3>& src, const float2& val, iu::LinearHostMemory<float2, 3>& dst);
357 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float3, 3>& src, const float3& val, iu::LinearHostMemory<float3, 3>& dst);
358 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float4, 3>& src, const float4& val, iu::LinearHostMemory<float4, 3>& dst);
359 
360 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float, 4>& src, const float& val, iu::LinearHostMemory<float, 4>& dst);
361 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float2, 4>& src, const float2& val, iu::LinearHostMemory<float2, 4>& dst);
362 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float3, 4>& src, const float3& val, iu::LinearHostMemory<float3, 4>& dst);
363 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float4, 4>& src, const float4& val, iu::LinearHostMemory<float4, 4>& dst);
364 
365 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float, 5>& src, const float& val, iu::LinearHostMemory<float, 5>& dst);
366 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float2, 5>& src, const float2& val, iu::LinearHostMemory<float2, 5>& dst);
367 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float3, 5>& src, const float3& val, iu::LinearHostMemory<float3, 5>& dst);
368 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<float4, 5>& src, const float4& val, iu::LinearHostMemory<float4, 5>& dst);
369 
370 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double, 2>& src, const double& val, iu::LinearHostMemory<double, 2>& dst);
371 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double2, 2>& src, const double2& val, iu::LinearHostMemory<double2, 2>& dst);
372 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double3, 2>& src, const double3& val, iu::LinearHostMemory<double3, 2>& dst);
373 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double4, 2>& src, const double4& val, iu::LinearHostMemory<double4, 2>& dst);
374 
375 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double, 3>& src, const double& val, iu::LinearHostMemory<double, 3>& dst);
376 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double2, 3>& src, const double2& val, iu::LinearHostMemory<double2, 3>& dst);
377 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double3, 3>& src, const double3& val, iu::LinearHostMemory<double3, 3>& dst);
378 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double4, 3>& src, const double4& val, iu::LinearHostMemory<double4, 3>& dst);
379 
380 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double, 4>& src, const double& val, iu::LinearHostMemory<double, 4>& dst);
381 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double2, 4>& src, const double2& val, iu::LinearHostMemory<double2, 4>& dst);
382 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double3, 4>& src, const double3& val, iu::LinearHostMemory<double3, 4>& dst);
383 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double4, 4>& src, const double4& val, iu::LinearHostMemory<double4, 4>& dst);
384 
385 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double, 5>& src, const double& val, iu::LinearHostMemory<double, 5>& dst);
386 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double2, 5>& src, const double2& val, iu::LinearHostMemory<double2, 5>& dst);
387 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double3, 5>& src, const double3& val, iu::LinearHostMemory<double3, 5>& dst);
388 IUMATH_DLLAPI void mulC(iu::LinearHostMemory<double4, 5>& src, const double4& val, iu::LinearHostMemory<double4, 5>& dst);
389 
390 // pointwise weighted add
398 IUMATH_DLLAPI void addWeighted(iu::ImageGpu_32f_C1& src1, const float& weight1,
399  iu::ImageGpu_32f_C1& src2, const float& weight2,iu::ImageGpu_32f_C1& dst);
400 IUMATH_DLLAPI void addWeighted(iu::ImageGpu_32f_C2& src1, const float2& weight1,
401  iu::ImageGpu_32f_C2& src2, const float2& weight2,iu::ImageGpu_32f_C2& dst);
402 IUMATH_DLLAPI void addWeighted(iu::ImageGpu_32f_C3& src1, const float3& weight1,
403  iu::ImageGpu_32f_C3& src2, const float3& weight2,iu::ImageGpu_32f_C3& dst);
404 IUMATH_DLLAPI void addWeighted(iu::ImageGpu_32f_C4& src1, const float4& weight1,
405  iu::ImageGpu_32f_C4& src2, const float4& weight2,iu::ImageGpu_32f_C4& dst);
406 
407 IUMATH_DLLAPI void addWeighted(iu::ImageGpu_64f_C1& src1, const double& weight1,
408  iu::ImageGpu_64f_C1& src2, const double& weight2,iu::ImageGpu_64f_C1& dst);
409 IUMATH_DLLAPI void addWeighted(iu::ImageGpu_64f_C2& src1, const double2& weight1,
410  iu::ImageGpu_64f_C2& src2, const double2& weight2,iu::ImageGpu_64f_C2& dst);
411 IUMATH_DLLAPI void addWeighted(iu::ImageGpu_64f_C3& src1, const double3& weight1,
412  iu::ImageGpu_64f_C3& src2, const double3& weight2,iu::ImageGpu_64f_C3& dst);
413 IUMATH_DLLAPI void addWeighted(iu::ImageGpu_64f_C4& src1, const double4& weight1,
414  iu::ImageGpu_64f_C4& src2, const double4& weight2,iu::ImageGpu_64f_C4& dst);
415 
416 IUMATH_DLLAPI void addWeighted(iu::ImageGpu_8u_C1& src1, const unsigned char& weight1,
417  iu::ImageGpu_8u_C1& src2, const unsigned char& weight2,iu::ImageGpu_8u_C1& dst);
418 IUMATH_DLLAPI void addWeighted(iu::ImageGpu_8u_C4& src1, const uchar4& weight1,
419  iu::ImageGpu_8u_C4& src2, const uchar4& weight2,iu::ImageGpu_8u_C4& dst);
420 
421 IUMATH_DLLAPI void addWeighted(iu::VolumeGpu_32f_C1& src1, const float& weight1,
422  iu::VolumeGpu_32f_C1& src2, const float& weight2,iu::VolumeGpu_32f_C1& dst);
423 IUMATH_DLLAPI void addWeighted(iu::VolumeGpu_32f_C2& src1, const float2& weight1,
424  iu::VolumeGpu_32f_C2& src2, const float2& weight2,iu::VolumeGpu_32f_C2& dst);
425 IUMATH_DLLAPI void addWeighted(iu::VolumeGpu_64f_C1& src1, const double& weight1,
426  iu::VolumeGpu_64f_C1& src2, const double& weight2,iu::VolumeGpu_64f_C1& dst);
427 IUMATH_DLLAPI void addWeighted(iu::VolumeGpu_64f_C2& src1, const double2& weight1,
428  iu::VolumeGpu_64f_C2& src2, const double2& weight2,iu::VolumeGpu_64f_C2& dst);
429 
430 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory_32f_C1& src1, const float& weight1,
431  iu::LinearDeviceMemory_32f_C1& src2, const float& weight2,iu::LinearDeviceMemory_32f_C1& dst);
432 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory_32f_C2& src1, const float2& weight1,
433  iu::LinearDeviceMemory_32f_C2& src2, const float2& weight2,iu::LinearDeviceMemory_32f_C2& dst);
434 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory_32f_C3& src1, const float3& weight1,
435  iu::LinearDeviceMemory_32f_C3& src2, const float3& weight2,iu::LinearDeviceMemory_32f_C3& dst);
436 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory_32f_C4& src1, const float4& weight1,
437  iu::LinearDeviceMemory_32f_C4& src2, const float4& weight2,iu::LinearDeviceMemory_32f_C4& dst);
438 
439 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory_64f_C1& src1, const double& weight1,
440  iu::LinearDeviceMemory_64f_C1& src2, const double& weight2,iu::LinearDeviceMemory_64f_C1& dst);
441 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory_64f_C2& src1, const double2& weight1,
442  iu::LinearDeviceMemory_64f_C2& src2, const double2& weight2,iu::LinearDeviceMemory_64f_C2& dst);
443 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory_64f_C3& src1, const double3& weight1,
444  iu::LinearDeviceMemory_64f_C3& src2, const double3& weight2,iu::LinearDeviceMemory_64f_C3& dst);
445 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory_64f_C4& src1, const double4& weight1,
446  iu::LinearDeviceMemory_64f_C4& src2, const double4& weight2,iu::LinearDeviceMemory_64f_C4& dst);
447 
448 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory_8u_C1& src1, const unsigned char& weight1,
449  iu::LinearDeviceMemory_8u_C1& src2, const unsigned char& weight2,iu::LinearDeviceMemory_8u_C1& dst);
450 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory_8u_C4& src1, const uchar4& weight1,
451  iu::LinearDeviceMemory_8u_C4& src2, const uchar4& weight2,iu::LinearDeviceMemory_8u_C4& dst);
452 
453 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float, 2>& src1, const float& weight1,
454  iu::LinearDeviceMemory<float, 2>& src2, const float& weight2,iu::LinearDeviceMemory<float, 2>& dst);
455 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float2, 2>& src1, const float2& weight1,
456  iu::LinearDeviceMemory<float2, 2>& src2, const float2& weight2,iu::LinearDeviceMemory<float2, 2>& dst);
457 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float3, 2>& src1, const float3& weight1,
458  iu::LinearDeviceMemory<float3, 2>& src2, const float3& weight2,iu::LinearDeviceMemory<float3, 2>& dst);
459 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float4, 2>& src1, const float4& weight1,
460  iu::LinearDeviceMemory<float4, 2>& src2, const float4& weight2,iu::LinearDeviceMemory<float4, 2>& dst);
461 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float, 3>& src1, const float& weight1,
462  iu::LinearDeviceMemory<float, 3>& src2, const float& weight2,iu::LinearDeviceMemory<float, 3>& dst);
463 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float2, 3>& src1, const float2& weight1,
464  iu::LinearDeviceMemory<float2, 3>& src2, const float2& weight2,iu::LinearDeviceMemory<float2, 3>& dst);
465 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float3, 3>& src1, const float3& weight1,
466  iu::LinearDeviceMemory<float3, 3>& src2, const float3& weight2,iu::LinearDeviceMemory<float3, 3>& dst);
467 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float4, 3>& src1, const float4& weight1,
468  iu::LinearDeviceMemory<float4, 3>& src2, const float4& weight2,iu::LinearDeviceMemory<float4, 3>& dst);
469 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float, 4>& src1, const float& weight1,
470  iu::LinearDeviceMemory<float, 4>& src2, const float& weight2,iu::LinearDeviceMemory<float, 4>& dst);
471 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float2, 4>& src1, const float2& weight1,
472  iu::LinearDeviceMemory<float2, 4>& src2, const float2& weight2,iu::LinearDeviceMemory<float2, 4>& dst);
473 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float3, 4>& src1, const float3& weight1,
474  iu::LinearDeviceMemory<float3, 4>& src2, const float3& weight2,iu::LinearDeviceMemory<float3, 4>& dst);
475 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float4, 4>& src1, const float4& weight1,
476  iu::LinearDeviceMemory<float4, 4>& src2, const float4& weight2,iu::LinearDeviceMemory<float4, 4>& dst);
477 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float, 5>& src1, const float& weight1,
478  iu::LinearDeviceMemory<float, 5>& src2, const float& weight2,iu::LinearDeviceMemory<float, 5>& dst);
479 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float2, 5>& src1, const float2& weight1,
480  iu::LinearDeviceMemory<float2, 5>& src2, const float2& weight2,iu::LinearDeviceMemory<float2, 5>& dst);
481 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float3, 5>& src1, const float3& weight1,
482  iu::LinearDeviceMemory<float3, 5>& src2, const float3& weight2,iu::LinearDeviceMemory<float3, 5>& dst);
483 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<float4, 5>& src1, const float4& weight1,
484  iu::LinearDeviceMemory<float4, 5>& src2, const float4& weight2,iu::LinearDeviceMemory<float4, 5>& dst);
485 
486 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double, 2>& src1, const double& weight1,
487  iu::LinearDeviceMemory<double, 2>& src2, const double& weight2,iu::LinearDeviceMemory<double, 2>& dst);
488 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double2, 2>& src1, const double2& weight1,
490 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double3, 2>& src1, const double3& weight1,
492 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double4, 2>& src1, const double4& weight1,
494 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double, 3>& src1, const double& weight1,
495  iu::LinearDeviceMemory<double, 3>& src2, const double& weight2,iu::LinearDeviceMemory<double, 3>& dst);
496 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double2, 3>& src1, const double2& weight1,
498 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double3, 3>& src1, const double3& weight1,
500 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double4, 3>& src1, const double4& weight1,
502 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double, 4>& src1, const double& weight1,
503  iu::LinearDeviceMemory<double, 4>& src2, const double& weight2,iu::LinearDeviceMemory<double, 4>& dst);
504 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double2, 4>& src1, const double2& weight1,
506 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double3, 4>& src1, const double3& weight1,
508 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double4, 4>& src1, const double4& weight1,
510 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double, 5>& src1, const double& weight1,
511  iu::LinearDeviceMemory<double, 5>& src2, const double& weight2,iu::LinearDeviceMemory<double, 5>& dst);
512 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double2, 5>& src1, const double2& weight1,
514 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double3, 5>& src1, const double3& weight1,
516 IUMATH_DLLAPI void addWeighted(iu::LinearDeviceMemory<double4, 5>& src1, const double4& weight1,
518 
519 IUMATH_DLLAPI void addWeighted(iu::ImageCpu_32f_C1& src1, const float& weight1,
520  iu::ImageCpu_32f_C1& src2, const float& weight2,iu::ImageCpu_32f_C1& dst);
521 IUMATH_DLLAPI void addWeighted(iu::ImageCpu_32f_C2& src1, const float2& weight1,
522  iu::ImageCpu_32f_C2& src2, const float2& weight2,iu::ImageCpu_32f_C2& dst);
523 IUMATH_DLLAPI void addWeighted(iu::ImageCpu_32f_C3& src1, const float3& weight1,
524  iu::ImageCpu_32f_C3& src2, const float3& weight2,iu::ImageCpu_32f_C3& dst);
525 IUMATH_DLLAPI void addWeighted(iu::ImageCpu_32f_C4& src1, const float4& weight1,
526  iu::ImageCpu_32f_C4& src2, const float4& weight2,iu::ImageCpu_32f_C4& dst);
527 
528 IUMATH_DLLAPI void addWeighted(iu::ImageCpu_64f_C1& src1, const double& weight1,
529  iu::ImageCpu_64f_C1& src2, const double& weight2,iu::ImageCpu_64f_C1& dst);
530 IUMATH_DLLAPI void addWeighted(iu::ImageCpu_64f_C2& src1, const double2& weight1,
531  iu::ImageCpu_64f_C2& src2, const double2& weight2,iu::ImageCpu_64f_C2& dst);
532 IUMATH_DLLAPI void addWeighted(iu::ImageCpu_64f_C3& src1, const double3& weight1,
533  iu::ImageCpu_64f_C3& src2, const double3& weight2,iu::ImageCpu_64f_C3& dst);
534 IUMATH_DLLAPI void addWeighted(iu::ImageCpu_64f_C4& src1, const double4& weight1,
535  iu::ImageCpu_64f_C4& src2, const double4& weight2,iu::ImageCpu_64f_C4& dst);
536 
537 IUMATH_DLLAPI void addWeighted(iu::ImageCpu_8u_C1& src1, const unsigned char& weight1,
538  iu::ImageCpu_8u_C1& src2, const unsigned char& weight2,iu::ImageCpu_8u_C1& dst);
539 IUMATH_DLLAPI void addWeighted(iu::ImageCpu_8u_C4& src1, const uchar4& weight1,
540  iu::ImageCpu_8u_C4& src2, const uchar4& weight2,iu::ImageCpu_8u_C4& dst);
541 
542 IUMATH_DLLAPI void addWeighted(iu::VolumeCpu_32f_C1& src1, const float& weight1,
543  iu::VolumeCpu_32f_C1& src2, const float& weight2,iu::VolumeCpu_32f_C1& dst);
544 IUMATH_DLLAPI void addWeighted(iu::VolumeCpu_32f_C2& src1, const float2& weight1,
545  iu::VolumeCpu_32f_C2& src2, const float2& weight2,iu::VolumeCpu_32f_C2& dst);
546 IUMATH_DLLAPI void addWeighted(iu::VolumeCpu_64f_C1& src1, const double& weight1,
547  iu::VolumeCpu_64f_C1& src2, const double& weight2,iu::VolumeCpu_64f_C1& dst);
548 IUMATH_DLLAPI void addWeighted(iu::VolumeCpu_64f_C2& src1, const double2& weight1,
549  iu::VolumeCpu_64f_C2& src2, const double2& weight2,iu::VolumeCpu_64f_C2& dst);
550 
551 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory_32f_C1& src1, const float& weight1,
552  iu::LinearHostMemory_32f_C1& src2, const float& weight2,iu::LinearHostMemory_32f_C1& dst);
553 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory_32f_C2& src1, const float2& weight1,
554  iu::LinearHostMemory_32f_C2& src2, const float2& weight2,iu::LinearHostMemory_32f_C2& dst);
555 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory_32f_C3& src1, const float3& weight1,
556  iu::LinearHostMemory_32f_C3& src2, const float3& weight2,iu::LinearHostMemory_32f_C3& dst);
557 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory_32f_C4& src1, const float4& weight1,
558  iu::LinearHostMemory_32f_C4& src2, const float4& weight2,iu::LinearHostMemory_32f_C4& dst);
559 
560 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory_64f_C1& src1, const double& weight1,
561  iu::LinearHostMemory_64f_C1& src2, const double& weight2,iu::LinearHostMemory_64f_C1& dst);
562 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory_64f_C2& src1, const double2& weight1,
563  iu::LinearHostMemory_64f_C2& src2, const double2& weight2,iu::LinearHostMemory_64f_C2& dst);
564 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory_64f_C3& src1, const double3& weight1,
565  iu::LinearHostMemory_64f_C3& src2, const double3& weight2,iu::LinearHostMemory_64f_C3& dst);
566 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory_64f_C4& src1, const double4& weight1,
567  iu::LinearHostMemory_64f_C4& src2, const double4& weight2,iu::LinearHostMemory_64f_C4& dst);
568 
569 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory_8u_C1& src1, const unsigned char& weight1,
570  iu::LinearHostMemory_8u_C1& src2, const unsigned char& weight2,iu::LinearHostMemory_8u_C1& dst);
571 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory_8u_C4& src1, const uchar4& weight1,
572  iu::LinearHostMemory_8u_C4& src2, const uchar4& weight2,iu::LinearHostMemory_8u_C4& dst);
573 
574 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float, 2>& src1, const float& weight1,
575  iu::LinearHostMemory<float, 2>& src2, const float& weight2,iu::LinearHostMemory<float, 2>& dst);
576 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float2, 2>& src1, const float2& weight1,
577  iu::LinearHostMemory<float2, 2>& src2, const float2& weight2,iu::LinearHostMemory<float2, 2>& dst);
578 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float3, 2>& src1, const float3& weight1,
579  iu::LinearHostMemory<float3, 2>& src2, const float3& weight2,iu::LinearHostMemory<float3, 2>& dst);
580 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float4, 2>& src1, const float4& weight1,
581  iu::LinearHostMemory<float4, 2>& src2, const float4& weight2,iu::LinearHostMemory<float4, 2>& dst);
582 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float, 3>& src1, const float& weight1,
583  iu::LinearHostMemory<float, 3>& src2, const float& weight2,iu::LinearHostMemory<float, 3>& dst);
584 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float2, 3>& src1, const float2& weight1,
585  iu::LinearHostMemory<float2, 3>& src2, const float2& weight2,iu::LinearHostMemory<float2, 3>& dst);
586 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float3, 3>& src1, const float3& weight1,
587  iu::LinearHostMemory<float3, 3>& src2, const float3& weight2,iu::LinearHostMemory<float3, 3>& dst);
588 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float4, 3>& src1, const float4& weight1,
589  iu::LinearHostMemory<float4, 3>& src2, const float4& weight2,iu::LinearHostMemory<float4, 3>& dst);
590 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float, 4>& src1, const float& weight1,
591  iu::LinearHostMemory<float, 4>& src2, const float& weight2,iu::LinearHostMemory<float, 4>& dst);
592 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float2, 4>& src1, const float2& weight1,
593  iu::LinearHostMemory<float2, 4>& src2, const float2& weight2,iu::LinearHostMemory<float2, 4>& dst);
594 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float3, 4>& src1, const float3& weight1,
595  iu::LinearHostMemory<float3, 4>& src2, const float3& weight2,iu::LinearHostMemory<float3, 4>& dst);
596 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float4, 4>& src1, const float4& weight1,
597  iu::LinearHostMemory<float4, 4>& src2, const float4& weight2,iu::LinearHostMemory<float4, 4>& dst);
598 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float, 5>& src1, const float& weight1,
599  iu::LinearHostMemory<float, 5>& src2, const float& weight2,iu::LinearHostMemory<float, 5>& dst);
600 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float2, 5>& src1, const float2& weight1,
601  iu::LinearHostMemory<float2, 5>& src2, const float2& weight2,iu::LinearHostMemory<float2, 5>& dst);
602 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float3, 5>& src1, const float3& weight1,
603  iu::LinearHostMemory<float3, 5>& src2, const float3& weight2,iu::LinearHostMemory<float3, 5>& dst);
604 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<float4, 5>& src1, const float4& weight1,
605  iu::LinearHostMemory<float4, 5>& src2, const float4& weight2,iu::LinearHostMemory<float4, 5>& dst);
606 
607 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double, 2>& src1, const double& weight1,
608  iu::LinearHostMemory<double, 2>& src2, const double& weight2,iu::LinearHostMemory<double, 2>& dst);
609 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double2, 2>& src1, const double2& weight1,
610  iu::LinearHostMemory<double2, 2>& src2, const double2& weight2,iu::LinearHostMemory<double2, 2>& dst);
611 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double3, 2>& src1, const double3& weight1,
612  iu::LinearHostMemory<double3, 2>& src2, const double3& weight2,iu::LinearHostMemory<double3, 2>& dst);
613 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double4, 2>& src1, const double4& weight1,
614  iu::LinearHostMemory<double4, 2>& src2, const double4& weight2,iu::LinearHostMemory<double4, 2>& dst);
615 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double, 3>& src1, const double& weight1,
616  iu::LinearHostMemory<double, 3>& src2, const double& weight2,iu::LinearHostMemory<double, 3>& dst);
617 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double2, 3>& src1, const double2& weight1,
618  iu::LinearHostMemory<double2, 3>& src2, const double2& weight2,iu::LinearHostMemory<double2, 3>& dst);
619 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double3, 3>& src1, const double3& weight1,
620  iu::LinearHostMemory<double3, 3>& src2, const double3& weight2,iu::LinearHostMemory<double3, 3>& dst);
621 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double4, 3>& src1, const double4& weight1,
622  iu::LinearHostMemory<double4, 3>& src2, const double4& weight2,iu::LinearHostMemory<double4, 3>& dst);
623 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double, 4>& src1, const double& weight1,
624  iu::LinearHostMemory<double, 4>& src2, const double& weight2,iu::LinearHostMemory<double, 4>& dst);
625 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double2, 4>& src1, const double2& weight1,
626  iu::LinearHostMemory<double2, 4>& src2, const double2& weight2,iu::LinearHostMemory<double2, 4>& dst);
627 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double3, 4>& src1, const double3& weight1,
628  iu::LinearHostMemory<double3, 4>& src2, const double3& weight2,iu::LinearHostMemory<double3, 4>& dst);
629 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double4, 4>& src1, const double4& weight1,
630  iu::LinearHostMemory<double4, 4>& src2, const double4& weight2,iu::LinearHostMemory<double4, 4>& dst);
631 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double, 5>& src1, const double& weight1,
632  iu::LinearHostMemory<double, 5>& src2, const double& weight2,iu::LinearHostMemory<double, 5>& dst);
633 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double2, 5>& src1, const double2& weight1,
634  iu::LinearHostMemory<double2, 5>& src2, const double2& weight2,iu::LinearHostMemory<double2, 5>& dst);
635 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double3, 5>& src1, const double3& weight1,
636  iu::LinearHostMemory<double3, 5>& src2, const double3& weight2,iu::LinearHostMemory<double3, 5>& dst);
637 IUMATH_DLLAPI void addWeighted(iu::LinearHostMemory<double4, 5>& src1, const double4& weight1,
638  iu::LinearHostMemory<double4, 5>& src2, const double4& weight2,iu::LinearHostMemory<double4, 5>& dst);
639 
640 // pointwise multiply
646 IUMATH_DLLAPI void mul(iu::ImageGpu_32f_C1& src1, iu::ImageGpu_32f_C1& src2, iu::ImageGpu_32f_C1& dst);
647 IUMATH_DLLAPI void mul(iu::ImageGpu_32f_C2& src1, iu::ImageGpu_32f_C2& src2, iu::ImageGpu_32f_C2& dst);
648 IUMATH_DLLAPI void mul(iu::ImageGpu_32f_C3& src1, iu::ImageGpu_32f_C3& src2, iu::ImageGpu_32f_C3& dst);
649 IUMATH_DLLAPI void mul(iu::ImageGpu_32f_C4& src1, iu::ImageGpu_32f_C4& src2, iu::ImageGpu_32f_C4& dst);
650 
651 IUMATH_DLLAPI void mul(iu::ImageGpu_64f_C1& src1, iu::ImageGpu_64f_C1& src2, iu::ImageGpu_64f_C1& dst);
652 IUMATH_DLLAPI void mul(iu::ImageGpu_64f_C2& src1, iu::ImageGpu_64f_C2& src2, iu::ImageGpu_64f_C2& dst);
653 IUMATH_DLLAPI void mul(iu::ImageGpu_64f_C3& src1, iu::ImageGpu_64f_C3& src2, iu::ImageGpu_64f_C3& dst);
654 IUMATH_DLLAPI void mul(iu::ImageGpu_64f_C4& src1, iu::ImageGpu_64f_C4& src2, iu::ImageGpu_64f_C4& dst);
655 
656 IUMATH_DLLAPI void mul(iu::ImageGpu_8u_C1& src1, iu::ImageGpu_8u_C1& src2, iu::ImageGpu_8u_C1& dst);
657 IUMATH_DLLAPI void mul(iu::ImageGpu_8u_C4& src1, iu::ImageGpu_8u_C4& src2, iu::ImageGpu_8u_C4& dst);
658 
659 IUMATH_DLLAPI void mul(iu::VolumeGpu_32f_C1& src1, iu::VolumeGpu_32f_C1& src2, iu::VolumeGpu_32f_C1& dst);
660 
661 IUMATH_DLLAPI void mul(iu::VolumeGpu_64f_C1& src1, iu::VolumeGpu_64f_C1& src2, iu::VolumeGpu_64f_C1& dst);
662 
667 
668 
685 
702 
707 
708 
711 
712 IUMATH_DLLAPI void mul(iu::ImageCpu_32f_C1& src1, iu::ImageCpu_32f_C1& src2, iu::ImageCpu_32f_C1& dst);
713 IUMATH_DLLAPI void mul(iu::ImageCpu_32f_C2& src1, iu::ImageCpu_32f_C2& src2, iu::ImageCpu_32f_C2& dst);
714 IUMATH_DLLAPI void mul(iu::ImageCpu_32f_C3& src1, iu::ImageCpu_32f_C3& src2, iu::ImageCpu_32f_C3& dst);
715 IUMATH_DLLAPI void mul(iu::ImageCpu_32f_C4& src1, iu::ImageCpu_32f_C4& src2, iu::ImageCpu_32f_C4& dst);
716 
717 IUMATH_DLLAPI void mul(iu::ImageCpu_64f_C1& src1, iu::ImageCpu_64f_C1& src2, iu::ImageCpu_64f_C1& dst);
718 IUMATH_DLLAPI void mul(iu::ImageCpu_64f_C2& src1, iu::ImageCpu_64f_C2& src2, iu::ImageCpu_64f_C2& dst);
719 IUMATH_DLLAPI void mul(iu::ImageCpu_64f_C3& src1, iu::ImageCpu_64f_C3& src2, iu::ImageCpu_64f_C3& dst);
720 IUMATH_DLLAPI void mul(iu::ImageCpu_64f_C4& src1, iu::ImageCpu_64f_C4& src2, iu::ImageCpu_64f_C4& dst);
721 
722 IUMATH_DLLAPI void mul(iu::ImageCpu_8u_C1& src1, iu::ImageCpu_8u_C1& src2, iu::ImageCpu_8u_C1& dst);
723 IUMATH_DLLAPI void mul(iu::ImageCpu_8u_C4& src1, iu::ImageCpu_8u_C4& src2, iu::ImageCpu_8u_C4& dst);
724 
725 IUMATH_DLLAPI void mul(iu::VolumeCpu_32f_C1& src1, iu::VolumeCpu_32f_C1& src2, iu::VolumeCpu_32f_C1& dst);
726 
727 IUMATH_DLLAPI void mul(iu::VolumeCpu_64f_C1& src1, iu::VolumeCpu_64f_C1& src2, iu::VolumeCpu_64f_C1& dst);
728 
733 
750 
767 
772 
773 
776 
777 // set value
782 IUMATH_DLLAPI void fill(iu::ImageGpu_32f_C1& dst, float value);
783 IUMATH_DLLAPI void fill(iu::ImageGpu_32f_C2& dst, float2 value);
784 IUMATH_DLLAPI void fill(iu::ImageGpu_32f_C4& dst, float4 value);
785 IUMATH_DLLAPI void fill(iu::ImageGpu_64f_C1& dst, double value);
786 IUMATH_DLLAPI void fill(iu::ImageGpu_64f_C2& dst, double2 value);
787 IUMATH_DLLAPI void fill(iu::ImageGpu_64f_C4& dst, double4 value);
788 IUMATH_DLLAPI void fill(iu::ImageGpu_32u_C1& dst, unsigned int value);
789 IUMATH_DLLAPI void fill(iu::ImageGpu_8u_C1& dst, unsigned char value);
790 IUMATH_DLLAPI void fill(iu::ImageGpu_8u_C2& dst, uchar2 value);
791 IUMATH_DLLAPI void fill(iu::ImageGpu_8u_C4& dst, uchar4 value);
792 
793 IUMATH_DLLAPI void fill(iu::ImageCpu_32f_C1& dst, float value);
794 IUMATH_DLLAPI void fill(iu::ImageCpu_32f_C2& dst, float2 value);
795 IUMATH_DLLAPI void fill(iu::ImageCpu_32f_C4& dst, float4 value);
796 IUMATH_DLLAPI void fill(iu::ImageCpu_64f_C1& dst, double value);
797 IUMATH_DLLAPI void fill(iu::ImageCpu_64f_C2& dst, double2 value);
798 IUMATH_DLLAPI void fill(iu::ImageCpu_64f_C4& dst, double4 value);
799 IUMATH_DLLAPI void fill(iu::ImageCpu_8u_C1& dst, unsigned char value);
800 IUMATH_DLLAPI void fill(iu::ImageCpu_8u_C2& dst, uchar2 value);
801 IUMATH_DLLAPI void fill(iu::ImageCpu_8u_C4& dst, uchar4 value);
802 
803 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory_32f_C1& dst, float value);
804 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory_32f_C2& dst, float2 value);
805 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory_32f_C3& dst, float3 value);
806 
807 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory_64f_C1& dst, double value);
808 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory_64f_C2& dst, double2 value);
809 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory_64f_C3& dst, double3 value);
810 
811 IUMATH_DLLAPI void fill(iu::LinearHostMemory_32f_C1& dst, float value);
812 IUMATH_DLLAPI void fill(iu::LinearHostMemory_32f_C2& dst, float2 value);
813 IUMATH_DLLAPI void fill(iu::LinearHostMemory_32f_C3& dst, float3 value);
814 
815 IUMATH_DLLAPI void fill(iu::LinearHostMemory_64f_C1& dst, double value);
816 IUMATH_DLLAPI void fill(iu::LinearHostMemory_64f_C2& dst, double2 value);
817 IUMATH_DLLAPI void fill(iu::LinearHostMemory_64f_C3& dst, double3 value);
818 
819 IUMATH_DLLAPI void fill(iu::VolumeGpu_32f_C1& dst, float value);
820 IUMATH_DLLAPI void fill(iu::VolumeGpu_32f_C2& dst, float2 value);
821 IUMATH_DLLAPI void fill(iu::VolumeGpu_32f_C3& dst, float3 value);
822 
823 IUMATH_DLLAPI void fill(iu::VolumeGpu_64f_C1& dst, double value);
824 IUMATH_DLLAPI void fill(iu::VolumeGpu_64f_C2& dst, double2 value);
825 IUMATH_DLLAPI void fill(iu::VolumeGpu_64f_C3& dst, double3 value);
826 
827 IUMATH_DLLAPI void fill(iu::VolumeCpu_32f_C1& dst, float value);
828 IUMATH_DLLAPI void fill(iu::VolumeCpu_32f_C2& dst, float2 value);
829 IUMATH_DLLAPI void fill(iu::VolumeCpu_32f_C3& dst, float3 value);
830 
831 IUMATH_DLLAPI void fill(iu::VolumeCpu_64f_C1& dst, double value);
832 IUMATH_DLLAPI void fill(iu::VolumeCpu_64f_C2& dst, double2 value);
833 IUMATH_DLLAPI void fill(iu::VolumeCpu_64f_C3& dst, double3 value);
834 
835 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float, 2>& dst, float value);
836 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float, 3>& dst, float value);
837 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float, 4>& dst, float value);
838 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float, 5>& dst, float value);
839 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float2, 2>& dst, float2 value);
840 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float2, 3>& dst, float2 value);
841 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float2, 4>& dst, float2 value);
842 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float2, 5>& dst, float2 value);
843 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float3, 2>& dst, float3 value);
844 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float3, 3>& dst, float3 value);
845 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float3, 4>& dst, float3 value);
846 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float3, 5>& dst, float3 value);
847 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float4, 2>& dst, float4 value);
848 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float4, 3>& dst, float4 value);
849 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float4, 4>& dst, float4 value);
850 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<float4, 5>& dst, float4 value);
851 
852 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float, 2>& dst, float value);
853 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float, 3>& dst, float value);
854 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float, 4>& dst, float value);
855 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float, 5>& dst, float value);
856 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float2, 2>& dst, float2 value);
857 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float2, 3>& dst, float2 value);
858 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float2, 4>& dst, float2 value);
859 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float2, 5>& dst, float2 value);
860 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float3, 2>& dst, float3 value);
861 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float3, 3>& dst, float3 value);
862 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float3, 4>& dst, float3 value);
863 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float3, 5>& dst, float3 value);
864 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float4, 2>& dst, float4 value);
865 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float4, 3>& dst, float4 value);
866 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float4, 4>& dst, float4 value);
867 IUMATH_DLLAPI void fill(iu::LinearHostMemory<float4, 5>& dst, float4 value);
868 
869 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double, 2>& dst, double value);
870 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double, 3>& dst, double value);
871 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double, 4>& dst, double value);
872 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double, 5>& dst, double value);
873 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double2, 2>& dst, double2 value);
874 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double2, 3>& dst, double2 value);
875 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double2, 4>& dst, double2 value);
876 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double2, 5>& dst, double2 value);
877 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double3, 2>& dst, double3 value);
878 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double3, 3>& dst, double3 value);
879 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double3, 4>& dst, double3 value);
880 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double3, 5>& dst, double3 value);
881 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double4, 2>& dst, double4 value);
882 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double4, 3>& dst, double4 value);
883 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double4, 4>& dst, double4 value);
884 IUMATH_DLLAPI void fill(iu::LinearDeviceMemory<double4, 5>& dst, double4 value);
885 
886 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double, 2>& dst, double value);
887 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double, 3>& dst, double value);
888 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double, 4>& dst, double value);
889 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double, 5>& dst, double value);
890 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double2, 2>& dst, double2 value);
891 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double2, 3>& dst, double2 value);
892 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double2, 4>& dst, double2 value);
893 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double2, 5>& dst, double2 value);
894 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double3, 2>& dst, double3 value);
895 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double3, 3>& dst, double3 value);
896 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double3, 4>& dst, double3 value);
897 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double3, 5>& dst, double3 value);
898 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double4, 2>& dst, double4 value);
899 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double4, 3>& dst, double4 value);
900 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double4, 4>& dst, double4 value);
901 IUMATH_DLLAPI void fill(iu::LinearHostMemory<double4, 5>& dst, double4 value);
902 
903 
910 IUMATH_DLLAPI void splitPlanes(iu::VolumeCpu_32f_C2& src, iu::VolumeCpu_32f_C1& dst1, iu::VolumeCpu_32f_C1& dst2);
911 IUMATH_DLLAPI void splitPlanes(iu::VolumeGpu_32f_C2& src, iu::VolumeGpu_32f_C1& dst1, iu::VolumeGpu_32f_C1& dst2);
912 IUMATH_DLLAPI void splitPlanes(iu::ImageCpu_32f_C2& src, iu::ImageCpu_32f_C1& dst1, iu::ImageCpu_32f_C1& dst2);
913 IUMATH_DLLAPI void splitPlanes(iu::ImageGpu_32f_C2& src, iu::ImageGpu_32f_C1& dst1, iu::ImageGpu_32f_C1& dst2);
916 
925 
926 IUMATH_DLLAPI void splitPlanes(iu::VolumeCpu_64f_C2& src, iu::VolumeCpu_64f_C1& dst1, iu::VolumeCpu_64f_C1& dst2);
927 IUMATH_DLLAPI void splitPlanes(iu::VolumeGpu_64f_C2& src, iu::VolumeGpu_64f_C1& dst1, iu::VolumeGpu_64f_C1& dst2);
928 IUMATH_DLLAPI void splitPlanes(iu::ImageCpu_64f_C2& src, iu::ImageCpu_64f_C1& dst1, iu::ImageCpu_64f_C1& dst2);
929 IUMATH_DLLAPI void splitPlanes(iu::ImageGpu_64f_C2& src, iu::ImageGpu_64f_C1& dst1, iu::ImageGpu_64f_C1& dst2);
932 
941 
942 
956 
965 
972 
981 
982 
989 IUMATH_DLLAPI void combinePlanes(iu::VolumeCpu_32f_C1& src1, iu::VolumeCpu_32f_C1& src2, iu::VolumeCpu_32f_C2& dst);
990 IUMATH_DLLAPI void combinePlanes(iu::VolumeGpu_32f_C1& src1, iu::VolumeGpu_32f_C1& src2, iu::VolumeGpu_32f_C2& dst);
991 IUMATH_DLLAPI void combinePlanes(iu::ImageCpu_32f_C1& src1, iu::ImageCpu_32f_C1& src2, iu::ImageCpu_32f_C2& dst);
992 IUMATH_DLLAPI void combinePlanes(iu::ImageGpu_32f_C1& src1, iu::ImageGpu_32f_C1& src2, iu::ImageGpu_32f_C2& dst);
995 
1004 
1005 IUMATH_DLLAPI void combinePlanes(iu::VolumeCpu_64f_C1& src1, iu::VolumeCpu_64f_C1& src2, iu::VolumeCpu_64f_C2& dst);
1006 IUMATH_DLLAPI void combinePlanes(iu::VolumeGpu_64f_C1& src1, iu::VolumeGpu_64f_C1& src2, iu::VolumeGpu_64f_C2& dst);
1007 IUMATH_DLLAPI void combinePlanes(iu::ImageCpu_64f_C1& src1, iu::ImageCpu_64f_C1& src2, iu::ImageCpu_64f_C2& dst);
1008 IUMATH_DLLAPI void combinePlanes(iu::ImageGpu_64f_C1& src1, iu::ImageGpu_64f_C1& src2, iu::ImageGpu_64f_C2& dst);
1011 
1020 
1021 
1035 
1044 
1051 
1060 
1061  // end of MathArithmetics
1063 
1069 //---------------------------------------------------------------------------------------------------
1070 // STATISTICS
1076 IUMATH_DLLAPI void minMax(iu::ImageGpu_32f_C1& src, float& minVal, float& maxVal);
1077 IUMATH_DLLAPI void minMax(iu::VolumeGpu_32f_C1& src, float& minVal, float& maxVal);
1078 
1079 IUMATH_DLLAPI void minMax(iu::ImageCpu_32f_C1& src, float& minVal, float& maxVal);
1080 IUMATH_DLLAPI void minMax(iu::VolumeCpu_32f_C1& src, float& minVal, float& maxVal);
1081 
1082 IUMATH_DLLAPI void minMax(iu::ImageGpu_64f_C1& src, double& minVal, double& maxVal);
1083 IUMATH_DLLAPI void minMax(iu::VolumeGpu_64f_C1& src, double& minVal, double& maxVal);
1084 
1085 IUMATH_DLLAPI void minMax(iu::ImageCpu_64f_C1& src, double& minVal, double& maxVal);
1086 IUMATH_DLLAPI void minMax(iu::VolumeCpu_64f_C1& src, double& minVal, double& maxVal);
1087 
1095 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory_64f_C1& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1096 IUMATH_DLLAPI void minMax(iu::LinearHostMemory_64f_C1& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1097 
1098 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory_32f_C1& src, float& minVal, float& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1099 IUMATH_DLLAPI void minMax(iu::LinearHostMemory_32f_C1& src, float& minVal, float& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1100 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory<float, 2>& src, float& minVal, float& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1101 IUMATH_DLLAPI void minMax(iu::LinearHostMemory<float, 2>& src, float& minVal, float& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1102 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory<float, 3>& src, float& minVal, float& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1103 IUMATH_DLLAPI void minMax(iu::LinearHostMemory<float, 3>& src, float& minVal, float& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1104 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory<float, 4>& src, float& minVal, float& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1105 IUMATH_DLLAPI void minMax(iu::LinearHostMemory<float, 4>& src, float& minVal, float& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1106 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory<float, 5>& src, float& minVal, float& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1107 IUMATH_DLLAPI void minMax(iu::LinearHostMemory<float, 5>& src, float& minVal, float& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1108 
1109 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory_32f_C1& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1110 IUMATH_DLLAPI void minMax(iu::LinearHostMemory_32f_C1& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1111 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory<double, 2>& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1112 IUMATH_DLLAPI void minMax(iu::LinearHostMemory<double, 2>& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1113 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory<double, 3>& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1114 IUMATH_DLLAPI void minMax(iu::LinearHostMemory<double, 3>& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1115 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory<double, 4>& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1116 IUMATH_DLLAPI void minMax(iu::LinearHostMemory<double, 4>& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1117 IUMATH_DLLAPI void minMax(iu::LinearDeviceMemory<double, 5>& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1118 IUMATH_DLLAPI void minMax(iu::LinearHostMemory<double, 5>& src, double& minVal, double& maxVal, unsigned int& minIdx, unsigned int& maxIdx);
1119 
1124 IUMATH_DLLAPI void summation(iu::ImageGpu_32f_C1& src, float& sum);
1125 IUMATH_DLLAPI void summation(iu::VolumeGpu_32f_C1& src, float& sum);
1126 IUMATH_DLLAPI void summation(iu::LinearDeviceMemory_32f_C1& src, float& sum);
1127 IUMATH_DLLAPI void summation(iu::LinearDeviceMemory<float, 2>& src, float& sum);
1128 IUMATH_DLLAPI void summation(iu::LinearDeviceMemory<float, 3>& src, float& sum);
1129 IUMATH_DLLAPI void summation(iu::LinearDeviceMemory<float, 4>& src, float& sum);
1130 IUMATH_DLLAPI void summation(iu::LinearDeviceMemory<float, 5>& src, float& sum);
1131 
1132 IUMATH_DLLAPI void summation(iu::ImageCpu_32f_C1& src, float& sum);
1133 IUMATH_DLLAPI void summation(iu::VolumeCpu_32f_C1& src, float& sum);
1134 IUMATH_DLLAPI void summation(iu::LinearHostMemory_32f_C1& src, float& sum);
1135 IUMATH_DLLAPI void summation(iu::LinearHostMemory<float, 2>& src, float& sum);
1136 IUMATH_DLLAPI void summation(iu::LinearHostMemory<float, 3>& src, float& sum);
1137 IUMATH_DLLAPI void summation(iu::LinearHostMemory<float, 4>& src, float& sum);
1138 IUMATH_DLLAPI void summation(iu::LinearHostMemory<float, 5>& src, float& sum);
1139 
1140 IUMATH_DLLAPI void summation(iu::ImageGpu_64f_C1& src, double& sum);
1141 IUMATH_DLLAPI void summation(iu::VolumeGpu_64f_C1& src, double& sum);
1142 IUMATH_DLLAPI void summation(iu::LinearDeviceMemory_64f_C1& src, double& sum);
1143 IUMATH_DLLAPI void summation(iu::LinearDeviceMemory<double, 2>& src, double& sum);
1144 IUMATH_DLLAPI void summation(iu::LinearDeviceMemory<double, 3>& src, double& sum);
1145 IUMATH_DLLAPI void summation(iu::LinearDeviceMemory<double, 4>& src, double& sum);
1146 IUMATH_DLLAPI void summation(iu::LinearDeviceMemory<double, 5>& src, double& sum);
1147 
1148 IUMATH_DLLAPI void summation(iu::ImageCpu_64f_C1& src, double& sum);
1149 IUMATH_DLLAPI void summation(iu::VolumeCpu_64f_C1& src, double& sum);
1150 IUMATH_DLLAPI void summation(iu::LinearHostMemory_64f_C1& src, double& sum);
1151 IUMATH_DLLAPI void summation(iu::LinearHostMemory<double, 2>& src, double& sum);
1152 IUMATH_DLLAPI void summation(iu::LinearHostMemory<double, 3>& src, double& sum);
1153 IUMATH_DLLAPI void summation(iu::LinearHostMemory<double, 4>& src, double& sum);
1154 IUMATH_DLLAPI void summation(iu::LinearHostMemory<double, 5>& src, double& sum);
1155 
1156 
1163 IUMATH_DLLAPI void normDiffL1(iu::ImageGpu_32f_C1& src, iu::ImageGpu_32f_C1& ref, float& norm);
1164 IUMATH_DLLAPI void normDiffL1(iu::VolumeGpu_32f_C1& src, iu::VolumeGpu_32f_C1& ref, float& norm);
1165 
1166 IUMATH_DLLAPI void normDiffL1(iu::ImageCpu_32f_C1& src, iu::ImageCpu_32f_C1& ref, float& norm);
1167 IUMATH_DLLAPI void normDiffL1(iu::VolumeCpu_32f_C1& src, iu::VolumeCpu_32f_C1& ref, float& norm);
1168 
1169 IUMATH_DLLAPI void normDiffL1(iu::ImageGpu_64f_C1& src, iu::ImageGpu_64f_C1& ref, double& norm);
1170 IUMATH_DLLAPI void normDiffL1(iu::VolumeGpu_64f_C1& src, iu::VolumeGpu_64f_C1& ref, double& norm);
1171 
1172 IUMATH_DLLAPI void normDiffL1(iu::ImageCpu_64f_C1& src, iu::ImageCpu_64f_C1& ref, double& norm);
1173 IUMATH_DLLAPI void normDiffL1(iu::VolumeCpu_64f_C1& src, iu::VolumeCpu_64f_C1& ref, double& norm);
1174 
1181 IUMATH_DLLAPI void normDiffL1(iu::ImageGpu_32f_C1& src, float& ref, float& norm);
1182 IUMATH_DLLAPI void normDiffL1(iu::VolumeGpu_32f_C1& src, float& ref, float& norm);
1183 
1184 IUMATH_DLLAPI void normDiffL1(iu::ImageCpu_32f_C1& src, float& ref, float& norm);
1185 IUMATH_DLLAPI void normDiffL1(iu::VolumeCpu_32f_C1& src, float& ref, float& norm);
1186 
1187 IUMATH_DLLAPI void normDiffL1(iu::ImageGpu_64f_C1& src, double& ref, double& norm);
1188 IUMATH_DLLAPI void normDiffL1(iu::VolumeGpu_64f_C1& src, double& ref, double& norm);
1189 
1190 IUMATH_DLLAPI void normDiffL1(iu::ImageCpu_64f_C1& src, double& ref, double& norm);
1191 IUMATH_DLLAPI void normDiffL1(iu::VolumeCpu_64f_C1& src, double& ref, double& norm);
1192 
1193 
1200 IUMATH_DLLAPI void normDiffL2(iu::ImageGpu_32f_C1& src, iu::ImageGpu_32f_C1& ref, float& norm);
1201 IUMATH_DLLAPI void normDiffL2(iu::VolumeGpu_32f_C1& src, iu::VolumeGpu_32f_C1& ref, float& norm);
1202 
1203 IUMATH_DLLAPI void normDiffL2(iu::ImageCpu_32f_C1& src, iu::ImageCpu_32f_C1& ref, float& norm);
1204 IUMATH_DLLAPI void normDiffL2(iu::VolumeCpu_32f_C1& src, iu::VolumeCpu_32f_C1& ref, float& norm);
1205 
1206 IUMATH_DLLAPI void normDiffL2(iu::ImageGpu_64f_C1& src, iu::ImageGpu_64f_C1& ref, double& norm);
1207 IUMATH_DLLAPI void normDiffL2(iu::VolumeGpu_64f_C1& src, iu::VolumeGpu_64f_C1& ref, double& norm);
1208 
1209 IUMATH_DLLAPI void normDiffL2(iu::ImageCpu_64f_C1& src, iu::ImageCpu_64f_C1& ref, double& norm);
1210 IUMATH_DLLAPI void normDiffL2(iu::VolumeCpu_64f_C1& src, iu::VolumeCpu_64f_C1& ref, double& norm);
1211 
1218 IUMATH_DLLAPI void normDiffL2(iu::ImageGpu_32f_C1& src, float& ref, float& norm);
1219 IUMATH_DLLAPI void normDiffL2(iu::VolumeGpu_32f_C1& src, float& ref, float& norm);
1220 
1221 IUMATH_DLLAPI void normDiffL2(iu::ImageCpu_32f_C1& src, float& ref, float& norm);
1222 IUMATH_DLLAPI void normDiffL2(iu::VolumeCpu_32f_C1& src, float& ref, float& norm);
1223 
1224 IUMATH_DLLAPI void normDiffL2(iu::ImageGpu_64f_C1& src, double& ref, double& norm);
1225 IUMATH_DLLAPI void normDiffL2(iu::VolumeGpu_64f_C1& src, double& ref, double& norm);
1226 
1227 IUMATH_DLLAPI void normDiffL2(iu::ImageCpu_64f_C1& src, double& ref, double& norm);
1228 IUMATH_DLLAPI void normDiffL2(iu::VolumeCpu_64f_C1& src, double& ref, double& norm);
1229 
1236 IUMATH_DLLAPI void mse(iu::ImageGpu_32f_C1& src, iu::ImageGpu_32f_C1& ref, float& mse);
1237 IUMATH_DLLAPI void mse(iu::VolumeGpu_32f_C1& src, iu::VolumeGpu_32f_C1& ref, float& mse);
1238 
1239 IUMATH_DLLAPI void mse(iu::ImageCpu_32f_C1& src, iu::ImageCpu_32f_C1& ref, float& mse);
1240 IUMATH_DLLAPI void mse(iu::VolumeCpu_32f_C1& src, iu::VolumeCpu_32f_C1& ref, float& mse);
1241 
1242 IUMATH_DLLAPI void mse(iu::ImageGpu_64f_C1& src, iu::ImageGpu_64f_C1& ref, double& mse);
1243 IUMATH_DLLAPI void mse(iu::VolumeGpu_64f_C1& src, iu::VolumeGpu_64f_C1& ref, double& mse);
1244 
1245 IUMATH_DLLAPI void mse(iu::ImageCpu_64f_C1& src, iu::ImageCpu_64f_C1& ref, double& mse);
1246 IUMATH_DLLAPI void mse(iu::VolumeCpu_64f_C1& src, iu::VolumeCpu_64f_C1& ref, double& mse);
1247  // end of MathStatistics
1249 
1250 //---------------------------------------------------------------------------------------------------
1252 namespace complex {
1253 
1265 IUMATH_DLLAPI void abs(iu::VolumeCpu_32f_C2& complex, iu::VolumeCpu_32f_C1& real);
1266 IUMATH_DLLAPI void abs(iu::VolumeGpu_32f_C2& complex, iu::VolumeGpu_32f_C1& real);
1267 IUMATH_DLLAPI void abs(iu::ImageCpu_32f_C2& complex, iu::ImageCpu_32f_C1& real);
1268 IUMATH_DLLAPI void abs(iu::ImageGpu_32f_C2& complex, iu::ImageGpu_32f_C1& real);
1269 IUMATH_DLLAPI void abs(iu::LinearHostMemory_32f_C2& complex, iu::LinearHostMemory_32f_C1& real);
1270 IUMATH_DLLAPI void abs(iu::LinearDeviceMemory_32f_C2& complex, iu::LinearDeviceMemory_32f_C1& real);
1271 IUMATH_DLLAPI void abs(iu::LinearHostMemory<float2, 2>& complex, iu::LinearHostMemory<float, 2>& real);
1272 
1273 IUMATH_DLLAPI void abs(iu::LinearDeviceMemory<float2, 2>& complex, iu::LinearDeviceMemory<float, 2>& real);
1274 IUMATH_DLLAPI void abs(iu::LinearHostMemory<float2, 3>& complex, iu::LinearHostMemory<float, 3>& real);
1275 IUMATH_DLLAPI void abs(iu::LinearDeviceMemory<float2, 3>& complex, iu::LinearDeviceMemory<float, 3>& real);
1276 IUMATH_DLLAPI void abs(iu::LinearHostMemory<float2, 4>& complex, iu::LinearHostMemory<float, 4>& real);
1277 IUMATH_DLLAPI void abs(iu::LinearDeviceMemory<float2, 4>& complex, iu::LinearDeviceMemory<float, 4>& real);
1278 IUMATH_DLLAPI void abs(iu::LinearHostMemory<float2, 5>& complex, iu::LinearHostMemory<float, 5>& real);
1279 IUMATH_DLLAPI void abs(iu::LinearDeviceMemory<float2, 5>& complex, iu::LinearDeviceMemory<float, 5>& real);
1280 
1281 IUMATH_DLLAPI void abs(iu::VolumeCpu_64f_C2& complex, iu::VolumeCpu_64f_C1& real);
1282 IUMATH_DLLAPI void abs(iu::VolumeGpu_64f_C2& complex, iu::VolumeGpu_64f_C1& real);
1283 IUMATH_DLLAPI void abs(iu::ImageCpu_64f_C2& complex, iu::ImageCpu_64f_C1& real);
1284 IUMATH_DLLAPI void abs(iu::ImageGpu_64f_C2& complex, iu::ImageGpu_64f_C1& real);
1285 IUMATH_DLLAPI void abs(iu::LinearHostMemory_64f_C2& complex, iu::LinearHostMemory_64f_C1& real);
1286 IUMATH_DLLAPI void abs(iu::LinearDeviceMemory_64f_C2& complex, iu::LinearDeviceMemory_64f_C1& real);
1287 
1288 IUMATH_DLLAPI void abs(iu::LinearHostMemory<double2, 2>& complex, iu::LinearHostMemory<double, 2>& real);
1290 IUMATH_DLLAPI void abs(iu::LinearHostMemory<double2, 3>& complex, iu::LinearHostMemory<double, 3>& real);
1292 IUMATH_DLLAPI void abs(iu::LinearHostMemory<double2, 4>& complex, iu::LinearHostMemory<double, 4>& real);
1294 IUMATH_DLLAPI void abs(iu::LinearHostMemory<double2, 5>& complex, iu::LinearHostMemory<double, 5>& real);
1296 
1302 IUMATH_DLLAPI void real(iu::VolumeCpu_32f_C2& complex, iu::VolumeCpu_32f_C1& real);
1303 IUMATH_DLLAPI void real(iu::VolumeGpu_32f_C2& complex, iu::VolumeGpu_32f_C1& real);
1304 IUMATH_DLLAPI void real(iu::ImageCpu_32f_C2& complex, iu::ImageCpu_32f_C1& real);
1305 IUMATH_DLLAPI void real(iu::ImageGpu_32f_C2& complex, iu::ImageGpu_32f_C1& real);
1306 IUMATH_DLLAPI void real(iu::LinearHostMemory_32f_C2& complex, iu::LinearHostMemory_32f_C1& real);
1307 IUMATH_DLLAPI void real(iu::LinearDeviceMemory_32f_C2& complex, iu::LinearDeviceMemory_32f_C1& real);
1308 
1309 IUMATH_DLLAPI void real(iu::LinearHostMemory<float2, 2>& complex, iu::LinearHostMemory<float, 2>& real);
1310 IUMATH_DLLAPI void real(iu::LinearDeviceMemory<float2, 2>& complex, iu::LinearDeviceMemory<float, 2>& real);
1311 IUMATH_DLLAPI void real(iu::LinearHostMemory<float2, 3>& complex, iu::LinearHostMemory<float, 3>& real);
1312 IUMATH_DLLAPI void real(iu::LinearDeviceMemory<float2, 3>& complex, iu::LinearDeviceMemory<float, 3>& real);
1313 IUMATH_DLLAPI void real(iu::LinearHostMemory<float2, 4>& complex, iu::LinearHostMemory<float, 4>& real);
1314 IUMATH_DLLAPI void real(iu::LinearDeviceMemory<float2, 4>& complex, iu::LinearDeviceMemory<float, 4>& real);
1315 IUMATH_DLLAPI void real(iu::LinearHostMemory<float2, 5>& complex, iu::LinearHostMemory<float, 5>& real);
1316 IUMATH_DLLAPI void real(iu::LinearDeviceMemory<float2, 5>& complex, iu::LinearDeviceMemory<float, 5>& real);
1317 
1318 IUMATH_DLLAPI void real(iu::VolumeCpu_64f_C2& complex, iu::VolumeCpu_64f_C1& real);
1319 IUMATH_DLLAPI void real(iu::VolumeGpu_64f_C2& complex, iu::VolumeGpu_64f_C1& real);
1320 IUMATH_DLLAPI void real(iu::ImageCpu_64f_C2& complex, iu::ImageCpu_64f_C1& real);
1321 IUMATH_DLLAPI void real(iu::ImageGpu_64f_C2& complex, iu::ImageGpu_64f_C1& real);
1322 IUMATH_DLLAPI void real(iu::LinearHostMemory_64f_C2& complex, iu::LinearHostMemory_64f_C1& real);
1323 IUMATH_DLLAPI void real(iu::LinearDeviceMemory_64f_C2& complex, iu::LinearDeviceMemory_64f_C1& real);
1324 
1325 IUMATH_DLLAPI void real(iu::LinearHostMemory<double2, 2>& complex, iu::LinearHostMemory<double, 2>& real);
1327 IUMATH_DLLAPI void real(iu::LinearHostMemory<double2, 3>& complex, iu::LinearHostMemory<double, 3>& real);
1329 IUMATH_DLLAPI void real(iu::LinearHostMemory<double2, 4>& complex, iu::LinearHostMemory<double, 4>& real);
1331 IUMATH_DLLAPI void real(iu::LinearHostMemory<double2, 5>& complex, iu::LinearHostMemory<double, 5>& real);
1333 
1339 IUMATH_DLLAPI void imag(iu::VolumeCpu_32f_C2& complex, iu::VolumeCpu_32f_C1& real);
1340 IUMATH_DLLAPI void imag(iu::VolumeGpu_32f_C2& complex, iu::VolumeGpu_32f_C1& real);
1341 IUMATH_DLLAPI void imag(iu::ImageCpu_32f_C2& complex, iu::ImageCpu_32f_C1& real);
1342 IUMATH_DLLAPI void imag(iu::ImageGpu_32f_C2& complex, iu::ImageGpu_32f_C1& real);
1343 IUMATH_DLLAPI void imag(iu::LinearHostMemory_32f_C2& complex, iu::LinearHostMemory_32f_C1& real);
1344 IUMATH_DLLAPI void imag(iu::LinearDeviceMemory_32f_C2& complex, iu::LinearDeviceMemory_32f_C1& real);
1345 
1346 IUMATH_DLLAPI void imag(iu::LinearHostMemory<float2, 2>& complex, iu::LinearHostMemory<float, 2>& real);
1347 IUMATH_DLLAPI void imag(iu::LinearDeviceMemory<float2, 2>& complex, iu::LinearDeviceMemory<float, 2>& real);
1348 IUMATH_DLLAPI void imag(iu::LinearHostMemory<float2, 3>& complex, iu::LinearHostMemory<float, 3>& real);
1349 IUMATH_DLLAPI void imag(iu::LinearDeviceMemory<float2, 3>& complex, iu::LinearDeviceMemory<float, 3>& real);
1350 IUMATH_DLLAPI void imag(iu::LinearHostMemory<float2, 4>& complex, iu::LinearHostMemory<float, 4>& real);
1351 IUMATH_DLLAPI void imag(iu::LinearDeviceMemory<float2, 4>& complex, iu::LinearDeviceMemory<float, 4>& real);
1352 IUMATH_DLLAPI void imag(iu::LinearHostMemory<float2, 5>& complex, iu::LinearHostMemory<float, 5>& real);
1353 IUMATH_DLLAPI void imag(iu::LinearDeviceMemory<float2, 5>& complex, iu::LinearDeviceMemory<float, 5>& real);
1354 
1355 IUMATH_DLLAPI void imag(iu::VolumeCpu_64f_C2& complex, iu::VolumeCpu_64f_C1& real);
1356 IUMATH_DLLAPI void imag(iu::VolumeGpu_64f_C2& complex, iu::VolumeGpu_64f_C1& real);
1357 IUMATH_DLLAPI void imag(iu::ImageCpu_64f_C2& complex, iu::ImageCpu_64f_C1& real);
1358 IUMATH_DLLAPI void imag(iu::ImageGpu_64f_C2& complex, iu::ImageGpu_64f_C1& real);
1359 IUMATH_DLLAPI void imag(iu::LinearHostMemory_64f_C2& complex, iu::LinearHostMemory_64f_C1& real);
1360 IUMATH_DLLAPI void imag(iu::LinearDeviceMemory_64f_C2& complex, iu::LinearDeviceMemory_64f_C1& real);
1361 
1362 IUMATH_DLLAPI void imag(iu::LinearHostMemory<double2, 2>& complex, iu::LinearHostMemory<double, 2>& real);
1364 IUMATH_DLLAPI void imag(iu::LinearHostMemory<double2, 3>& complex, iu::LinearHostMemory<double, 3>& real);
1366 IUMATH_DLLAPI void imag(iu::LinearHostMemory<double2, 4>& complex, iu::LinearHostMemory<double, 4>& real);
1368 IUMATH_DLLAPI void imag(iu::LinearHostMemory<double2, 5>& complex, iu::LinearHostMemory<double, 5>& real);
1370 
1376 IUMATH_DLLAPI void phase(iu::VolumeCpu_32f_C2& complex, iu::VolumeCpu_32f_C1& real);
1377 IUMATH_DLLAPI void phase(iu::VolumeGpu_32f_C2& complex, iu::VolumeGpu_32f_C1& real);
1378 IUMATH_DLLAPI void phase(iu::ImageCpu_32f_C2& complex, iu::ImageCpu_32f_C1& real);
1379 IUMATH_DLLAPI void phase(iu::ImageGpu_32f_C2& complex, iu::ImageGpu_32f_C1& real);
1380 IUMATH_DLLAPI void phase(iu::LinearHostMemory_32f_C2& complex, iu::LinearHostMemory_32f_C1& real);
1381 IUMATH_DLLAPI void phase(iu::LinearDeviceMemory_32f_C2& complex, iu::LinearDeviceMemory_32f_C1& real);
1382 
1383 IUMATH_DLLAPI void phase(iu::LinearHostMemory<float2, 2>& complex, iu::LinearHostMemory<float, 2>& real);
1385 IUMATH_DLLAPI void phase(iu::LinearHostMemory<float2, 3>& complex, iu::LinearHostMemory<float, 3>& real);
1387 IUMATH_DLLAPI void phase(iu::LinearHostMemory<float2, 4>& complex, iu::LinearHostMemory<float, 4>& real);
1389 IUMATH_DLLAPI void phase(iu::LinearHostMemory<float2, 5>& complex, iu::LinearHostMemory<float, 5>& real);
1391 
1392 IUMATH_DLLAPI void phase(iu::VolumeCpu_64f_C2& complex, iu::VolumeCpu_64f_C1& real);
1393 IUMATH_DLLAPI void phase(iu::VolumeGpu_64f_C2& complex, iu::VolumeGpu_64f_C1& real);
1394 IUMATH_DLLAPI void phase(iu::ImageCpu_64f_C2& complex, iu::ImageCpu_64f_C1& real);
1395 IUMATH_DLLAPI void phase(iu::ImageGpu_64f_C2& complex, iu::ImageGpu_64f_C1& real);
1396 IUMATH_DLLAPI void phase(iu::LinearHostMemory_64f_C2& complex, iu::LinearHostMemory_64f_C1& real);
1397 IUMATH_DLLAPI void phase(iu::LinearDeviceMemory_64f_C2& complex, iu::LinearDeviceMemory_64f_C1& real);
1398 
1399 IUMATH_DLLAPI void phase(iu::LinearHostMemory<double2, 2>& complex, iu::LinearHostMemory<double, 2>& real);
1401 IUMATH_DLLAPI void phase(iu::LinearHostMemory<double2, 3>& complex, iu::LinearHostMemory<double, 3>& real);
1403 IUMATH_DLLAPI void phase(iu::LinearHostMemory<double2, 4>& complex, iu::LinearHostMemory<double, 4>& real);
1405 IUMATH_DLLAPI void phase(iu::LinearHostMemory<double2, 5>& complex, iu::LinearHostMemory<double, 5>& real);
1407 
1408 
1415 IUMATH_DLLAPI void scale(iu::VolumeCpu_32f_C2& complex_src, const float& scale, iu::VolumeCpu_32f_C2& complex_dst);
1416 IUMATH_DLLAPI void scale(iu::VolumeGpu_32f_C2& complex_src, const float& scale, iu::VolumeGpu_32f_C2& complex_dst);
1417 IUMATH_DLLAPI void scale(iu::ImageCpu_32f_C2& complex_src, const float& scale, iu::ImageCpu_32f_C2& complex_dst);
1418 IUMATH_DLLAPI void scale(iu::ImageGpu_32f_C2& complex_src, const float& scale, iu::ImageGpu_32f_C2& complex_dst);
1419 IUMATH_DLLAPI void scale(iu::LinearHostMemory_32f_C2& complex_src, const float& scale, iu::LinearHostMemory_32f_C2& complex_dst);
1420 IUMATH_DLLAPI void scale(iu::LinearDeviceMemory_32f_C2& complex_src, const float& scale, iu::LinearDeviceMemory_32f_C2& complex_dst);
1421 
1422 IUMATH_DLLAPI void scale(iu::LinearHostMemory<float2, 2>& complex_src, const float& scale, iu::LinearHostMemory<float2, 2>& complex_dst);
1423 IUMATH_DLLAPI void scale(iu::LinearDeviceMemory<float2, 2>& complex_src, const float& scale, iu::LinearDeviceMemory<float2, 2>& complex_dst);
1424 IUMATH_DLLAPI void scale(iu::LinearHostMemory<float2, 3>& complex_src, const float& scale, iu::LinearHostMemory<float2, 3>& complex_dst);
1425 IUMATH_DLLAPI void scale(iu::LinearDeviceMemory<float2, 3>& complex_src, const float& scale, iu::LinearDeviceMemory<float2, 3>& complex_dst);
1426 IUMATH_DLLAPI void scale(iu::LinearHostMemory<float2, 4>& complex_src, const float& scale, iu::LinearHostMemory<float2, 4>& complex_dst);
1427 IUMATH_DLLAPI void scale(iu::LinearDeviceMemory<float2, 4>& complex_src, const float& scale, iu::LinearDeviceMemory<float2, 4>& complex_dst);
1428 IUMATH_DLLAPI void scale(iu::LinearHostMemory<float2, 5>& complex_src, const float& scale, iu::LinearHostMemory<float2, 5>& complex_dst);
1429 IUMATH_DLLAPI void scale(iu::LinearDeviceMemory<float2, 5>& complex_src, const float& scale, iu::LinearDeviceMemory<float2, 5>& complex_dst);
1430 
1431 IUMATH_DLLAPI void scale(iu::VolumeCpu_64f_C2& complex_src, const double& scale, iu::VolumeCpu_64f_C2& complex_dst);
1432 IUMATH_DLLAPI void scale(iu::VolumeGpu_64f_C2& complex_src, const double& scale, iu::VolumeGpu_64f_C2& complex_dst);
1433 IUMATH_DLLAPI void scale(iu::ImageCpu_64f_C2& complex_src, const double& scale, iu::ImageCpu_64f_C2& complex_dst);
1434 IUMATH_DLLAPI void scale(iu::ImageGpu_64f_C2& complex_src, const double& scale, iu::ImageGpu_64f_C2& complex_dst);
1435 IUMATH_DLLAPI void scale(iu::LinearHostMemory_64f_C2& complex_src, const double& scale, iu::LinearHostMemory_64f_C2& complex_dst);
1436 IUMATH_DLLAPI void scale(iu::LinearDeviceMemory_64f_C2& complex_src, const double& scale, iu::LinearDeviceMemory_64f_C2& complex_dst);
1437 
1438 IUMATH_DLLAPI void scale(iu::LinearHostMemory<double2, 2>& complex_src, const double& scale, iu::LinearHostMemory<double2, 2>& complex_dst);
1439 IUMATH_DLLAPI void scale(iu::LinearDeviceMemory<double2, 2>& complex_src, const double& scale, iu::LinearDeviceMemory<double2, 2>& complex_dst);
1440 IUMATH_DLLAPI void scale(iu::LinearHostMemory<double2, 3>& complex_src, const double& scale, iu::LinearHostMemory<double2, 3>& complex_dst);
1441 IUMATH_DLLAPI void scale(iu::LinearDeviceMemory<double2, 3>& complex_src, const double& scale, iu::LinearDeviceMemory<double2, 3>& complex_dst);
1442 IUMATH_DLLAPI void scale(iu::LinearHostMemory<double2, 4>& complex_src, const double& scale, iu::LinearHostMemory<double2, 4>& complex_dst);
1443 IUMATH_DLLAPI void scale(iu::LinearDeviceMemory<double2, 4>& complex_src, const double& scale, iu::LinearDeviceMemory<double2, 4>& complex_dst);
1444 IUMATH_DLLAPI void scale(iu::LinearHostMemory<double2, 5>& complex_src, const double& scale, iu::LinearHostMemory<double2, 5>& complex_dst);
1445 IUMATH_DLLAPI void scale(iu::LinearDeviceMemory<double2, 5>& complex_src, const double& scale, iu::LinearDeviceMemory<double2, 5>& complex_dst);
1446 
1447 
1454 IUMATH_DLLAPI void multiply(iu::VolumeCpu_32f_C2& complex_src, iu::VolumeCpu_32f_C1& real, iu::VolumeCpu_32f_C2& complex_dst);
1455 IUMATH_DLLAPI void multiply(iu::VolumeGpu_32f_C2& complex_src, iu::VolumeGpu_32f_C1& real, iu::VolumeGpu_32f_C2& complex_dst);
1456 IUMATH_DLLAPI void multiply(iu::ImageCpu_32f_C2& complex_src, iu::ImageCpu_32f_C1& real, iu::ImageCpu_32f_C2& complex_dst);
1457 IUMATH_DLLAPI void multiply(iu::ImageGpu_32f_C2& complex_src, iu::ImageGpu_32f_C1& real, iu::ImageGpu_32f_C2& complex_dst);
1458 IUMATH_DLLAPI void multiply(iu::LinearHostMemory_32f_C2& complex_src, iu::LinearHostMemory_32f_C1& real, iu::LinearHostMemory_32f_C2& complex_dst);
1459 IUMATH_DLLAPI void multiply(iu::LinearDeviceMemory_32f_C2& complex_src, iu::LinearDeviceMemory_32f_C1& real, iu::LinearDeviceMemory_32f_C2& complex_dst);
1460 
1469 
1470 IUMATH_DLLAPI void multiply(iu::VolumeCpu_64f_C2& complex_src, iu::VolumeCpu_64f_C1& real, iu::VolumeCpu_64f_C2& complex_dst);
1471 IUMATH_DLLAPI void multiply(iu::VolumeGpu_64f_C2& complex_src, iu::VolumeGpu_64f_C1& real, iu::VolumeGpu_64f_C2& complex_dst);
1472 IUMATH_DLLAPI void multiply(iu::ImageCpu_64f_C2& complex_src, iu::ImageCpu_64f_C1& real, iu::ImageCpu_64f_C2& complex_dst);
1473 IUMATH_DLLAPI void multiply(iu::ImageGpu_64f_C2& complex_src, iu::ImageGpu_64f_C1& real, iu::ImageGpu_64f_C2& complex_dst);
1474 IUMATH_DLLAPI void multiply(iu::LinearHostMemory_64f_C2& complex_src, iu::LinearHostMemory_64f_C1& real, iu::LinearHostMemory_64f_C2& complex_dst);
1475 IUMATH_DLLAPI void multiply(iu::LinearDeviceMemory_64f_C2& complex_src, iu::LinearDeviceMemory_64f_C1& real, iu::LinearDeviceMemory_64f_C2& complex_dst);
1476 
1485 
1492 IUMATH_DLLAPI void multiply(iu::VolumeCpu_32f_C2& complex_src1, iu::VolumeCpu_32f_C2& complex_src2, iu::VolumeCpu_32f_C2& complex_dst);
1493 IUMATH_DLLAPI void multiply(iu::VolumeGpu_32f_C2& complex_src1, iu::VolumeGpu_32f_C2& complex_src2, iu::VolumeGpu_32f_C2& complex_dst);
1494 IUMATH_DLLAPI void multiply(iu::ImageCpu_32f_C2& complex_src1, iu::ImageCpu_32f_C2& complex_src2, iu::ImageCpu_32f_C2& complex_dst);
1495 IUMATH_DLLAPI void multiply(iu::ImageGpu_32f_C2& complex_src1, iu::ImageGpu_32f_C2& complex_src2, iu::ImageGpu_32f_C2& complex_dst);
1496 IUMATH_DLLAPI void multiply(iu::LinearHostMemory_32f_C2& complex_src1, iu::LinearHostMemory_32f_C2& complex_src2, iu::LinearHostMemory_32f_C2& complex_dst);
1497 IUMATH_DLLAPI void multiply(iu::LinearDeviceMemory_32f_C2& complex_src1, iu::LinearDeviceMemory_32f_C2& complex_src2, iu::LinearDeviceMemory_32f_C2& complex_dst);
1498 
1499 IUMATH_DLLAPI void multiply(iu::LinearHostMemory<float2, 2>& complex_src, iu::LinearHostMemory<float2, 2>& complex_src2, iu::LinearHostMemory<float2, 2>& complex_dst);
1500 IUMATH_DLLAPI void multiply(iu::LinearDeviceMemory<float2, 2>& complex_src, iu::LinearDeviceMemory<float2, 2>& complex_src2, iu::LinearDeviceMemory<float2, 2>& complex_dst);
1501 IUMATH_DLLAPI void multiply(iu::LinearHostMemory<float2, 3>& complex_src, iu::LinearHostMemory<float2, 3>& complex_src2, iu::LinearHostMemory<float2, 3>& complex_dst);
1502 IUMATH_DLLAPI void multiply(iu::LinearDeviceMemory<float2, 3>& complex_src, iu::LinearDeviceMemory<float2, 3>& complex_src2, iu::LinearDeviceMemory<float2, 3>& complex_dst);
1503 IUMATH_DLLAPI void multiply(iu::LinearHostMemory<float2, 4>& complex_src, iu::LinearHostMemory<float2, 4>& complex_src2, iu::LinearHostMemory<float2, 4>& complex_dst);
1504 IUMATH_DLLAPI void multiply(iu::LinearDeviceMemory<float2, 4>& complex_src, iu::LinearDeviceMemory<float2, 4>& complex_src2, iu::LinearDeviceMemory<float2, 4>& complex_dst);
1505 IUMATH_DLLAPI void multiply(iu::LinearHostMemory<float2, 5>& complex_src, iu::LinearHostMemory<float2, 5>& complex_src2, iu::LinearHostMemory<float2, 5>& complex_dst);
1506 IUMATH_DLLAPI void multiply(iu::LinearDeviceMemory<float2, 5>& complex_src, iu::LinearDeviceMemory<float2, 5>& complex_src2, iu::LinearDeviceMemory<float2, 5>& complex_dst);
1507 
1508 IUMATH_DLLAPI void multiply(iu::VolumeCpu_64f_C2& complex_src1, iu::VolumeCpu_64f_C2& complex_src2, iu::VolumeCpu_64f_C2& complex_dst);
1509 IUMATH_DLLAPI void multiply(iu::VolumeGpu_64f_C2& complex_src1, iu::VolumeGpu_64f_C2& complex_src2, iu::VolumeGpu_64f_C2& complex_dst);
1510 IUMATH_DLLAPI void multiply(iu::ImageCpu_64f_C2& complex_src1, iu::ImageCpu_64f_C2& complex_src2, iu::ImageCpu_64f_C2& complex_dst);
1511 IUMATH_DLLAPI void multiply(iu::ImageGpu_64f_C2& complex_src1, iu::ImageGpu_64f_C2& complex_src2, iu::ImageGpu_64f_C2& complex_dst);
1512 IUMATH_DLLAPI void multiply(iu::LinearHostMemory_64f_C2& complex_src1, iu::LinearHostMemory_64f_C2& complex_src2, iu::LinearHostMemory_64f_C2& complex_dst);
1513 IUMATH_DLLAPI void multiply(iu::LinearDeviceMemory_64f_C2& complex_src1, iu::LinearDeviceMemory_64f_C2& complex_src2, iu::LinearDeviceMemory_64f_C2& complex_dst);
1514 
1515 IUMATH_DLLAPI void multiply(iu::LinearHostMemory<double2, 2>& complex_src, iu::LinearHostMemory<double2, 2>& complex_src2, iu::LinearHostMemory<double2, 2>& complex_dst);
1517 IUMATH_DLLAPI void multiply(iu::LinearHostMemory<double2, 3>& complex_src, iu::LinearHostMemory<double2, 3>& complex_src2, iu::LinearHostMemory<double2, 3>& complex_dst);
1519 IUMATH_DLLAPI void multiply(iu::LinearHostMemory<double2, 4>& complex_src, iu::LinearHostMemory<double2, 4>& complex_src2, iu::LinearHostMemory<double2, 4>& complex_dst);
1521 IUMATH_DLLAPI void multiply(iu::LinearHostMemory<double2, 5>& complex_src, iu::LinearHostMemory<double2, 5>& complex_src2, iu::LinearHostMemory<double2, 5>& complex_dst);
1523 
1530 IUMATH_DLLAPI void multiplyConjugate(iu::VolumeCpu_32f_C2& complex_src1, iu::VolumeCpu_32f_C2& complex_src2, iu::VolumeCpu_32f_C2& complex_dst);
1531 IUMATH_DLLAPI void multiplyConjugate(iu::VolumeGpu_32f_C2& complex_src1, iu::VolumeGpu_32f_C2& complex_src2, iu::VolumeGpu_32f_C2& complex_dst);
1532 IUMATH_DLLAPI void multiplyConjugate(iu::ImageCpu_32f_C2& complex_src1, iu::ImageCpu_32f_C2& complex_src2, iu::ImageCpu_32f_C2& complex_dst);
1533 IUMATH_DLLAPI void multiplyConjugate(iu::ImageGpu_32f_C2& complex_src1, iu::ImageGpu_32f_C2& complex_src2, iu::ImageGpu_32f_C2& complex_dst);
1534 IUMATH_DLLAPI void multiplyConjugate(iu::LinearHostMemory_32f_C2& complex_src1, iu::LinearHostMemory_32f_C2& complex_src2, iu::LinearHostMemory_32f_C2& complex_dst);
1535 IUMATH_DLLAPI void multiplyConjugate(iu::LinearDeviceMemory_32f_C2& complex_src1, iu::LinearDeviceMemory_32f_C2& complex_src2, iu::LinearDeviceMemory_32f_C2& complex_dst);
1536 
1545 
1546 IUMATH_DLLAPI void multiplyConjugate(iu::VolumeCpu_64f_C2& complex_src1, iu::VolumeCpu_64f_C2& complex_src2, iu::VolumeCpu_64f_C2& complex_dst);
1547 IUMATH_DLLAPI void multiplyConjugate(iu::VolumeGpu_64f_C2& complex_src1, iu::VolumeGpu_64f_C2& complex_src2, iu::VolumeGpu_64f_C2& complex_dst);
1548 IUMATH_DLLAPI void multiplyConjugate(iu::ImageCpu_64f_C2& complex_src1, iu::ImageCpu_64f_C2& complex_src2, iu::ImageCpu_64f_C2& complex_dst);
1549 IUMATH_DLLAPI void multiplyConjugate(iu::ImageGpu_64f_C2& complex_src1, iu::ImageGpu_64f_C2& complex_src2, iu::ImageGpu_64f_C2& complex_dst);
1550 IUMATH_DLLAPI void multiplyConjugate(iu::LinearHostMemory_64f_C2& complex_src1, iu::LinearHostMemory_64f_C2& complex_src2, iu::LinearHostMemory_64f_C2& complex_dst);
1551 IUMATH_DLLAPI void multiplyConjugate(iu::LinearDeviceMemory_64f_C2& complex_src1, iu::LinearDeviceMemory_64f_C2& complex_src2, iu::LinearDeviceMemory_64f_C2& complex_dst);
1552 
1561  // end of MathComplex
1563 
1564 } // namespace complex
1565 
1566 //---------------------------------------------------------------------------------------------------
1568 namespace fft {
1569 
1580 IUMATH_DLLAPI void fftshift2(const iu::ImageGpu_32f_C1& src, iu::ImageGpu_32f_C1& dst);
1581 IUMATH_DLLAPI void fftshift2(const iu::ImageGpu_32f_C2& src, iu::ImageGpu_32f_C2& dst);
1582 IUMATH_DLLAPI void fftshift2(const iu::VolumeGpu_32f_C1& src, iu::VolumeGpu_32f_C1& dst);
1583 IUMATH_DLLAPI void fftshift2(const iu::VolumeGpu_32f_C2& src, iu::VolumeGpu_32f_C2& dst);
1590 
1591 IUMATH_DLLAPI void fftshift2(const iu::ImageGpu_64f_C1& src, iu::ImageGpu_64f_C1& dst);
1592 IUMATH_DLLAPI void fftshift2(const iu::ImageGpu_64f_C2& src, iu::ImageGpu_64f_C2& dst);
1593 IUMATH_DLLAPI void fftshift2(const iu::VolumeGpu_64f_C1& src, iu::VolumeGpu_64f_C1& dst);
1594 IUMATH_DLLAPI void fftshift2(const iu::VolumeGpu_64f_C2& src, iu::VolumeGpu_64f_C2& dst);
1601 
1606 IUMATH_DLLAPI void ifftshift2(const iu::ImageGpu_32f_C1& src, iu::ImageGpu_32f_C1& dst);
1607 IUMATH_DLLAPI void ifftshift2(const iu::ImageGpu_32f_C2& src, iu::ImageGpu_32f_C2& dst);
1608 IUMATH_DLLAPI void ifftshift2(const iu::VolumeGpu_32f_C1& src, iu::VolumeGpu_32f_C1& dst);
1609 IUMATH_DLLAPI void ifftshift2(const iu::VolumeGpu_32f_C2& src, iu::VolumeGpu_32f_C2& dst);
1616 
1617 IUMATH_DLLAPI void ifftshift2(const iu::ImageGpu_64f_C1& src, iu::ImageGpu_64f_C1& dst);
1618 IUMATH_DLLAPI void ifftshift2(const iu::ImageGpu_64f_C2& src, iu::ImageGpu_64f_C2& dst);
1619 IUMATH_DLLAPI void ifftshift2(const iu::VolumeGpu_64f_C1& src, iu::VolumeGpu_64f_C1& dst);
1620 IUMATH_DLLAPI void ifftshift2(const iu::VolumeGpu_64f_C2& src, iu::VolumeGpu_64f_C2& dst);
1627 
1632 IUMATH_DLLAPI void fft2(const iu::ImageGpu_32f_C2& src, iu::ImageGpu_32f_C2& dst, bool scale_sqrt=false);
1633 IUMATH_DLLAPI void fft2(const iu::VolumeGpu_32f_C2& src, iu::VolumeGpu_32f_C2& dst, bool scale_sqrt=false);
1634 IUMATH_DLLAPI void fft2(const iu::ImageGpu_32f_C1& src, iu::ImageGpu_32f_C2& dst, bool scale_sqrt=false);
1635 IUMATH_DLLAPI void fft2(const iu::VolumeGpu_32f_C1& src, iu::VolumeGpu_32f_C2& dst, bool scale_sqrt=false);
1636 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<float2, 2>& src, iu::LinearDeviceMemory<float2, 2>& dst, bool scale_sqrt=false);
1637 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<float2, 3>& src, iu::LinearDeviceMemory<float2, 3>& dst, bool scale_sqrt=false);
1638 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<float2, 4>& src, iu::LinearDeviceMemory<float2, 4>& dst, bool scale_sqrt=false);
1639 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<float, 2>& src, iu::LinearDeviceMemory<float2, 2>& dst, bool scale_sqrt=false);
1640 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<float, 3>& src, iu::LinearDeviceMemory<float2, 3>& dst, bool scale_sqrt=false);
1641 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<float, 4>& src, iu::LinearDeviceMemory<float2, 4>& dst, bool scale_sqrt=false);
1642 
1643 IUMATH_DLLAPI void fft2(const iu::ImageGpu_64f_C2& src, iu::ImageGpu_64f_C2& dst, bool scale_sqrt=false);
1644 IUMATH_DLLAPI void fft2(const iu::VolumeGpu_64f_C2& src, iu::VolumeGpu_64f_C2& dst, bool scale_sqrt=false);
1645 IUMATH_DLLAPI void fft2(const iu::ImageGpu_64f_C1& src, iu::ImageGpu_64f_C2& dst, bool scale_sqrt=false);
1646 IUMATH_DLLAPI void fft2(const iu::VolumeGpu_64f_C1& src, iu::VolumeGpu_64f_C2& dst, bool scale_sqrt=false);
1647 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<double2, 2>& src, iu::LinearDeviceMemory<double2, 2>& dst, bool scale_sqrt=false);
1648 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<double2, 3>& src, iu::LinearDeviceMemory<double2, 3>& dst, bool scale_sqrt=false);
1649 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<double2, 4>& src, iu::LinearDeviceMemory<double2, 4>& dst, bool scale_sqrt=false);
1650 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<double, 2>& src, iu::LinearDeviceMemory<double2, 2>& dst, bool scale_sqrt=false);
1651 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<double, 3>& src, iu::LinearDeviceMemory<double2, 3>& dst, bool scale_sqrt=false);
1652 IUMATH_DLLAPI void fft2(const iu::LinearDeviceMemory<double, 4>& src, iu::LinearDeviceMemory<double2, 4>& dst, bool scale_sqrt=false);
1653 
1658 IUMATH_DLLAPI void ifft2(const iu::ImageGpu_32f_C2& src, iu::ImageGpu_32f_C2& dst, bool scale_sqrt=false);
1659 IUMATH_DLLAPI void ifft2(const iu::VolumeGpu_32f_C2& src, iu::VolumeGpu_32f_C2& dst, bool scale_sqrt=false);
1660 IUMATH_DLLAPI void ifft2(const iu::ImageGpu_32f_C2& src, iu::ImageGpu_32f_C1& dst, bool scale_sqrt=false);
1661 IUMATH_DLLAPI void ifft2(const iu::VolumeGpu_32f_C2& src, iu::VolumeGpu_32f_C1& dst, bool scale_sqrt=false);
1662 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<float2, 2>& src, iu::LinearDeviceMemory<float2, 2>& dst, bool scale_sqrt=false);
1663 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<float2, 3>& src, iu::LinearDeviceMemory<float2, 3>& dst, bool scale_sqrt=false);
1664 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<float2, 4>& src, iu::LinearDeviceMemory<float2, 4>& dst, bool scale_sqrt=false);
1665 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<float2, 2>& src, iu::LinearDeviceMemory<float, 2>& dst, bool scale_sqrt=false);
1666 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<float2, 3>& src, iu::LinearDeviceMemory<float, 3>& dst, bool scale_sqrt=false);
1667 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<float2, 4>& src, iu::LinearDeviceMemory<float, 4>& dst, bool scale_sqrt=false);
1668 
1669 IUMATH_DLLAPI void ifft2(const iu::ImageGpu_64f_C2& src, iu::ImageGpu_64f_C2& dst, bool scale_sqrt=false);
1670 IUMATH_DLLAPI void ifft2(const iu::VolumeGpu_64f_C2& src, iu::VolumeGpu_64f_C2& dst, bool scale_sqrt=false);
1671 IUMATH_DLLAPI void ifft2(const iu::ImageGpu_64f_C2& src, iu::ImageGpu_64f_C1& dst, bool scale_sqrt=false);
1672 IUMATH_DLLAPI void ifft2(const iu::VolumeGpu_64f_C2& src, iu::VolumeGpu_64f_C1& dst, bool scale_sqrt=false);
1673 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<double2, 2>& src, iu::LinearDeviceMemory<double2, 2>& dst, bool scale_sqrt=false);
1674 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<double2, 3>& src, iu::LinearDeviceMemory<double2, 3>& dst, bool scale_sqrt=false);
1675 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<double2, 4>& src, iu::LinearDeviceMemory<double2, 4>& dst, bool scale_sqrt=false);
1676 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<double2, 2>& src, iu::LinearDeviceMemory<double, 2>& dst, bool scale_sqrt=false);
1677 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<double2, 3>& src, iu::LinearDeviceMemory<double, 3>& dst, bool scale_sqrt=false);
1678 IUMATH_DLLAPI void ifft2(const iu::LinearDeviceMemory<double2, 4>& src, iu::LinearDeviceMemory<double, 4>& dst, bool scale_sqrt=false);
1679 
1684 IUMATH_DLLAPI void fft2c(const iu::ImageGpu_32f_C2& src, iu::ImageGpu_32f_C2& dst, bool scale_sqrt=false);
1685 IUMATH_DLLAPI void fft2c(const iu::VolumeGpu_32f_C2& src, iu::VolumeGpu_32f_C2& dst, bool scale_sqrt=false);
1686 IUMATH_DLLAPI void fft2c(const iu::LinearDeviceMemory<float2, 2>& src, iu::LinearDeviceMemory<float2, 2>& dst, bool scale_sqrt=false);
1687 IUMATH_DLLAPI void fft2c(const iu::LinearDeviceMemory<float2, 3>& src, iu::LinearDeviceMemory<float2, 3>& dst, bool scale_sqrt=false);
1688 IUMATH_DLLAPI void fft2c(const iu::LinearDeviceMemory<float2, 4>& src, iu::LinearDeviceMemory<float2, 4>& dst, bool scale_sqrt=false);
1689 
1690 IUMATH_DLLAPI void fft2c(const iu::ImageGpu_64f_C2& src, iu::ImageGpu_64f_C2& dst, bool scale_sqrt=false);
1691 IUMATH_DLLAPI void fft2c(const iu::VolumeGpu_64f_C2& src, iu::VolumeGpu_64f_C2& dst, bool scale_sqrt=false);
1692 IUMATH_DLLAPI void fft2c(const iu::LinearDeviceMemory<double2, 2>& src, iu::LinearDeviceMemory<double2, 2>& dst, bool scale_sqrt=false);
1693 IUMATH_DLLAPI void fft2c(const iu::LinearDeviceMemory<double2, 3>& src, iu::LinearDeviceMemory<double2, 3>& dst, bool scale_sqrt=false);
1694 IUMATH_DLLAPI void fft2c(const iu::LinearDeviceMemory<double2, 4>& src, iu::LinearDeviceMemory<double2, 4>& dst, bool scale_sqrt=false);
1695 
1700 IUMATH_DLLAPI void ifft2c(const iu::ImageGpu_32f_C2& src, iu::ImageGpu_32f_C2& dst, bool scale_sqrt=false);
1701 IUMATH_DLLAPI void ifft2c(const iu::VolumeGpu_32f_C2& src, iu::VolumeGpu_32f_C2& dst, bool scale_sqrt=false);
1702 IUMATH_DLLAPI void ifft2c(const iu::LinearDeviceMemory<float2, 2>& src, iu::LinearDeviceMemory<float2, 2>& dst, bool scale_sqrt=false);
1703 IUMATH_DLLAPI void ifft2c(const iu::LinearDeviceMemory<float2, 3>& src, iu::LinearDeviceMemory<float2, 3>& dst, bool scale_sqrt=false);
1704 IUMATH_DLLAPI void ifft2c(const iu::LinearDeviceMemory<float2, 4>& src, iu::LinearDeviceMemory<float2, 4>& dst, bool scale_sqrt=false);
1705 
1706 IUMATH_DLLAPI void ifft2c(const iu::ImageGpu_64f_C2& src, iu::ImageGpu_64f_C2& dst, bool scale_sqrt=false);
1707 IUMATH_DLLAPI void ifft2c(const iu::VolumeGpu_64f_C2& src, iu::VolumeGpu_64f_C2& dst, bool scale_sqrt=false);
1708 IUMATH_DLLAPI void ifft2c(const iu::LinearDeviceMemory<double2, 2>& src, iu::LinearDeviceMemory<double2, 2>& dst, bool scale_sqrt=false);
1709 IUMATH_DLLAPI void ifft2c(const iu::LinearDeviceMemory<double2, 3>& src, iu::LinearDeviceMemory<double2, 3>& dst, bool scale_sqrt=false);
1710 IUMATH_DLLAPI void ifft2c(const iu::LinearDeviceMemory<double2, 4>& src, iu::LinearDeviceMemory<double2, 4>& dst, bool scale_sqrt=false);
1711  // end of MathFFT
1713 
1714 } // namespace fft
1715 
1716 } // namespace math
1717 } // namespace iu
1718 
IUMATH_DLLAPI void minMax(iu::ImageGpu_32f_C1 &src, float &minVal, float &maxVal)
IUMATH_DLLAPI void addC(iu::ImageGpu_32f_C1 &src, const float &val, iu::ImageGpu_32f_C1 &dst)
IUMATH_DLLAPI void combinePlanes(iu::VolumeCpu_32f_C1 &src1, iu::VolumeCpu_32f_C1 &src2, iu::VolumeCpu_32f_C2 &dst)
IUMATH_DLLAPI void addWeighted(iu::ImageGpu_32f_C1 &src1, const float &weight1, iu::ImageGpu_32f_C1 &src2, const float &weight2, iu::ImageGpu_32f_C1 &dst)
IUMATH_DLLAPI void normDiffL1(iu::ImageGpu_32f_C1 &src, iu::ImageGpu_32f_C1 &ref, float &norm)
IUMATH_DLLAPI void imag(iu::VolumeCpu_32f_C2 &complex, iu::VolumeCpu_32f_C1 &real)
IUMATH_DLLAPI void mul(iu::ImageGpu_32f_C1 &src1, iu::ImageGpu_32f_C1 &src2, iu::ImageGpu_32f_C1 &dst)
IUMATH_DLLAPI void phase(iu::VolumeCpu_32f_C2 &complex, iu::VolumeCpu_32f_C1 &real)
IUMATH_DLLAPI void scale(iu::VolumeCpu_32f_C2 &complex_src, const float &scale, iu::VolumeCpu_32f_C2 &complex_dst)
IUMATH_DLLAPI void multiplyConjugate(iu::VolumeCpu_32f_C2 &complex_src1, iu::VolumeCpu_32f_C2 &complex_src2, iu::VolumeCpu_32f_C2 &complex_dst)
IUMATH_DLLAPI void abs(iu::VolumeCpu_32f_C2 &complex, iu::VolumeCpu_32f_C1 &real)
IUMATH_DLLAPI void fft2(const iu::ImageGpu_32f_C2 &src, iu::ImageGpu_32f_C2 &dst, bool scale_sqrt=false)
Linear host memory class.
Definition: linearhostmemory.h:33
IUMATH_DLLAPI void fft2c(const iu::ImageGpu_32f_C2 &src, iu::ImageGpu_32f_C2 &dst, bool scale_sqrt=false)
IUMATH_DLLAPI void real(iu::VolumeCpu_32f_C2 &complex, iu::VolumeCpu_32f_C1 &real)
IUMATH_DLLAPI void ifftshift2(const iu::ImageGpu_32f_C1 &src, iu::ImageGpu_32f_C1 &dst)
IUMATH_DLLAPI void mse(iu::ImageGpu_32f_C1 &src, iu::ImageGpu_32f_C1 &ref, float &mse)
IUMATH_DLLAPI void normDiffL2(iu::ImageGpu_32f_C1 &src, iu::ImageGpu_32f_C1 &ref, float &norm)
IUMATH_DLLAPI void ifft2c(const iu::ImageGpu_32f_C2 &src, iu::ImageGpu_32f_C2 &dst, bool scale_sqrt=false)
IUMATH_DLLAPI void fftshift2(const iu::ImageGpu_32f_C1 &src, iu::ImageGpu_32f_C1 &dst)
IUMATH_DLLAPI void splitPlanes(iu::VolumeCpu_32f_C2 &src, iu::VolumeCpu_32f_C1 &dst1, iu::VolumeCpu_32f_C1 &dst2)
IUMATH_DLLAPI void fill(iu::ImageGpu_32f_C1 &dst, float value)
IUMATH_DLLAPI void summation(iu::ImageGpu_32f_C1 &src, float &sum)
IUMATH_DLLAPI void ifft2(const iu::ImageGpu_32f_C2 &src, iu::ImageGpu_32f_C2 &dst, bool scale_sqrt=false)
IUMATH_DLLAPI void multiply(iu::VolumeCpu_32f_C2 &complex_src, iu::VolumeCpu_32f_C1 &real, iu::VolumeCpu_32f_C2 &complex_dst)
Linear device memory class.
Definition: lineardevicememory.h:18
IUMATH_DLLAPI void mulC(iu::ImageGpu_32f_C1 &src, const float &val, iu::ImageGpu_32f_C1 &dst)
Device 2D image class (pitched memory).
Definition: image_gpu.h:34
Host 2D image class (pitched memory).
Definition: image_cpu.h:27
Host 3D volume class (pitched memory).
Definition: volume_cpu.h:13
Device 3D volume class (pitched memory).
Definition: volume_gpu.h:15