1 /* ************************************************************************** */
2 /* *             For conditions of distribution and use,                    * */
3 /* *                see copyright notice in libmng.h                        * */
4 /* ************************************************************************** */
5 /* *                                                                        * */
6 /* * project   : libmng                                                     * */
7 /* * file      : libmng_pixels.h           copyright (c) 2000 G.Juyn        * */
8 /* * version   : 1.0.1                                                      * */
9 /* *                                                                        * */
10 /* * purpose   : Pixel-row management routines (definition)                 * */
11 /* *                                                                        * */
12 /* * author    : G.Juyn                                                     * */
13 /* * web       : http://www.3-t.com                                         * */
14 /* * email     : mailto:info@3-t.com                                        * */
15 /* *                                                                        * */
16 /* * comment   : Definition of the pixel-row management routines            * */
17 /* *                                                                        * */
18 /* * changes   : 0.5.1 - 05/08/2000 - G.Juyn                                * */
19 /* *             - changed strict-ANSI stuff                                * */
20 /* *                                                                        * */
21 /* *             0.5.2 - 05/22/2000 - G.Juyn                                * */
22 /* *             - added some JNG definitions                               * */
23 /* *             - added delta-image row-processing routines                * */
24 /* *             0.5.2 - 06/05/2000 - G.Juyn                                * */
25 /* *             - added support for RGB8_A8 canvasstyle                    * */
26 /* *                                                                        * */
27 /* *             0.5.3 - 06/16/2000 - G.Juyn                                * */
28 /* *             - changed progressive-display processing                   * */
29 /* *                                                                        * */
30 /* *             0.9.2 - 08/05/2000 - G.Juyn                                * */
31 /* *             - changed file-prefixes                                    * */
32 /* *                                                                        * */
33 /* *             0.9.3 - 08/26/2000 - G.Juyn                                * */
34 /* *             - added MAGN support                                       * */
35 /* *             0.9.3 - 09/07/2000 - G.Juyn                                * */
36 /* *             - added support for new filter_types                       * */
37 /* *             0.9.3 - 10/16/2000 - G.Juyn                                * */
38 /* *             - added optional support for bKGD for PNG images           * */
39 /* *             - added support for JDAA                                   * */
40 /* *             0.9.3 - 10/19/2000 - G.Juyn                                * */
41 /* *             - implemented delayed delta-processing                     * */
42 /* *                                                                        * */
43 /* *             0.9.4 -  1/18/2001 - G.Juyn                                * */
44 /* *             - added "new" MAGN methods 3, 4 & 5                        * */
45 /* *                                                                        * */
46 /* *             1.0.1 - 04/21/2001 - G.Juyn (code by G.Kelly)              * */
47 /* *             - added BGRA8 canvas with premultiplied alpha              * */
48 /* *                                                                        * */
49 /* ************************************************************************** */
50 
51 #if defined(__BORLANDC__) && defined(MNG_STRICT_ANSI)
52 #pragma option -A                      /* force ANSI-C */
53 #endif
54 
55 #ifndef _libmng_pixels_h_
56 #define _libmng_pixels_h_
57 
58 /* ************************************************************************** */
59 /* *                                                                        * */
60 /* * Progressive display check - checks to see if progressive display is    * */
61 /* * in order & indicates so                                                * */
62 /* *                                                                        * */
63 /* * The routine is called after a call to one of the display_xxx routines  * */
64 /* * if appropriate                                                         * */
65 /* *                                                                        * */
66 /* * The refresh is warrented in the read_chunk routine (mng_read.c)        * */
67 /* * and only during read&display processing, since there's not much point  * */
68 /* * doing it from memory!                                                  * */
69 /* *                                                                        * */
70 /* ************************************************************************** */
71 
72 mng_retcode display_progressive_check (mng_datap pData);
73 
74 /* ************************************************************************** */
75 /* *                                                                        * */
76 /* * Display routines - convert rowdata (which is already color-corrected)  * */
77 /* * to the output canvas, respecting any transparency information          * */
78 /* *                                                                        * */
79 /* ************************************************************************** */
80 
81 mng_retcode display_rgb8           (mng_datap  pData);
82 mng_retcode display_rgba8          (mng_datap  pData);
83 mng_retcode display_argb8          (mng_datap  pData);
84 mng_retcode display_rgb8_a8        (mng_datap  pData);
85 mng_retcode display_bgr8           (mng_datap  pData);
86 mng_retcode display_bgra8          (mng_datap  pData);
87 mng_retcode display_bgra8_pm       (mng_datap  pData);
88 mng_retcode display_abgr8          (mng_datap  pData);
89 
90 /* ************************************************************************** */
91 /* *                                                                        * */
92 /* * Background restore routines - restore the background with info from    * */
93 /* * the BACK and/or bKGD chunk and/or the app's background canvas          * */
94 /* *                                                                        * */
95 /* ************************************************************************** */
96 
97 mng_retcode restore_bkgd_backimage (mng_datap  pData);
98 mng_retcode restore_bkgd_backcolor (mng_datap  pData);
99 mng_retcode restore_bkgd_bkgd      (mng_datap  pData);
100 mng_retcode restore_bkgd_bgcolor   (mng_datap  pData);
101 mng_retcode restore_bkgd_rgb8      (mng_datap  pData);
102 mng_retcode restore_bkgd_bgr8      (mng_datap  pData);
103 
104 /* ************************************************************************** */
105 /* *                                                                        * */
106 /* * Row retrieval routines - retrieve processed & uncompressed row-data    * */
107 /* * from the current "object"                                              * */
108 /* *                                                                        * */
109 /* ************************************************************************** */
110 
111 mng_retcode retrieve_g8            (mng_datap  pData);
112 mng_retcode retrieve_g16           (mng_datap  pData);
113 mng_retcode retrieve_rgb8          (mng_datap  pData);
114 mng_retcode retrieve_rgb16         (mng_datap  pData);
115 mng_retcode retrieve_idx8          (mng_datap  pData);
116 mng_retcode retrieve_ga8           (mng_datap  pData);
117 mng_retcode retrieve_ga16          (mng_datap  pData);
118 mng_retcode retrieve_rgba8         (mng_datap  pData);
119 mng_retcode retrieve_rgba16        (mng_datap  pData);
120 
121 /* ************************************************************************** */
122 /* *                                                                        * */
123 /* * Row storage routines - store processed & uncompressed row-data         * */
124 /* * into the current "object"                                              * */
125 /* *                                                                        * */
126 /* ************************************************************************** */
127 
128 mng_retcode store_g1               (mng_datap  pData);
129 mng_retcode store_g2               (mng_datap  pData);
130 mng_retcode store_g4               (mng_datap  pData);
131 mng_retcode store_g8               (mng_datap  pData);
132 mng_retcode store_g16              (mng_datap  pData);
133 mng_retcode store_rgb8             (mng_datap  pData);
134 mng_retcode store_rgb16            (mng_datap  pData);
135 mng_retcode store_idx1             (mng_datap  pData);
136 mng_retcode store_idx2             (mng_datap  pData);
137 mng_retcode store_idx4             (mng_datap  pData);
138 mng_retcode store_idx8             (mng_datap  pData);
139 mng_retcode store_ga8              (mng_datap  pData);
140 mng_retcode store_ga16             (mng_datap  pData);
141 mng_retcode store_rgba8            (mng_datap  pData);
142 mng_retcode store_rgba16           (mng_datap  pData);
143 
144 /* ************************************************************************** */
145 /* *                                                                        * */
146 /* * Row storage routines (JPEG) - store processed & uncompressed row-data  * */
147 /* * into the current "object"                                              * */
148 /* *                                                                        * */
149 /* ************************************************************************** */
150 
151 mng_retcode store_jpeg_g8          (mng_datap  pData);
152 mng_retcode store_jpeg_rgb8        (mng_datap  pData);
153 mng_retcode store_jpeg_ga8         (mng_datap  pData);
154 mng_retcode store_jpeg_rgba8       (mng_datap  pData);
155 
156 mng_retcode store_jpeg_g12         (mng_datap  pData);
157 mng_retcode store_jpeg_rgb12       (mng_datap  pData);
158 mng_retcode store_jpeg_ga12        (mng_datap  pData);
159 mng_retcode store_jpeg_rgba12      (mng_datap  pData);
160 
161 mng_retcode store_jpeg_g8_alpha    (mng_datap  pData);
162 mng_retcode store_jpeg_rgb8_alpha  (mng_datap  pData);
163 
164 mng_retcode store_jpeg_g8_a1       (mng_datap  pData);
165 mng_retcode store_jpeg_g8_a2       (mng_datap  pData);
166 mng_retcode store_jpeg_g8_a4       (mng_datap  pData);
167 mng_retcode store_jpeg_g8_a8       (mng_datap  pData);
168 mng_retcode store_jpeg_g8_a16      (mng_datap  pData);
169 
170 mng_retcode store_jpeg_rgb8_a1     (mng_datap  pData);
171 mng_retcode store_jpeg_rgb8_a2     (mng_datap  pData);
172 mng_retcode store_jpeg_rgb8_a4     (mng_datap  pData);
173 mng_retcode store_jpeg_rgb8_a8     (mng_datap  pData);
174 mng_retcode store_jpeg_rgb8_a16    (mng_datap  pData);
175 
176 mng_retcode store_jpeg_g12_a1      (mng_datap  pData);
177 mng_retcode store_jpeg_g12_a2      (mng_datap  pData);
178 mng_retcode store_jpeg_g12_a4      (mng_datap  pData);
179 mng_retcode store_jpeg_g12_a8      (mng_datap  pData);
180 mng_retcode store_jpeg_g12_a16     (mng_datap  pData);
181 
182 mng_retcode store_jpeg_rgb12_a1    (mng_datap  pData);
183 mng_retcode store_jpeg_rgb12_a2    (mng_datap  pData);
184 mng_retcode store_jpeg_rgb12_a4    (mng_datap  pData);
185 mng_retcode store_jpeg_rgb12_a8    (mng_datap  pData);
186 mng_retcode store_jpeg_rgb12_a16   (mng_datap  pData);
187 
188 /* ************************************************************************** */
189 /* *                                                                        * */
190 /* * Delta-image row routines - apply the processed & uncompressed row-data * */
191 /* * onto the target "object"                                               * */
192 /* *                                                                        * */
193 /* ************************************************************************** */
194 
195 mng_retcode delta_g1               (mng_datap  pData);
196 mng_retcode delta_g2               (mng_datap  pData);
197 mng_retcode delta_g4               (mng_datap  pData);
198 mng_retcode delta_g8               (mng_datap  pData);
199 mng_retcode delta_g16              (mng_datap  pData);
200 mng_retcode delta_rgb8             (mng_datap  pData);
201 mng_retcode delta_rgb16            (mng_datap  pData);
202 mng_retcode delta_idx1             (mng_datap  pData);
203 mng_retcode delta_idx2             (mng_datap  pData);
204 mng_retcode delta_idx4             (mng_datap  pData);
205 mng_retcode delta_idx8             (mng_datap  pData);
206 mng_retcode delta_ga8              (mng_datap  pData);
207 mng_retcode delta_ga16             (mng_datap  pData);
208 mng_retcode delta_rgba8            (mng_datap  pData);
209 mng_retcode delta_rgba16           (mng_datap  pData);
210 
211 /* ************************************************************************** */
212 /* *                                                                        * */
213 /* * Delta-image row routines - apply the source row onto the target        * */
214 /* *                                                                        * */
215 /* ************************************************************************** */
216 
217 mng_retcode delta_g1_g1            (mng_datap  pData);
218 mng_retcode delta_g2_g2            (mng_datap  pData);
219 mng_retcode delta_g4_g4            (mng_datap  pData);
220 mng_retcode delta_g8_g8            (mng_datap  pData);
221 mng_retcode delta_g16_g16          (mng_datap  pData);
222 mng_retcode delta_rgb8_rgb8        (mng_datap  pData);
223 mng_retcode delta_rgb16_rgb16      (mng_datap  pData);
224 mng_retcode delta_ga8_ga8          (mng_datap  pData);
225 mng_retcode delta_ga8_g8           (mng_datap  pData);
226 mng_retcode delta_ga8_a8           (mng_datap  pData);
227 mng_retcode delta_ga16_ga16        (mng_datap  pData);
228 mng_retcode delta_ga16_g16         (mng_datap  pData);
229 mng_retcode delta_ga16_a16         (mng_datap  pData);
230 mng_retcode delta_rgba8_rgba8      (mng_datap  pData);
231 mng_retcode delta_rgba8_rgb8       (mng_datap  pData);
232 mng_retcode delta_rgba8_a8         (mng_datap  pData);
233 mng_retcode delta_rgba16_rgba16    (mng_datap  pData);
234 mng_retcode delta_rgba16_rgb16     (mng_datap  pData);
235 mng_retcode delta_rgba16_a16       (mng_datap  pData);
236 
237 /* ************************************************************************** */
238 /* *                                                                        * */
239 /* * Delta-image row routines - scale the source to bitdepth of target      * */
240 /* *                                                                        * */
241 /* ************************************************************************** */
242 
243 
244 
245 /* ************************************************************************** */
246 /* *                                                                        * */
247 /* * Row processing routines - convert uncompressed data from zlib to       * */
248 /* * managable row-data which serves as input to the color-management       * */
249 /* * routines                                                               * */
250 /* *                                                                        * */
251 /* ************************************************************************** */
252 
253 mng_retcode process_g1             (mng_datap  pData);
254 mng_retcode process_g2             (mng_datap  pData);
255 mng_retcode process_g4             (mng_datap  pData);
256 mng_retcode process_g8             (mng_datap  pData);
257 mng_retcode process_g16            (mng_datap  pData);
258 mng_retcode process_rgb8           (mng_datap  pData);
259 mng_retcode process_rgb16          (mng_datap  pData);
260 mng_retcode process_idx1           (mng_datap  pData);
261 mng_retcode process_idx2           (mng_datap  pData);
262 mng_retcode process_idx4           (mng_datap  pData);
263 mng_retcode process_idx8           (mng_datap  pData);
264 mng_retcode process_ga8            (mng_datap  pData);
265 mng_retcode process_ga16           (mng_datap  pData);
266 mng_retcode process_rgba8          (mng_datap  pData);
267 mng_retcode process_rgba16         (mng_datap  pData);
268 
269 /* ************************************************************************** */
270 /* *                                                                        * */
271 /* * Row processing initialization routines - set up the variables needed   * */
272 /* * to process uncompressed row-data                                       * */
273 /* *                                                                        * */
274 /* ************************************************************************** */
275 
276 mng_retcode init_g1_ni             (mng_datap  pData);
277 mng_retcode init_g1_i              (mng_datap  pData);
278 mng_retcode init_g2_ni             (mng_datap  pData);
279 mng_retcode init_g2_i              (mng_datap  pData);
280 mng_retcode init_g4_ni             (mng_datap  pData);
281 mng_retcode init_g4_i              (mng_datap  pData);
282 mng_retcode init_g8_ni             (mng_datap  pData);
283 mng_retcode init_g8_i              (mng_datap  pData);
284 mng_retcode init_g16_ni            (mng_datap  pData);
285 mng_retcode init_g16_i             (mng_datap  pData);
286 mng_retcode init_rgb8_ni           (mng_datap  pData);
287 mng_retcode init_rgb8_i            (mng_datap  pData);
288 mng_retcode init_rgb16_ni          (mng_datap  pData);
289 mng_retcode init_rgb16_i           (mng_datap  pData);
290 mng_retcode init_idx1_ni           (mng_datap  pData);
291 mng_retcode init_idx1_i            (mng_datap  pData);
292 mng_retcode init_idx2_ni           (mng_datap  pData);
293 mng_retcode init_idx2_i            (mng_datap  pData);
294 mng_retcode init_idx4_ni           (mng_datap  pData);
295 mng_retcode init_idx4_i            (mng_datap  pData);
296 mng_retcode init_idx8_ni           (mng_datap  pData);
297 mng_retcode init_idx8_i            (mng_datap  pData);
298 mng_retcode init_ga8_ni            (mng_datap  pData);
299 mng_retcode init_ga8_i             (mng_datap  pData);
300 mng_retcode init_ga16_ni           (mng_datap  pData);
301 mng_retcode init_ga16_i            (mng_datap  pData);
302 mng_retcode init_rgba8_ni          (mng_datap  pData);
303 mng_retcode init_rgba8_i           (mng_datap  pData);
304 mng_retcode init_rgba16_ni         (mng_datap  pData);
305 mng_retcode init_rgba16_i          (mng_datap  pData);
306 
307 /* ************************************************************************** */
308 /* *                                                                        * */
309 /* * Row processing initialization routines (JPEG) - set up the variables   * */
310 /* * needed to process uncompressed row-data                                * */
311 /* *                                                                        * */
312 /* ************************************************************************** */
313 
314 mng_retcode init_jpeg_a1_ni        (mng_datap  pData);
315 mng_retcode init_jpeg_a2_ni        (mng_datap  pData);
316 mng_retcode init_jpeg_a4_ni        (mng_datap  pData);
317 mng_retcode init_jpeg_a8_ni        (mng_datap  pData);
318 mng_retcode init_jpeg_a16_ni       (mng_datap  pData);
319 
320 /* ************************************************************************** */
321 /* *                                                                        * */
322 /* * General row processing routines                                        * */
323 /* *                                                                        * */
324 /* ************************************************************************** */
325 
326 mng_retcode init_rowproc           (mng_datap  pData);
327 mng_retcode next_row               (mng_datap  pData);
328 mng_retcode next_jpeg_alpharow     (mng_datap  pData);
329 mng_retcode next_jpeg_row          (mng_datap  pData);
330 mng_retcode cleanup_rowproc        (mng_datap  pData);
331 
332 /* ************************************************************************** */
333 /* *                                                                        * */
334 /* * Magnification row routines - apply magnification transforms            * */
335 /* *                                                                        * */
336 /* ************************************************************************** */
337 
338 mng_retcode magnify_g8_x1          (mng_datap  pData,
339                                     mng_uint16 iMX,
340                                     mng_uint16 iML,
341                                     mng_uint16 iMR,
342                                     mng_uint32 iWidth,
343                                     mng_uint8p pSrcline,
344                                     mng_uint8p pDstline);
345 mng_retcode magnify_g8_x2          (mng_datap  pData,
346                                     mng_uint16 iMX,
347                                     mng_uint16 iML,
348                                     mng_uint16 iMR,
349                                     mng_uint32 iWidth,
350                                     mng_uint8p pSrcline,
351                                     mng_uint8p pDstline);
352 mng_retcode magnify_g8_x3          (mng_datap  pData,
353                                     mng_uint16 iMX,
354                                     mng_uint16 iML,
355                                     mng_uint16 iMR,
356                                     mng_uint32 iWidth,
357                                     mng_uint8p pSrcline,
358                                     mng_uint8p pDstline);
359 mng_retcode magnify_rgb8_x1        (mng_datap  pData,
360                                     mng_uint16 iMX,
361                                     mng_uint16 iML,
362                                     mng_uint16 iMR,
363                                     mng_uint32 iWidth,
364                                     mng_uint8p pSrcline,
365                                     mng_uint8p pDstline);
366 mng_retcode magnify_rgb8_x2        (mng_datap  pData,
367                                     mng_uint16 iMX,
368                                     mng_uint16 iML,
369                                     mng_uint16 iMR,
370                                     mng_uint32 iWidth,
371                                     mng_uint8p pSrcline,
372                                     mng_uint8p pDstline);
373 mng_retcode magnify_rgb8_x3        (mng_datap  pData,
374                                     mng_uint16 iMX,
375                                     mng_uint16 iML,
376                                     mng_uint16 iMR,
377                                     mng_uint32 iWidth,
378                                     mng_uint8p pSrcline,
379                                     mng_uint8p pDstline);
380 mng_retcode magnify_ga8_x1         (mng_datap  pData,
381                                     mng_uint16 iMX,
382                                     mng_uint16 iML,
383                                     mng_uint16 iMR,
384                                     mng_uint32 iWidth,
385                                     mng_uint8p pSrcline,
386                                     mng_uint8p pDstline);
387 mng_retcode magnify_ga8_x2         (mng_datap  pData,
388                                     mng_uint16 iMX,
389                                     mng_uint16 iML,
390                                     mng_uint16 iMR,
391                                     mng_uint32 iWidth,
392                                     mng_uint8p pSrcline,
393                                     mng_uint8p pDstline);
394 mng_retcode magnify_ga8_x3         (mng_datap  pData,
395                                     mng_uint16 iMX,
396                                     mng_uint16 iML,
397                                     mng_uint16 iMR,
398                                     mng_uint32 iWidth,
399                                     mng_uint8p pSrcline,
400                                     mng_uint8p pDstline);
401 mng_retcode magnify_ga8_x4         (mng_datap  pData,
402                                     mng_uint16 iMX,
403                                     mng_uint16 iML,
404                                     mng_uint16 iMR,
405                                     mng_uint32 iWidth,
406                                     mng_uint8p pSrcline,
407                                     mng_uint8p pDstline);
408 mng_retcode magnify_ga8_x5         (mng_datap  pData,
409                                     mng_uint16 iMX,
410                                     mng_uint16 iML,
411                                     mng_uint16 iMR,
412                                     mng_uint32 iWidth,
413                                     mng_uint8p pSrcline,
414                                     mng_uint8p pDstline);
415 mng_retcode magnify_rgba8_x1       (mng_datap  pData,
416                                     mng_uint16 iMX,
417                                     mng_uint16 iML,
418                                     mng_uint16 iMR,
419                                     mng_uint32 iWidth,
420                                     mng_uint8p pSrcline,
421                                     mng_uint8p pDstline);
422 mng_retcode magnify_rgba8_x2       (mng_datap  pData,
423                                     mng_uint16 iMX,
424                                     mng_uint16 iML,
425                                     mng_uint16 iMR,
426                                     mng_uint32 iWidth,
427                                     mng_uint8p pSrcline,
428                                     mng_uint8p pDstline);
429 mng_retcode magnify_rgba8_x3       (mng_datap  pData,
430                                     mng_uint16 iMX,
431                                     mng_uint16 iML,
432                                     mng_uint16 iMR,
433                                     mng_uint32 iWidth,
434                                     mng_uint8p pSrcline,
435                                     mng_uint8p pDstline);
436 mng_retcode magnify_rgba8_x4       (mng_datap  pData,
437                                     mng_uint16 iMX,
438                                     mng_uint16 iML,
439                                     mng_uint16 iMR,
440                                     mng_uint32 iWidth,
441                                     mng_uint8p pSrcline,
442                                     mng_uint8p pDstline);
443 mng_retcode magnify_rgba8_x5       (mng_datap  pData,
444                                     mng_uint16 iMX,
445                                     mng_uint16 iML,
446                                     mng_uint16 iMR,
447                                     mng_uint32 iWidth,
448                                     mng_uint8p pSrcline,
449                                     mng_uint8p pDstline);
450 
451 mng_retcode magnify_g8_y1          (mng_datap  pData,
452                                     mng_int32  iS,
453                                     mng_int32  iM,
454                                     mng_uint32 iWidth,
455                                     mng_uint8p pSrcline1,
456                                     mng_uint8p pSrcline2,
457                                     mng_uint8p pDstline);
458 mng_retcode magnify_g8_y2          (mng_datap  pData,
459                                     mng_int32  iS,
460                                     mng_int32  iM,
461                                     mng_uint32 iWidth,
462                                     mng_uint8p pSrcline1,
463                                     mng_uint8p pSrcline2,
464                                     mng_uint8p pDstline);
465 mng_retcode magnify_g8_y3          (mng_datap  pData,
466                                     mng_int32  iS,
467                                     mng_int32  iM,
468                                     mng_uint32 iWidth,
469                                     mng_uint8p pSrcline1,
470                                     mng_uint8p pSrcline2,
471                                     mng_uint8p pDstline);
472 mng_retcode magnify_rgb8_y1        (mng_datap  pData,
473                                     mng_int32  iS,
474                                     mng_int32  iM,
475                                     mng_uint32 iWidth,
476                                     mng_uint8p pSrcline1,
477                                     mng_uint8p pSrcline2,
478                                     mng_uint8p pDstline);
479 mng_retcode magnify_rgb8_y2        (mng_datap  pData,
480                                     mng_int32  iS,
481                                     mng_int32  iM,
482                                     mng_uint32 iWidth,
483                                     mng_uint8p pSrcline1,
484                                     mng_uint8p pSrcline2,
485                                     mng_uint8p pDstline);
486 mng_retcode magnify_rgb8_y3        (mng_datap  pData,
487                                     mng_int32  iS,
488                                     mng_int32  iM,
489                                     mng_uint32 iWidth,
490                                     mng_uint8p pSrcline1,
491                                     mng_uint8p pSrcline2,
492                                     mng_uint8p pDstline);
493 mng_retcode magnify_ga8_y1         (mng_datap  pData,
494                                     mng_int32  iS,
495                                     mng_int32  iM,
496                                     mng_uint32 iWidth,
497                                     mng_uint8p pSrcline1,
498                                     mng_uint8p pSrcline2,
499                                     mng_uint8p pDstline);
500 mng_retcode magnify_ga8_y2         (mng_datap  pData,
501                                     mng_int32  iS,
502                                     mng_int32  iM,
503                                     mng_uint32 iWidth,
504                                     mng_uint8p pSrcline1,
505                                     mng_uint8p pSrcline2,
506                                     mng_uint8p pDstline);
507 mng_retcode magnify_ga8_y3         (mng_datap  pData,
508                                     mng_int32  iS,
509                                     mng_int32  iM,
510                                     mng_uint32 iWidth,
511                                     mng_uint8p pSrcline1,
512                                     mng_uint8p pSrcline2,
513                                     mng_uint8p pDstline);
514 mng_retcode magnify_ga8_y4         (mng_datap  pData,
515                                     mng_int32  iS,
516                                     mng_int32  iM,
517                                     mng_uint32 iWidth,
518                                     mng_uint8p pSrcline1,
519                                     mng_uint8p pSrcline2,
520                                     mng_uint8p pDstline);
521 mng_retcode magnify_ga8_y5         (mng_datap  pData,
522                                     mng_int32  iS,
523                                     mng_int32  iM,
524                                     mng_uint32 iWidth,
525                                     mng_uint8p pSrcline1,
526                                     mng_uint8p pSrcline2,
527                                     mng_uint8p pDstline);
528 mng_retcode magnify_rgba8_y1       (mng_datap  pData,
529                                     mng_int32  iS,
530                                     mng_int32  iM,
531                                     mng_uint32 iWidth,
532                                     mng_uint8p pSrcline1,
533                                     mng_uint8p pSrcline2,
534                                     mng_uint8p pDstline);
535 mng_retcode magnify_rgba8_y2       (mng_datap  pData,
536                                     mng_int32  iS,
537                                     mng_int32  iM,
538                                     mng_uint32 iWidth,
539                                     mng_uint8p pSrcline1,
540                                     mng_uint8p pSrcline2,
541                                     mng_uint8p pDstline);
542 mng_retcode magnify_rgba8_y3       (mng_datap  pData,
543                                     mng_int32  iS,
544                                     mng_int32  iM,
545                                     mng_uint32 iWidth,
546                                     mng_uint8p pSrcline1,
547                                     mng_uint8p pSrcline2,
548                                     mng_uint8p pDstline);
549 mng_retcode magnify_rgba8_y4       (mng_datap  pData,
550                                     mng_int32  iS,
551                                     mng_int32  iM,
552                                     mng_uint32 iWidth,
553                                     mng_uint8p pSrcline1,
554                                     mng_uint8p pSrcline2,
555                                     mng_uint8p pDstline);
556 mng_retcode magnify_rgba8_y5       (mng_datap  pData,
557                                     mng_int32  iS,
558                                     mng_int32  iM,
559                                     mng_uint32 iWidth,
560                                     mng_uint8p pSrcline1,
561                                     mng_uint8p pSrcline2,
562                                     mng_uint8p pDstline);
563 
564 /* ************************************************************************** */
565 
566 #endif /* _libmng_pixels_h_ */
567 
568 /* ************************************************************************** */
569 /* * end of file                                                            * */
570 /* ************************************************************************** */
571