1/*
2 * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26
27#ifndef __MLIB_IMAGE_LOOKUP_C_FUNC_INTENAL_H
28#define __MLIB_IMAGE_LOOKUP_C_FUNC_INTENAL_H
29
30#ifdef __cplusplus
31extern "C" {
32#endif
33
34/* mlib_c_ImageLookUp.c */
35
36#define mlib_c_ImageLookUp_U8_U16 mlib_c_ImageLookUp_U8_S16
37#define mlib_c_ImageLookUpSI_U8_U16 mlib_c_ImageLookUpSI_U8_S16
38
39void mlib_c_ImageLookUp_U8_U8(const mlib_u8 *src,
40 mlib_s32 slb,
41 mlib_u8 *dst,
42 mlib_s32 dlb,
43 mlib_s32 xsize,
44 mlib_s32 ysize,
45 mlib_s32 csize,
46 const mlib_u8 **table);
47
48void mlib_c_ImageLookUp_S16_U8(const mlib_s16 *src,
49 mlib_s32 slb,
50 mlib_u8 *dst,
51 mlib_s32 dlb,
52 mlib_s32 xsize,
53 mlib_s32 ysize,
54 mlib_s32 csize,
55 const mlib_u8 **table);
56
57void mlib_c_ImageLookUp_U16_U8(const mlib_u16 *src,
58 mlib_s32 slb,
59 mlib_u8 *dst,
60 mlib_s32 dlb,
61 mlib_s32 xsize,
62 mlib_s32 ysize,
63 mlib_s32 csize,
64 const mlib_u8 **table);
65
66void mlib_c_ImageLookUp_S32_U8(const mlib_s32 *src,
67 mlib_s32 slb,
68 mlib_u8 *dst,
69 mlib_s32 dlb,
70 mlib_s32 xsize,
71 mlib_s32 ysize,
72 mlib_s32 csize,
73 const mlib_u8 **table);
74
75void mlib_c_ImageLookUp_U8_S16(const mlib_u8 *src,
76 mlib_s32 slb,
77 mlib_s16 *dst,
78 mlib_s32 dlb,
79 mlib_s32 xsize,
80 mlib_s32 ysize,
81 mlib_s32 csize,
82 const mlib_s16 **table);
83
84void mlib_c_ImageLookUp_S16_S16(const mlib_s16 *src,
85 mlib_s32 slb,
86 mlib_s16 *dst,
87 mlib_s32 dlb,
88 mlib_s32 xsize,
89 mlib_s32 ysize,
90 mlib_s32 csize,
91 const mlib_s16 **table);
92
93void mlib_c_ImageLookUp_U16_S16(const mlib_u16 *src,
94 mlib_s32 slb,
95 mlib_s16 *dst,
96 mlib_s32 dlb,
97 mlib_s32 xsize,
98 mlib_s32 ysize,
99 mlib_s32 csize,
100 const mlib_s16 **table);
101
102void mlib_c_ImageLookUp_S32_S16(const mlib_s32 *src,
103 mlib_s32 slb,
104 mlib_s16 *dst,
105 mlib_s32 dlb,
106 mlib_s32 xsize,
107 mlib_s32 ysize,
108 mlib_s32 csize,
109 const mlib_s16 **table);
110
111void mlib_c_ImageLookUp_S16_U16(const mlib_s16 *src,
112 mlib_s32 slb,
113 mlib_u16 *dst,
114 mlib_s32 dlb,
115 mlib_s32 xsize,
116 mlib_s32 ysize,
117 mlib_s32 csize,
118 const mlib_s16 **table);
119
120void mlib_c_ImageLookUp_U16_U16(const mlib_u16 *src,
121 mlib_s32 slb,
122 mlib_u16 *dst,
123 mlib_s32 dlb,
124 mlib_s32 xsize,
125 mlib_s32 ysize,
126 mlib_s32 csize,
127 const mlib_s16 **table);
128
129void mlib_c_ImageLookUp_S32_U16(const mlib_s32 *src,
130 mlib_s32 slb,
131 mlib_u16 *dst,
132 mlib_s32 dlb,
133 mlib_s32 xsize,
134 mlib_s32 ysize,
135 mlib_s32 csize,
136 const mlib_s16 **table);
137
138void mlib_c_ImageLookUp_U8_S32(const mlib_u8 *src,
139 mlib_s32 slb,
140 mlib_s32 *dst,
141 mlib_s32 dlb,
142 mlib_s32 xsize,
143 mlib_s32 ysize,
144 mlib_s32 csize,
145 const mlib_s32 **table);
146
147void mlib_c_ImageLookUp_S16_S32(const mlib_s16 *src,
148 mlib_s32 slb,
149 mlib_s32 *dst,
150 mlib_s32 dlb,
151 mlib_s32 xsize,
152 mlib_s32 ysize,
153 mlib_s32 csize,
154 const mlib_s32 **table);
155
156void mlib_c_ImageLookUp_U16_S32(const mlib_u16 *src,
157 mlib_s32 slb,
158 mlib_s32 *dst,
159 mlib_s32 dlb,
160 mlib_s32 xsize,
161 mlib_s32 ysize,
162 mlib_s32 csize,
163 const mlib_s32 **table);
164
165void mlib_c_ImageLookUp_S32_S32(const mlib_s32 *src,
166 mlib_s32 slb,
167 mlib_s32 *dst,
168 mlib_s32 dlb,
169 mlib_s32 xsize,
170 mlib_s32 ysize,
171 mlib_s32 csize,
172 const mlib_s32 **table);
173
174void mlib_c_ImageLookUpSI_U8_U8(const mlib_u8 *src,
175 mlib_s32 slb,
176 mlib_u8 *dst,
177 mlib_s32 dlb,
178 mlib_s32 xsize,
179 mlib_s32 ysize,
180 mlib_s32 csize,
181 const mlib_u8 **table);
182
183void mlib_c_ImageLookUpSI_S16_U8(const mlib_s16 *src,
184 mlib_s32 slb,
185 mlib_u8 *dst,
186 mlib_s32 dlb,
187 mlib_s32 xsize,
188 mlib_s32 ysize,
189 mlib_s32 csize,
190 const mlib_u8 **table);
191
192void mlib_c_ImageLookUpSI_U16_U8(const mlib_u16 *src,
193 mlib_s32 slb,
194 mlib_u8 *dst,
195 mlib_s32 dlb,
196 mlib_s32 xsize,
197 mlib_s32 ysize,
198 mlib_s32 csize,
199 const mlib_u8 **table);
200
201void mlib_c_ImageLookUpSI_S32_U8(const mlib_s32 *src,
202 mlib_s32 slb,
203 mlib_u8 *dst,
204 mlib_s32 dlb,
205 mlib_s32 xsize,
206 mlib_s32 ysize,
207 mlib_s32 csize,
208 const mlib_u8 **table);
209
210void mlib_c_ImageLookUpSI_U8_S16(const mlib_u8 *src,
211 mlib_s32 slb,
212 mlib_s16 *dst,
213 mlib_s32 dlb,
214 mlib_s32 xsize,
215 mlib_s32 ysize,
216 mlib_s32 csize,
217 const mlib_s16 **table);
218
219void mlib_c_ImageLookUpSI_S16_S16(const mlib_s16 *src,
220 mlib_s32 slb,
221 mlib_s16 *dst,
222 mlib_s32 dlb,
223 mlib_s32 xsize,
224 mlib_s32 ysize,
225 mlib_s32 csize,
226 const mlib_s16 **table);
227
228void mlib_c_ImageLookUpSI_U16_S16(const mlib_u16 *src,
229 mlib_s32 slb,
230 mlib_s16 *dst,
231 mlib_s32 dlb,
232 mlib_s32 xsize,
233 mlib_s32 ysize,
234 mlib_s32 csize,
235 const mlib_s16 **table);
236
237void mlib_c_ImageLookUpSI_S32_S16(const mlib_s32 *src,
238 mlib_s32 slb,
239 mlib_s16 *dst,
240 mlib_s32 dlb,
241 mlib_s32 xsize,
242 mlib_s32 ysize,
243 mlib_s32 csize,
244 const mlib_s16 **table);
245
246void mlib_c_ImageLookUpSI_S16_U16(const mlib_s16 *src,
247 mlib_s32 slb,
248 mlib_u16 *dst,
249 mlib_s32 dlb,
250 mlib_s32 xsize,
251 mlib_s32 ysize,
252 mlib_s32 csize,
253 const mlib_u16 **table);
254
255void mlib_c_ImageLookUpSI_U16_U16(const mlib_u16 *src,
256 mlib_s32 slb,
257 mlib_u16 *dst,
258 mlib_s32 dlb,
259 mlib_s32 xsize,
260 mlib_s32 ysize,
261 mlib_s32 csize,
262 const mlib_u16 **table);
263
264void mlib_c_ImageLookUpSI_S32_U16(const mlib_s32 *src,
265 mlib_s32 slb,
266 mlib_u16 *dst,
267 mlib_s32 dlb,
268 mlib_s32 xsize,
269 mlib_s32 ysize,
270 mlib_s32 csize,
271 const mlib_u16 **table);
272
273void mlib_c_ImageLookUpSI_U8_S32(const mlib_u8 *src,
274 mlib_s32 slb,
275 mlib_s32 *dst,
276 mlib_s32 dlb,
277 mlib_s32 xsize,
278 mlib_s32 ysize,
279 mlib_s32 csize,
280 const mlib_s32 **table);
281
282void mlib_c_ImageLookUpSI_S16_S32(const mlib_s16 *src,
283 mlib_s32 slb,
284 mlib_s32 *dst,
285 mlib_s32 dlb,
286 mlib_s32 xsize,
287 mlib_s32 ysize,
288 mlib_s32 csize,
289 const mlib_s32 **table);
290
291void mlib_c_ImageLookUpSI_U16_S32(const mlib_u16 *src,
292 mlib_s32 slb,
293 mlib_s32 *dst,
294 mlib_s32 dlb,
295 mlib_s32 xsize,
296 mlib_s32 ysize,
297 mlib_s32 csize,
298 const mlib_s32 **table);
299
300void mlib_c_ImageLookUpSI_S32_S32(const mlib_s32 *src,
301 mlib_s32 slb,
302 mlib_s32 *dst,
303 mlib_s32 dlb,
304 mlib_s32 xsize,
305 mlib_s32 ysize,
306 mlib_s32 csize,
307 const mlib_s32 **table);
308
309#ifdef __cplusplus
310}
311#endif
312#endif /* __MLIB_IMAGE_LOOKUP_C_FUNC_INTENAL_H */
313