📄 libmng_data.h
字号:
mng_bool bResetting; /* indicates app requested a reset */ mng_bool bNeedrefresh; /* indicates screen-refresh is needed */ mng_bool bMisplacedTERM; /* indicates TERM is out of place */ mng_bool bOnlyfirstframe; /* show first frame after TERM and stop */ mng_uint32 iFramesafterTERM; /* determines frame-count after TERM */ mng_objectp pCurrentobj; /* current "object" */ mng_objectp pCurraniobj; /* current animation object "to be"/"being" processed */ mng_objectp pTermaniobj; /* TERM animation object */ mng_uint32 iIterations; /* TERM/MEND iteration count */ mng_objectp pObjzero; /* "on-the-fly" image (object = 0) */ mng_objectp pLastclone; /* last clone */ mng_objectp pStoreobj; /* current store object for row routines */ mng_objectp pStorebuf; /* current store object-buffer for row routines */ mng_objectp pRetrieveobj; /* current retrieve object for row routines */ mng_savedatap pSavedata; /* pointer to saved data (after SAVE) */ mng_uint32 iUpdateleft; /* update region for refresh */ mng_uint32 iUpdateright; mng_uint32 iUpdatetop; mng_uint32 iUpdatebottom; mng_int8 iPass; /* current interlacing pass; negative value means no interlace */ mng_int32 iRow; /* current row counter */ mng_int32 iRowinc; /* row increment for this pass */ mng_int32 iCol; /* current starting column */ mng_int32 iColinc; /* column increment for this pass */ mng_int32 iRowsamples; /* nr. of samples in current workrow */ mng_int32 iSamplemul; /* needed to calculate rowsize */ mng_int32 iSampleofs; /* from rowsamples */ mng_int32 iSamplediv; mng_int32 iRowsize; /* size of actual data in work row */ mng_int32 iRowmax; /* maximum size of data in work row */ mng_int32 iFilterofs; /* offset to filter-byte in work row */ mng_int32 iPixelofs; /* offset to pixel-bytes in work row */ mng_uint32 iLevel0; /* leveling variables */ mng_uint32 iLevel1; mng_uint32 iLevel2; mng_uint32 iLevel3; mng_uint8p pWorkrow; /* working row of pixel-data */ mng_uint8p pPrevrow; /* previous row of pixel-data */ mng_uint8p pRGBArow; /* intermediate row of RGBA8 or RGBA16 data */ mng_bool bIsRGBA16; /* indicates intermediate row is RGBA16 */ mng_bool bIsOpaque; /* indicates intermediate row is fully opaque */ mng_int32 iFilterbpp; /* bpp index for filtering routines */ mng_int32 iSourcel; /* variables for showing objects */ mng_int32 iSourcer; mng_int32 iSourcet; mng_int32 iSourceb; mng_int32 iDestl; mng_int32 iDestr; mng_int32 iDestt; mng_int32 iDestb; mng_objectp pFirstimgobj; /* double-linked list of */ mng_objectp pLastimgobj; /* image-object structures */ mng_objectp pFirstaniobj; /* double-linked list of */ mng_objectp pLastaniobj; /* animation-object structures */#ifdef MNG_SUPPORT_DYNAMICMNG mng_objectp pFirstevent; /* double-linked list of */ mng_objectp pLastevent; /* event-object structures */#endif#if defined(MNG_GAMMA_ONLY) || defined(MNG_FULL_CMS) || defined(MNG_APP_CMS) mng_uint8 aGammatab[256]; /* precomputed gamma lookup table */ mng_float dLastgamma; /* last gamma used to compute table */#endif mng_fptr fDisplayrow; /* internal callback to display an uncompressed/unfiltered/ color-corrected row */ mng_fptr fRestbkgdrow; /* internal callback for restore- background processing of a row */ mng_fptr fCorrectrow; /* internal callback to color-correct an uncompressed/unfiltered row */ mng_fptr fRetrieverow; /* internal callback to retrieve an uncompressed/unfiltered row of data */ mng_fptr fStorerow; /* internal callback to store an uncompressed/unfiltered row of data */ mng_fptr fProcessrow; /* internal callback to process an uncompressed row of data */ mng_fptr fDifferrow; /* internal callback to perform added filter leveling and differing on an unfiltered row */ mng_fptr fScalerow; /* internal callback to scale a delta-row to the bitdepth of its target */ mng_fptr fDeltarow; /* internal callback to execute a delta-row onto a target */#ifndef MNG_SKIPCHUNK_PAST mng_fptr fFliprow; /* internal callback to flip a row of pixels left<->right for a PAST operation */ mng_fptr fTilerow; /* internal callback to tile a row of pixels during a PAST operation */#endif mng_fptr fInitrowproc; /* internal callback to initialize the row processing */ mng_uint16 iDEFIobjectid; /* DEFI fields */ mng_bool bDEFIhasdonotshow; mng_uint8 iDEFIdonotshow; mng_bool bDEFIhasconcrete; mng_uint8 iDEFIconcrete; mng_bool bDEFIhasloca; mng_int32 iDEFIlocax; mng_int32 iDEFIlocay; mng_bool bDEFIhasclip; mng_int32 iDEFIclipl; mng_int32 iDEFIclipr; mng_int32 iDEFIclipt; mng_int32 iDEFIclipb; mng_uint16 iBACKred; /* BACK fields */ mng_uint16 iBACKgreen; mng_uint16 iBACKblue; mng_uint8 iBACKmandatory; mng_uint16 iBACKimageid; mng_uint8 iBACKtile; mng_int32 iBackimgoffsx; /* temp variables for restore_bkgd */ mng_int32 iBackimgoffsy; mng_uint32 iBackimgwidth; mng_uint32 iBackimgheight;#ifndef MNG_SKIPCHUNK_FRAM mng_uint8 iFRAMmode; /* FRAM fields (global) */ mng_uint32 iFRAMdelay; mng_uint32 iFRAMtimeout; mng_bool bFRAMclipping; mng_int32 iFRAMclipl; mng_int32 iFRAMclipr; mng_int32 iFRAMclipt; mng_int32 iFRAMclipb; mng_uint8 iFramemode; /* current subframe variables */ mng_uint32 iFramedelay; mng_uint32 iFrametimeout; mng_bool bFrameclipping; mng_int32 iFrameclipl; mng_int32 iFrameclipr; mng_int32 iFrameclipt; mng_int32 iFrameclipb; mng_uint32 iNextdelay; /* delay *after* next image */ mng_bool bForcedelay; mng_uint32 iAccumdelay;#endif#ifndef MNG_SKIPCHUNK_SHOW mng_uint8 iSHOWmode; /* SHOW fields */ mng_uint16 iSHOWfromid; mng_uint16 iSHOWtoid; mng_uint16 iSHOWnextid; mng_int16 iSHOWskip;#endif mng_uint32 iGlobalPLTEcount; /* global PLTE fields */ mng_rgbpaltab aGlobalPLTEentries; mng_uint32 iGlobalTRNSrawlen; /* global tRNS fields */ mng_uint8arr aGlobalTRNSrawdata; mng_uint32 iGlobalGamma; /* global gAMA fields */#ifndef MNG_SKIPCHUNK_cHRM mng_uint32 iGlobalWhitepointx; /* global cHRM fields */ mng_uint32 iGlobalWhitepointy; mng_uint32 iGlobalPrimaryredx; mng_uint32 iGlobalPrimaryredy; mng_uint32 iGlobalPrimarygreenx; mng_uint32 iGlobalPrimarygreeny; mng_uint32 iGlobalPrimarybluex; mng_uint32 iGlobalPrimarybluey;#endif mng_uint8 iGlobalRendintent; /* global sRGB fields */#ifndef MNG_SKIPCHUNK_iCCP mng_uint32 iGlobalProfilesize; /* global iCCP fields */ mng_ptr pGlobalProfile;#endif mng_uint16 iGlobalBKGDred; /* global bKGD fields */ mng_uint16 iGlobalBKGDgreen; mng_uint16 iGlobalBKGDblue; mng_ptr pDeltaImage; /* delta-image fields */ mng_uint8 iDeltaImagetype;#endif /* MNG_SUPPORT_DISPLAY */ mng_uint8 iDeltatype; /* need this one in read processing !! */#ifdef MNG_SUPPORT_DISPLAY mng_uint32 iDeltaBlockwidth; mng_uint32 iDeltaBlockheight; mng_uint32 iDeltaBlockx; mng_uint32 iDeltaBlocky; mng_bool bDeltaimmediate; mng_fptr fDeltagetrow; /* internal delta-proc callbacks */ mng_fptr fDeltaaddrow; mng_fptr fDeltareplacerow; mng_fptr fDeltaputrow;#ifndef MNG_SKIPCHUNK_PROM mng_fptr fPromoterow; /* internal PROM fields */ mng_fptr fPromBitdepth; mng_ptr pPromBuf; mng_uint8 iPromColortype; mng_uint8 iPromBitdepth; mng_uint8 iPromFilltype; mng_uint32 iPromWidth; mng_ptr pPromSrc; mng_ptr pPromDst;#endif#ifndef MNG_SKIPCHUNK_MAGN mng_uint16 iMAGNfromid; mng_uint16 iMAGNcurrentid; mng_uint16 iMAGNtoid;#endif#ifndef MNG_SKIPCHUNK_PAST mng_uint16 iPASTid; mng_int32 iPastx; /* target x/y of last PAST */ mng_int32 iPasty;#endif mng_objectp pLastseek; /* last processed ani_seek object */ #endif /* MNG_SUPPORT_DISPLAY */#ifdef MNG_INCLUDE_ZLIB z_stream sZlib; /* zlib (de)compression variables */ mng_int32 iZlevel; /* zlib compression parameters */ mng_int32 iZmethod; mng_int32 iZwindowbits; mng_int32 iZmemlevel; mng_int32 iZstrategy; mng_uint32 iMaxIDAT; /* maximum size of IDAT data */ mng_bool bInflating; /* indicates "inflate" in progress */ mng_bool bDeflating; /* indicates "deflate" in progress */#endif /* MNG_INCLUDE_ZLIB */#ifdef MNG_INCLUDE_JNG mngjpeg_dctmethod eJPEGdctmethod; /* IJG compression variables */ mng_int32 iJPEGquality; mng_int32 iJPEGsmoothing; mng_bool bJPEGcompressprogr; mng_bool bJPEGcompressopt; mng_uint32 iMaxJDAT; /* maximum size of JDAT/JDAA data */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -