| /* ************************************************************************** */ |
| /* * 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 * */ |
| /* ************************************************************************** */ |