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