src/3rdparty/libmng/libmng_display.h
changeset 0 1918ee327afb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/3rdparty/libmng/libmng_display.h	Mon Jan 11 14:00:40 2010 +0000
@@ -0,0 +1,343 @@
+/* ************************************************************************** */
+/* *             For conditions of distribution and use,                    * */
+/* *                see copyright notice in libmng.h                        * */
+/* ************************************************************************** */
+/* *                                                                        * */
+/* * project   : libmng                                                     * */
+/* * file      : libmng_display.h          copyright (c) 2000-2007 G.Juyn   * */
+/* * version   : 1.0.10                                                     * */
+/* *                                                                        * */
+/* * purpose   : Display management (definition)                            * */
+/* *                                                                        * */
+/* * author    : G.Juyn                                                     * */
+/* *                                                                        * */
+/* * comment   : Definition of the display managament routines              * */
+/* *                                                                        * */
+/* * changes   : 0.5.1 - 05/08/2000 - G.Juyn                                * */
+/* *             - changed strict-ANSI stuff                                * */
+/* *                                                                        * */
+/* *             0.5.2 - 05/20/2000 - G.Juyn                                * */
+/* *             - added JNG support stuff                                  * */
+/* *                                                                        * */
+/* *             0.5.3 - 06/16/2000 - G.Juyn                                * */
+/* *             - changed progressive-display processing                   * */
+/* *             0.5.3 - 06/22/2000 - G.Juyn                                * */
+/* *             - added support for delta-image processing                 * */
+/* *             - added support for PPLT chunk processing                  * */
+/* *                                                                        * */
+/* *             0.9.2 - 08/05/2000 - G.Juyn                                * */
+/* *             - changed file-prefixes                                    * */
+/* *             0.9.3 - 08/07/2000 - G.Juyn                                * */
+/* *             - B111300 - fixup for improved portability                 * */
+/* *             0.9.3 - 08/26/2000 - G.Juyn                                * */
+/* *             - added MAGN chunk                                         * */
+/* *             0.9.3 - 10/16/2000 - G.Juyn                                * */
+/* *             - added JDAA chunk                                         * */
+/* *                                                                        * */
+/* *             0.9.4 - 11/24/2000 - G.Juyn                                * */
+/* *             - moved restore of object 0 to libmng_display              * */
+/* *                                                                        * */
+/* *             1.0.5 - 08/19/2002 - G.Juyn                                * */
+/* *             - B597134 - libmng pollutes the linker namespace           * */
+/* *             1.0.5 - 09/13/2002 - G.Juyn                                * */
+/* *             - fixed read/write of MAGN chunk                           * */
+/* *             1.0.5 - 09/20/2002 - G.Juyn                                * */
+/* *             - added support for PAST                                   * */
+/* *             1.0.5 - 10/07/2002 - G.Juyn                                * */
+/* *             - added proposed change in handling of TERM- & if-delay    * */
+/* *             1.0.5 - 10/20/2002 - G.Juyn                                * */
+/* *             - fixed display of visible target of PAST operation        * */
+/* *                                                                        * */
+/* *             1.0.7 - 03/24/2004 - G.R-P.                                * */
+/* *             - added some SKIPCHUNK conditionals                        * */
+/* *                                                                        * */
+/* *             1.0.9 - 12/11/2004 - G.Juyn                                * */
+/* *             - added conditional MNG_OPTIMIZE_DISPLAYCALLS              * */
+/* *                                                                        * */
+/* *             1.0.10 - 04/08/2007 - G.Juyn                               * */
+/* *             - added support for mPNG proposal                          * */
+/* *             1.0.10 - 04/12/2007 - G.Juyn                               * */
+/* *             - added support for ANG proposal                           * */
+/* *                                                                        * */
+/* ************************************************************************** */
+
+#if defined(__BORLANDC__) && defined(MNG_STRICT_ANSI)
+#pragma option -A                      /* force ANSI-C */
+#endif
+
+#ifndef _libmng_display_h_
+#define _libmng_display_h_
+
+/* ************************************************************************** */
+
+#ifdef MNG_INCLUDE_DISPLAY_PROCS
+
+/* ************************************************************************** */
+
+mng_retcode mng_display_progressive_refresh (mng_datap  pData,
+                                             mng_uint32 iInterval);
+
+/* ************************************************************************** */
+
+mng_retcode mng_reset_objzero         (mng_datap      pData);
+
+mng_retcode mng_display_image         (mng_datap      pData,
+                                       mng_imagep     pImage,
+                                       mng_bool       bLayeradvanced);
+
+mng_retcode mng_execute_delta_image   (mng_datap      pData,
+                                       mng_imagep     pTarget,
+                                       mng_imagep     pDelta);
+
+/* ************************************************************************** */
+
+mng_retcode mng_process_display       (mng_datap      pData);
+
+/* ************************************************************************** */
+
+#ifdef MNG_OPTIMIZE_FOOTPRINT_INIT
+png_imgtype mng_png_imgtype           (mng_uint8      colortype,
+                                       mng_uint8      bitdepth);
+#endif
+
+/* ************************************************************************** */
+
+#ifndef MNG_OPTIMIZE_DISPLAYCALLS
+
+mng_retcode mng_process_display_ihdr  (mng_datap      pData);
+
+#ifdef MNG_INCLUDE_MPNG_PROPOSAL
+mng_retcode mng_process_display_mpng  (mng_datap      pData);
+#endif
+
+#ifdef MNG_INCLUDE_ANG_PROPOSAL
+mng_retcode mng_process_display_ang   (mng_datap      pData);
+#endif
+
+mng_retcode mng_process_display_idat  (mng_datap      pData,
+                                       mng_uint32     iRawlen,
+                                       mng_uint8p     pRawdata);
+
+mng_retcode mng_process_display_iend  (mng_datap      pData);
+mng_retcode mng_process_display_mend  (mng_datap      pData);
+mng_retcode mng_process_display_mend2 (mng_datap      pData);
+mng_retcode mng_process_display_defi  (mng_datap      pData);
+
+#ifndef MNG_SKIPCHUNK_BASI
+mng_retcode mng_process_display_basi  (mng_datap      pData,
+                                       mng_uint16     iRed,
+                                       mng_uint16     iGreen,
+                                       mng_uint16     iBlue,
+                                       mng_bool       bHasalpha,
+                                       mng_uint16     iAlpha,
+                                       mng_uint8      iViewable);
+#endif
+
+#ifndef MNG_SKIPCHUNK_CLON
+mng_retcode mng_process_display_clon  (mng_datap      pData,
+                                       mng_uint16     iSourceid,
+                                       mng_uint16     iCloneid,
+                                       mng_uint8      iClonetype,
+                                       mng_bool       bHasdonotshow,
+                                       mng_uint8      iDonotshow,
+                                       mng_uint8      iConcrete,
+                                       mng_bool       bHasloca,
+                                       mng_uint8      iLocationtype,
+                                       mng_int32      iLocationx,
+                                       mng_int32      iLocationy);
+mng_retcode mng_process_display_clon2 (mng_datap      pData);
+#endif
+
+#ifndef MNG_SKIPCHUNK_DISC
+mng_retcode mng_process_display_disc  (mng_datap      pData,
+                                       mng_uint32     iCount,
+                                       mng_uint16p    pIds);
+#endif
+
+#ifndef MNG_SKIPCHUNK_FRAM
+mng_retcode mng_process_display_fram  (mng_datap      pData,
+                                       mng_uint8      iFramemode,
+                                       mng_uint8      iChangedelay,
+                                       mng_uint32     iDelay,
+                                       mng_uint8      iChangetimeout,
+                                       mng_uint32     iTimeout,
+                                       mng_uint8      iChangeclipping,
+                                       mng_uint8      iCliptype,
+                                       mng_int32      iClipl,
+                                       mng_int32      iClipr,
+                                       mng_int32      iClipt,
+                                       mng_int32      iClipb);
+mng_retcode mng_process_display_fram2 (mng_datap      pData);
+#endif
+
+#ifndef MNG_SKIPCHUNK_MOVE
+mng_retcode mng_process_display_move  (mng_datap      pData,
+                                       mng_uint16     iFromid,
+                                       mng_uint16     iToid,
+                                       mng_uint8      iMovetype,
+                                       mng_int32      iMovex,
+                                       mng_int32      iMovey);
+#endif
+
+#ifndef MNG_SKIPCHUNK_CLIP
+mng_retcode mng_process_display_clip  (mng_datap      pData,
+                                       mng_uint16     iFromid,
+                                       mng_uint16     iToid,
+                                       mng_uint8      iCliptype,
+                                       mng_int32      iClipl,
+                                       mng_int32      iClipr,
+                                       mng_int32      iClipt,
+                                       mng_int32      iClipb);
+#endif
+
+#ifndef MNG_SKIPCHUNK_SHOW
+mng_retcode mng_process_display_show  (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_SAVE
+mng_retcode mng_process_display_save  (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_SEEK
+mng_retcode mng_process_display_seek  (mng_datap      pData);
+#endif
+#ifdef MNG_INCLUDE_JNG
+mng_retcode mng_process_display_jhdr  (mng_datap      pData);
+
+mng_retcode mng_process_display_jdaa  (mng_datap      pData,
+                                       mng_uint32     iRawlen,
+                                       mng_uint8p     pRawdata);
+
+mng_retcode mng_process_display_jdat  (mng_datap      pData,
+                                       mng_uint32     iRawlen,
+                                       mng_uint8p     pRawdata);
+
+#endif
+#ifndef MNG_NO_DELTA_PNG
+mng_retcode mng_process_display_dhdr  (mng_datap      pData,
+                                       mng_uint16     iObjectid,
+                                       mng_uint8      iImagetype,
+                                       mng_uint8      iDeltatype,
+                                       mng_uint32     iBlockwidth,
+                                       mng_uint32     iBlockheight,
+                                       mng_uint32     iBlockx,
+                                       mng_uint32     iBlocky);
+
+mng_retcode mng_process_display_prom  (mng_datap      pData,
+                                       mng_uint8      iBitdepth,
+                                       mng_uint8      iColortype,
+                                       mng_uint8      iFilltype);
+
+mng_retcode mng_process_display_ipng  (mng_datap      pData);
+#ifdef MNG_INCLUDE_JNG
+mng_retcode mng_process_display_ijng  (mng_datap      pData);
+#endif
+
+mng_retcode mng_process_display_pplt  (mng_datap      pData,
+                                       mng_uint8      iType,
+                                       mng_uint32     iCount,
+                                       mng_palette8ep paIndexentries,
+                                       mng_uint8p     paAlphaentries,
+                                       mng_uint8p     paUsedentries);
+#endif
+
+#ifndef MNG_SKIPCHUNK_MAGN
+mng_retcode mng_process_display_magn  (mng_datap      pData,
+                                       mng_uint16     iFirstid,
+                                       mng_uint16     iLastid,
+                                       mng_uint8      iMethodX,
+                                       mng_uint16     iMX,
+                                       mng_uint16     iMY,
+                                       mng_uint16     iML,
+                                       mng_uint16     iMR,
+                                       mng_uint16     iMT,
+                                       mng_uint16     iMB,
+                                       mng_uint8      iMethodY);
+mng_retcode mng_process_display_magn2 (mng_datap      pData);
+#endif
+
+#ifndef MNG_SKIPCHUNK_PAST
+mng_retcode mng_process_display_past  (mng_datap      pData,
+                                       mng_uint16     iTargetid,
+                                       mng_uint8      iTargettype,
+                                       mng_int32      iTargetx,
+                                       mng_int32      iTargety,
+                                       mng_uint32     iCount,
+                                       mng_ptr        pSources);
+mng_retcode mng_process_display_past2 (mng_datap      pData);
+#endif
+
+#else /* MNG_OPTIMIZE_DISPLAYCALLS */
+
+mng_retcode mng_process_display_ihdr  (mng_datap      pData);
+#ifdef MNG_INCLUDE_MPNG_PROPOSAL
+mng_retcode mng_process_display_mpng  (mng_datap      pData);
+#endif
+mng_retcode mng_process_display_idat  (mng_datap      pData);
+mng_retcode mng_process_display_iend  (mng_datap      pData);
+mng_retcode mng_process_display_mend  (mng_datap      pData);
+mng_retcode mng_process_display_mend2 (mng_datap      pData);
+mng_retcode mng_process_display_defi  (mng_datap      pData);
+#ifndef MNG_SKIPCHUNK_BASI
+mng_retcode mng_process_display_basi  (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_CLON
+mng_retcode mng_process_display_clon  (mng_datap      pData);
+mng_retcode mng_process_display_clon2 (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_DISC
+mng_retcode mng_process_display_disc  (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_FRAM
+mng_retcode mng_process_display_fram  (mng_datap      pData);
+mng_retcode mng_process_display_fram2 (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_MOVE
+mng_retcode mng_process_display_move  (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_CLIP
+mng_retcode mng_process_display_clip  (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_SHOW
+mng_retcode mng_process_display_show  (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_SAVE
+mng_retcode mng_process_display_save  (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_SEEK
+mng_retcode mng_process_display_seek  (mng_datap      pData);
+#endif
+#ifdef MNG_INCLUDE_JNG
+mng_retcode mng_process_display_jhdr  (mng_datap      pData);
+mng_retcode mng_process_display_jdaa  (mng_datap      pData);
+mng_retcode mng_process_display_jdat  (mng_datap      pData);
+#endif
+#ifndef MNG_NO_DELTA_PNG
+mng_retcode mng_process_display_dhdr  (mng_datap      pData);
+mng_retcode mng_process_display_prom  (mng_datap      pData);
+mng_retcode mng_process_display_ipng  (mng_datap      pData);
+#ifdef MNG_INCLUDE_JNG
+mng_retcode mng_process_display_ijng  (mng_datap      pData);
+#endif
+mng_retcode mng_process_display_pplt  (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_MAGN
+mng_retcode mng_process_display_magn  (mng_datap      pData);
+mng_retcode mng_process_display_magn2 (mng_datap      pData);
+#endif
+#ifndef MNG_SKIPCHUNK_PAST
+mng_retcode mng_process_display_past  (mng_datap      pData);
+mng_retcode mng_process_display_past2 (mng_datap      pData);
+#endif
+
+#endif /* MNG_OPTIMIZE_DISPLAYCALLS */
+
+/* ************************************************************************** */
+
+#endif /* MNG_INCLUDE_DISPLAY_PROCS */
+
+/* ************************************************************************** */
+
+#endif /* _libmng_display_h_ */
+
+/* ************************************************************************** */
+/* * end of file                                                            * */
+/* ************************************************************************** */