OSDN Git Service

auto import from //depot/cupcake/@135843
[android-x86/prebuilt.git] / linux-x86 / toolchain / i686-unknown-linux-gnu-4.2.1 / lib / gcc / i686-unknown-linux-gnu / 4.2.1 / include / libmng_types.h
1 /*  DO NOT EDIT THIS FILE.
2
3     It has been auto-edited by fixincludes from:
4
5         "/usr/include/libmng_types.h"
6
7     This had to be done to correct non-standard usages in the
8     original, manufacturer supplied header file.  */
9
10 /* ************************************************************************** */
11 /* *             For conditions of distribution and use,                    * */
12 /* *                see copyright notice in libmng.h                        * */
13 /* ************************************************************************** */
14 /* *                                                                        * */
15 /* * project   : libmng                                                     * */
16 /* * file      : libmng_types.h            copyright (c) 2000-2004 G.Juyn   * */
17 /* * version   : 1.0.8                                                      * */
18 /* *                                                                        * */
19 /* * purpose   : type specifications                                        * */
20 /* *                                                                        * */
21 /* * author    : G.Juyn                                                     * */
22 /* *                                                                        * */
23 /* * comment   : Specification of the types used by the library             * */
24 /* *             Creates platform-independant structure                     * */
25 /* *                                                                        * */
26 /* * changes   : 0.5.1 - 05/06/2000 - G.Juyn                                * */
27 /* *             - added iteratechunk callback definition                   * */
28 /* *             0.5.1 - 05/08/2000 - G.Juyn                                * */
29 /* *             - improved definitions for DLL support                     * */
30 /* *             - added 8-bit palette definition                           * */
31 /* *             - added general array definitions                          * */
32 /* *             - added MNG_NULL definition                                * */
33 /* *             - changed strict-ANSI stuff                                * */
34 /* *             0.5.1 - 05/11/2000 - G.Juyn                                * */
35 /* *             - changed most callback prototypes to allow the app        * */
36 /* *               to report errors during callback processing              * */
37 /* *             0.5.1 - 05/16/2000 - G.Juyn                                * */
38 /* *             - moved standard header includes into this file            * */
39 /* *               (stdlib/mem for mem-mngmt & math for fp gamma-calc)      * */
40 /* *                                                                        * */
41 /* *             0.5.2 - 05/18/2000 - G.Juyn                                * */
42 /* *             - B003 - fixed problem with <mem.h> being proprietary      * */
43 /* *               to Borland platform                                      * */
44 /* *             - added helper definitions for JNG (IJG-based)             * */
45 /* *             - fixed support for IJGSRC6B                               * */
46 /* *             0.5.2 - 05/24/2000 - G.Juyn                                * */
47 /* *             - added default IJG compression parameters and such        * */
48 /* *             0.5.2 - 05/31/2000 - G.Juyn                                * */
49 /* *             - fixed inclusion for memcpy (contributed by Tim Rowley)   * */
50 /* *             - added mng_int32p (contributed by Tim Rowley)             * */
51 /* *             0.5.2 - 06/02/2000 - G.Juyn                                * */
52 /* *             - removed SWAP_ENDIAN reference (contributed by Tim Rowley)* */
53 /* *             - added getalphaline callback for RGB8_A8 canvasstyle      * */
54 /* *                                                                        * */
55 /* *             0.5.3 - 06/21/2000 - G.Juyn                                * */
56 /* *             - added speedtype to facilitate testing                    * */
57 /* *             0.5.3 - 06/27/2000 - G.Juyn                                * */
58 /* *             - added typedef for mng_size_t                             * */
59 /* *             - changed size parameter for memory callbacks to           * */
60 /* *               mng_size_t                                               * */
61 /* *             0.5.3 - 06/28/2000 - G.Juyn                                * */
62 /* *             - changed definition of 32-bit ints (64-bit platforms)     * */
63 /* *             - changed definition of mng_handle (64-bit platforms)      * */
64 /* *             0.5.3 - 06/29/2000 - G.Juyn                                * */
65 /* *             - changed definition of mng_handle (again)                 * */
66 /* *             - swapped refresh parameters                               * */
67 /* *             - added inclusion of stdlib.h for abs()                    * */
68 /* *                                                                        * */
69 /* *             0.9.0 - 06/30/2000 - G.Juyn                                * */
70 /* *             - changed refresh parameters to 'x,y,width,height'         * */
71 /* *             0.9.1 - 07/10/2000 - G.Juyn                                * */
72 /* *             - added suspendbuffer constants                            * */
73 /* *             0.9.1 - 07/15/2000 - G.Juyn                                * */
74 /* *             - added callbacks for SAVE/SEEK processing                 * */
75 /* *                                                                        * */
76 /* *             0.9.2 - 08/05/2000 - G.Juyn                                * */
77 /* *             - changed file-prefixes                                    * */
78 /* *                                                                        * */
79 /* *             0.9.3 - 08/07/2000 - G.Juyn                                * */
80 /* *             - B111300 - fixup for improved portability                 * */
81 /* *             0.9.3 - 08/12/2000 - G.Juyn                                * */
82 /* *             - added workaround for faulty PhotoShop iCCP chunk         * */
83 /* *             0.9.3 - 09/11/2000 - G.Juyn                                * */
84 /* *             - added export of zlib functions from windows dll          * */
85 /* *             - fixed inclusion parameters once again to make those      * */
86 /* *               external libs work together                              * */
87 /* *             - re-fixed fixed inclusion parameters                      * */
88 /* *               (these freeking libraries make me mad)                   * */
89 /* *             0.9.3 - 10/11/2000 - G.Juyn                                * */
90 /* *             - added support for nEED                                   * */
91 /* *             0.9.3 - 10/17/2000 - G.Juyn                                * */
92 /* *             - added callback to process non-critical unknown chunks    * */
93 /* *                                                                        * */
94 /* *             0.9.4 - 11/20/2000 - R.Giles                               * */
95 /* *             - fixed inclusion of lcms header for non-windows platforms * */
96 /* *             0.9.4 - 12/12/2000 - G.Juyn                                * */
97 /* *             - changed callback convention for MSVC (Thanks Chad)       * */
98 /* *             0.9.4 - 12/16/2000 - G.Juyn                                * */
99 /* *             - fixed mixup of data- & function-pointers (thanks Dimitri)* */
100 /* *                                                                        * */
101 /* *             1.0.1 - 02/08/2001 - G.Juyn                                * */
102 /* *             - added MEND processing callback                           * */
103 /* *                                                                        * */
104 /* *             1.0.2 - 06/23/2001 - G.Juyn                                * */
105 /* *             - added processterm callback                               * */
106 /* *                                                                        * */
107 /* *             1.0.3 - 08/06/2001 - G.Juyn                                * */
108 /* *             - changed inclusion of lcms.h for Linux platforms          * */
109 /* *                                                                        * */
110 /* *             1.0.5 - 08/19/2002 - G.Juyn                                * */
111 /* *             - B597134 - libmng pollutes the linker namespace           * */
112 /* *                                                                        * */
113 /* *             1.0.6 - 04/11/2003 - G.Juyn                                * */
114 /* *             - B719420 - fixed several MNG_APP_CMS problems             * */
115 /* *             1.0.6 - 06/15/2003 - R.Giles                               * */
116 /* *             - lcms.h inclusion is generally no longer prefixed         * */
117 /* *             1.0.6 - 07/07/2003 - G. R-P.                               * */
118 /* *             - added png_imgtypes enumeration                           * */
119 /* *                                                                        * */
120 /* *             1.0.7 - 03/10/2004 - G.R-P                                 * */
121 /* *             - added conditionals around openstream/closestream         * */
122 /* *             1.0.8 - 04/11/2004 - G.Juyn                                * */
123 /* *             - added data-push mechanisms for specialized decoders      * */
124 /* *             1.0.8 - 08/01/2004 - G.Juyn                                * */
125 /* *             - added support for 3+byte pixelsize for JPEG's            * */
126 /* *                                                                        * */
127 /* ************************************************************************** */
128
129 #ifndef _libmng_types_h_
130 #define _libmng_types_h_
131
132 /* ************************************************************************** */
133
134 #ifdef __BORLANDC__
135 #pragma option -AT                     /* turn off strict ANSI-C for the moment */
136 #endif
137
138 #ifndef WIN32
139 #if defined(_WIN32) || defined(__WIN32__) || defined(_Windows) || defined(_WINDOWS)
140 #define WIN32                          /* gather them into a single define */
141 #endif
142 #endif
143
144 /* ************************************************************************** */
145 /* *                                                                        * */
146 /* * Here's where the external & standard libs are embedded                 * */
147 /* *                                                                        * */
148 /* * (it can be a bit of a pain in the lower-back to get them to work       * */
149 /* *  together)                                                             * */
150 /* *                                                                        * */
151 /* ************************************************************************** */
152
153 #ifdef WIN32                           /* only include needed stuff */
154 #ifndef WIN32_LEAN_AND_MEAN
155 #define WIN32_LEAN_AND_MEAN
156 #endif
157 #endif
158
159 #ifdef MNG_USE_DLL
160 #ifdef MNG_SKIP_ZLIB
161 #undef MNG_INCLUDE_ZLIB
162 #endif
163 #ifdef MNG_SKIP_LCMS
164 #undef MNG_INCLUDE_LCMS
165 #endif
166 #ifdef MNG_SKIP_IJG6B
167 #undef MNG_INCLUDE_IJG6B
168 #endif
169 #endif
170
171 #ifdef MNG_INCLUDE_ZLIB                /* zlib by Mark Adler & Jean-loup Gailly */
172 #include "zlib.h"
173 #endif
174
175 #ifdef MNG_INCLUDE_LCMS                /* little cms by Marti Maria Saguer */
176 #ifndef ZLIB_DLL
177 #undef FAR
178 #endif
179 #if defined(WIN32) || defined(__linux__)   /* different header locations */
180 #include "lcms.h"
181 #else
182 #include "lcms/lcms.h"
183 #endif
184 #endif /* MNG_INCLUDE_LCMS */
185
186 #ifdef MNG_INCLUDE_IJG6B               /* IJG's jpgsrc6b */
187 #include <stdio.h>
188 #ifdef MNG_USE_SETJMP
189 #include <setjmp.h>                    /* needed for error-recovery (blergh) */
190 #else
191 #ifdef WIN32
192 #define USE_WINDOWS_MESSAGEBOX         /* display a messagebox under Windoze */
193 #endif
194 #endif /* MNG_USE_SETJMP */
195 #ifdef FAR
196 #undef FAR                             /* possibly defined by zlib or lcms */
197 #endif
198 #define JPEG_INTERNAL_OPTIONS          /* for RGB_PIXELSIZE */
199 #include "jpeglib.h"                   /* all that for JPEG support  :-) */
200 #endif /* MNG_INCLUDE_IJG6B */
201
202 #if defined(MNG_INTERNAL_MEMMNGMT) || defined(MNG_INCLUDE_FILTERS)
203 #include <stdlib.h>                    /* "calloc" & "free" & "abs" */
204 #endif
205
206 #include <limits.h>                    /* get proper integer widths */
207
208 #ifdef WIN32
209 #if defined __BORLANDC__
210 #include <mem.h>                       /* defines "memcpy" for BCB */
211 #else
212 #include <memory.h>                    /* defines "memcpy" for other win32 platforms */
213 #endif
214 #include <string.h>                    /* "strncmp" + "strcmp" */
215 #else /* WIN32 */
216 #ifdef BSD
217 #include <strings.h>                   /* defines "memcpy", etc for BSD (?) */
218 #else
219 #include <string.h>                    /* defines "memcpy", etc for all others (???) */
220 #endif
221 #endif /* WIN32 */
222
223 #if defined(MNG_FULL_CMS) || defined(MNG_GAMMA_ONLY) || defined(MNG_APP_CMS)
224 #include <math.h>                      /* fp gamma-calculation */
225 #endif
226
227 /* ************************************************************************** */
228 /* *                                                                        * */
229 /* * Platform-dependant stuff                                               * */
230 /* *                                                                        * */
231 /* ************************************************************************** */
232
233 /* TODO: this may require some elaboration for other platforms;
234    only works with BCB for now */
235
236 #ifndef MNG_DLL
237 #if defined(MNG_BUILD_DLL) || defined(MNG_USE_DLL)
238 #define MNG_DLL
239 #endif
240 #endif
241
242 #define MNG_LOCAL static
243
244 #if defined(MNG_DLL) && defined(WIN32) /* setup DLL calling conventions */ 
245 #define MNG_DECL __stdcall
246 #if defined(MNG_BUILD_DLL)
247 #define MNG_EXT __declspec(dllexport)
248 #elif defined(MNG_USE_DLL)
249 #define MNG_EXT __declspec(dllimport)
250 #else
251 #define MNG_EXT
252 #endif
253 #ifdef MNG_STRICT_ANSI
254 #undef MNG_STRICT_ANSI                 /* can't do strict-ANSI with this DLL-stuff */
255 #endif
256 #else
257 #define MNG_DECL                       /* dummies for non-DLL */
258 #define MNG_EXT
259 #endif /* MNG_DLL && WIN32 */
260
261 #if defined(__BORLANDC__) && defined(MNG_STRICT_ANSI)
262 #pragma option -A                      /* now force ANSI-C from here on */
263 #endif
264
265 /* ************************************************************************** */
266
267 #if USHRT_MAX == 0xffffffffU                     /* get the proper 32-bit width !!! */
268 typedef unsigned short   mng_uint32;
269 typedef signed   short   mng_int32;
270 #elif UINT_MAX == 0xffffffffU
271 typedef unsigned int     mng_uint32;
272 typedef signed   int     mng_int32;
273 #elif ULONG_MAX == 0xffffffffU
274 typedef unsigned long    mng_uint32;
275 typedef signed   long    mng_int32;
276 #else
277 #error "Sorry, I can't find any 32-bit integers on this platform."
278 #endif
279
280 typedef signed   short   mng_int16;              /* other basic integers */
281 typedef unsigned short   mng_uint16;
282 typedef signed   char    mng_int8;
283 typedef unsigned char    mng_uint8;
284
285 typedef double           mng_float;              /* basic float */
286
287 typedef size_t           mng_size_t;             /* size field for memory allocation */
288
289 typedef char *           mng_pchar;              /* string */
290 typedef void *           mng_ptr;                /* generic pointer */
291 typedef void             (*mng_fptr) (void);     /* generic function pointer */
292
293 /* ************************************************************************** */
294 /* *                                                                        * */
295 /* * Platform-independant from here                                         * */
296 /* *                                                                        * */
297 /* ************************************************************************** */
298
299 typedef mng_uint32 *     mng_uint32p;            /* pointer to unsigned longs */
300 typedef mng_int32 *      mng_int32p;             /* pointer to longs */
301 typedef mng_uint16 *     mng_uint16p;            /* pointer to unsigned words */
302 typedef mng_uint8 *      mng_uint8p;             /* pointer to unsigned bytes */
303
304 typedef mng_int8         mng_bool;               /* booleans */
305
306 struct mng_data_struct;
307 typedef struct mng_data_struct * mng_handle;     /* generic handle */
308
309 typedef mng_int32        mng_retcode;            /* generic return code */
310 typedef mng_int32        mng_chunkid;            /* 4-byte chunkname identifier */
311 typedef mng_ptr          mng_chunkp;             /* pointer to a chunk-structure */
312 typedef mng_ptr          mng_objectp;            /* pointer to an object-structure */
313
314 typedef mng_chunkid *    mng_chunkidp;           /* pointer to chunkid */
315
316 typedef struct {                                 /* 8-bit palette element */
317           mng_uint8 iRed;
318           mng_uint8 iGreen;
319           mng_uint8 iBlue;
320         } mng_palette8e;
321 typedef mng_palette8e   mng_palette8[256];       /* 8-bit palette */
322 typedef mng_palette8e * mng_palette8ep;
323
324 typedef mng_uint8       mng_uint8arr[256];       /* generic arrays */
325 typedef mng_uint8       mng_uint8arr4[4];
326 typedef mng_uint16      mng_uint16arr[256];
327 typedef mng_uint32      mng_uint32arr2[2];
328
329 /* ************************************************************************** */
330
331 #define MNG_FALSE 0
332 #define MNG_TRUE  1
333 #define MNG_NULL  0
334
335 #define MNG_SUSPENDBUFFERSIZE  32768
336 #define MNG_SUSPENDREQUESTSIZE  1024
337
338 /* ************************************************************************** */
339
340 #ifdef MNG_INCLUDE_ZLIB
341
342 /* size of temporary zlib buffer for deflate processing */
343 #define MNG_ZLIB_MAXBUF     8192
344
345 /* default zlib compression parameters for deflateinit2 */
346 #define MNG_ZLIB_LEVEL      9                    /* level */
347 #define MNG_ZLIB_METHOD     Z_DEFLATED           /* method */
348 #define MNG_ZLIB_WINDOWBITS 15                   /* window size */
349 #define MNG_ZLIB_MEMLEVEL   9                    /* memory level */
350 #define MNG_ZLIB_STRATEGY   Z_DEFAULT_STRATEGY   /* strategy */
351
352 #define MNG_MAX_IDAT_SIZE   4096                 /* maximum size of IDAT data */
353
354 #endif /* MNG_INCLUDE_ZLIB */
355
356 /* ************************************************************************** */
357
358 #ifdef MNG_INCLUDE_JNG
359
360 #ifdef MNG_INCLUDE_IJG6B                         /* IJG helper defs */
361 typedef struct jpeg_compress_struct   mngjpeg_comp;
362 typedef struct jpeg_decompress_struct mngjpeg_decomp;
363 typedef struct jpeg_error_mgr         mngjpeg_error;
364 typedef struct jpeg_source_mgr        mngjpeg_source;
365
366 typedef mngjpeg_comp   * mngjpeg_compp;
367 typedef mngjpeg_decomp * mngjpeg_decompp;
368 typedef mngjpeg_error  * mngjpeg_errorp;
369 typedef mngjpeg_source * mngjpeg_sourcep;
370
371 typedef J_DCT_METHOD     mngjpeg_dctmethod;
372
373 /* default IJG parameters for compression */
374 #define MNG_JPEG_DCT         JDCT_DEFAULT        /* DCT algorithm (JDCT_ISLOW) */
375 #define MNG_JPEG_QUALITY     100                 /* quality 0..100; 100=best */
376 #define MNG_JPEG_SMOOTHING   0                   /* default no smoothing */
377 #define MNG_JPEG_PROGRESSIVE MNG_FALSE           /* default is just baseline */
378 #define MNG_JPEG_OPTIMIZED   MNG_FALSE           /* default is not optimized */
379 #endif /* MNG_INCLUDE_IJG6B */
380
381 #define MNG_JPEG_MAXBUF      65500               /* max size of temp JPEG buffer */
382 #define MNG_MAX_JDAT_SIZE    4096                /* maximum size of JDAT data */
383
384 #endif /* MNG_INCLUDE_JNG */
385
386 /* ************************************************************************** */
387
388 #ifdef MNG_INCLUDE_LCMS
389 typedef cmsHPROFILE         mng_cmsprof;         /* little CMS helper defs */
390 typedef cmsHTRANSFORM       mng_cmstrans;
391 typedef cmsCIExyY           mng_CIExyY;
392 typedef cmsCIExyYTRIPLE     mng_CIExyYTRIPLE;
393 typedef LPGAMMATABLE        mng_gammatabp;
394 #endif /* MNG_INCLUDE_LCMS */
395
396 /* ************************************************************************** */
397
398                                        /* enumeration of known graphics types */
399 enum mng_imgtypes {mng_it_unknown, mng_it_png, mng_it_mng, mng_it_jng};
400 typedef enum mng_imgtypes mng_imgtype;
401
402                                        /* enumeration of animation speed-types */
403 enum mng_speedtypes {mng_st_normal, mng_st_fast, mng_st_slow, mng_st_slowest};
404 typedef enum mng_speedtypes mng_speedtype;
405
406
407 /* ************************************************************************** */
408
409 /* enumeration of PNG image types */
410 #ifdef MNG_OPTIMIZE_FOOTPRINT_INIT
411 enum png_imgtypes
412   {
413     png_g1,
414     png_g2,
415     png_g4,
416     png_g8,
417     png_rgb8,
418     png_idx1,
419     png_idx2,
420     png_idx4,
421     png_idx8,
422     png_ga8,
423     png_rgba8,
424 #ifdef MNG_INCLUDE_JNG
425     png_jpeg_a1,
426     png_jpeg_a2,
427     png_jpeg_a4,
428     png_jpeg_a8,
429 #endif
430 #ifndef MNG_NO_16BIT_SUPPORT
431     png_g16,
432     png_ga16,
433     png_rgb16,
434     png_rgba16,
435 #ifdef MNG_INCLUDE_JNG
436     png_jpeg_a16,
437 #endif
438 #endif
439     png_none
440   };
441     
442 typedef enum png_imgtypes png_imgtype;
443 #endif
444 /* ************************************************************************** */
445
446                                        /* memory management callbacks */
447 typedef mng_ptr    (MNG_DECL *mng_memalloc)      (mng_size_t  iLen);
448 typedef void       (MNG_DECL *mng_memfree)       (mng_ptr     iPtr,
449                                                   mng_size_t  iLen);
450
451 typedef void       (MNG_DECL *mng_releasedata)   (mng_ptr     pUserdata,
452                                                   mng_ptr     pData,
453                                                   mng_size_t  iLength);
454
455                                        /* I/O management callbacks */
456 #ifndef MNG_NO_OPEN_CLOSE_STREAM
457 typedef mng_bool   (MNG_DECL *mng_openstream)    (mng_handle  hHandle);
458 typedef mng_bool   (MNG_DECL *mng_closestream)   (mng_handle  hHandle);
459 #endif
460 typedef mng_bool   (MNG_DECL *mng_readdata)      (mng_handle  hHandle,
461                                                   mng_ptr     pBuf,
462                                                   mng_uint32  iBuflen,
463                                                   mng_uint32p pRead);
464 typedef mng_bool   (MNG_DECL *mng_writedata)     (mng_handle  hHandle,
465                                                   mng_ptr     pBuf,
466                                                   mng_uint32  iBuflen,
467                                                   mng_uint32p pWritten);
468
469                                        /* error & trace processing callbacks */
470 typedef mng_bool   (MNG_DECL *mng_errorproc)     (mng_handle  hHandle,
471                                                   mng_int32   iErrorcode,
472                                                   mng_int8    iSeverity,
473                                                   mng_chunkid iChunkname,
474                                                   mng_uint32  iChunkseq,
475                                                   mng_int32   iExtra1,
476                                                   mng_int32   iExtra2,
477                                                   mng_pchar   zErrortext);
478 typedef mng_bool   (MNG_DECL *mng_traceproc)     (mng_handle  hHandle,
479                                                   mng_int32   iFuncnr,
480                                                   mng_int32   iFuncseq,
481                                                   mng_pchar   zFuncname);
482
483                                        /* read processing callbacks */
484 typedef mng_bool   (MNG_DECL *mng_processheader) (mng_handle  hHandle,
485                                                   mng_uint32  iWidth,
486                                                   mng_uint32  iHeight);
487 typedef mng_bool   (MNG_DECL *mng_processtext)   (mng_handle  hHandle,
488                                                   mng_uint8   iType,
489                                                   mng_pchar   zKeyword,
490                                                   mng_pchar   zText,
491                                                   mng_pchar   zLanguage,
492                                                   mng_pchar   zTranslation);
493 typedef mng_bool   (MNG_DECL *mng_processsave)   (mng_handle  hHandle);
494 typedef mng_bool   (MNG_DECL *mng_processseek)   (mng_handle  hHandle,
495                                                   mng_pchar   zName);
496 typedef mng_bool   (MNG_DECL *mng_processneed)   (mng_handle  hHandle,
497                                                   mng_pchar   zKeyword);
498 typedef mng_bool   (MNG_DECL *mng_processmend)   (mng_handle  hHandle,
499                                                   mng_uint32  iIterationsdone,
500                                                   mng_uint32  iIterationsleft);
501 typedef mng_bool   (MNG_DECL *mng_processunknown) (mng_handle  hHandle,
502                                                    mng_chunkid iChunkid,
503                                                    mng_uint32  iRawlen,
504                                                    mng_ptr     pRawdata);
505 typedef mng_bool   (MNG_DECL *mng_processterm)   (mng_handle  hHandle,
506                                                   mng_uint8   iTermaction,
507                                                   mng_uint8   iIteraction,
508                                                   mng_uint32  iDelay,
509                                                   mng_uint32  iItermax);
510
511                                        /* display processing callbacks */
512 typedef mng_ptr    (MNG_DECL *mng_getcanvasline) (mng_handle  hHandle,
513                                                   mng_uint32  iLinenr);
514 typedef mng_ptr    (MNG_DECL *mng_getbkgdline)   (mng_handle  hHandle,
515                                                   mng_uint32  iLinenr);
516 typedef mng_ptr    (MNG_DECL *mng_getalphaline)  (mng_handle  hHandle,
517                                                   mng_uint32  iLinenr);
518 typedef mng_bool   (MNG_DECL *mng_refresh)       (mng_handle  hHandle,
519                                                   mng_uint32  iX,
520                                                   mng_uint32  iY,
521                                                   mng_uint32  iWidth,
522                                                   mng_uint32  iHeight);
523
524                                        /* timer management callbacks */
525 typedef mng_uint32 (MNG_DECL *mng_gettickcount)  (mng_handle  hHandle);
526 typedef mng_bool   (MNG_DECL *mng_settimer)      (mng_handle  hHandle,
527                                                   mng_uint32  iMsecs);
528
529                                        /* color management callbacks */
530 typedef mng_bool   (MNG_DECL *mng_processgamma)  (mng_handle  hHandle,
531                                                   mng_uint32  iGamma);
532 typedef mng_bool   (MNG_DECL *mng_processchroma) (mng_handle  hHandle,
533                                                   mng_uint32  iWhitepointx,
534                                                   mng_uint32  iWhitepointy,
535                                                   mng_uint32  iRedx,
536                                                   mng_uint32  iRedy,
537                                                   mng_uint32  iGreenx,
538                                                   mng_uint32  iGreeny,
539                                                   mng_uint32  iBluex,
540                                                   mng_uint32  iBluey);
541 typedef mng_bool   (MNG_DECL *mng_processsrgb)   (mng_handle  hHandle,
542                                                   mng_uint8   iRenderingintent);
543 typedef mng_bool   (MNG_DECL *mng_processiccp)   (mng_handle  hHandle,
544                                                   mng_uint32  iProfilesize,
545                                                   mng_ptr     pProfile);
546 typedef mng_bool   (MNG_DECL *mng_processarow)   (mng_handle  hHandle,
547                                                   mng_uint32  iRowsamples,
548                                                   mng_bool    bIsRGBA16,
549                                                   mng_ptr     pRow);
550
551                                        /* chunk access callback(s) */
552 typedef mng_bool   (MNG_DECL *mng_iteratechunk)  (mng_handle  hHandle,
553                                                   mng_handle  hChunk,
554                                                   mng_chunkid iChunkid,
555                                                   mng_uint32  iChunkseq);
556
557 /* ************************************************************************** */
558
559 #endif /* _libmng_types_h_ */
560
561 /* ************************************************************************** */
562 /* * end of file                                                            * */
563 /* ************************************************************************** */
564