亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? libmng.h

?? 一款最完整的工業組態軟源代碼
?? H
?? 第 1 頁 / 共 5 頁
字號:
#define MNG_VERSION_DLL     1          /* but: libmng.dll (!) */
#define MNG_VERSION_MAJOR   1
#define MNG_VERSION_MINOR   0
#define MNG_VERSION_RELEASE 8
#define MNG_VERSION_BETA    MNG_FALSE

MNG_EXT mng_pchar MNG_DECL mng_version_text      (void);
MNG_EXT mng_uint8 MNG_DECL mng_version_so        (void);
MNG_EXT mng_uint8 MNG_DECL mng_version_dll       (void);
MNG_EXT mng_uint8 MNG_DECL mng_version_major     (void);
MNG_EXT mng_uint8 MNG_DECL mng_version_minor     (void);
MNG_EXT mng_uint8 MNG_DECL mng_version_release   (void);
MNG_EXT mng_bool  MNG_DECL mng_version_beta      (void);

/* use the following call to check wether the version of libmng your app
   is using supports the given function; this is useful in apps that dynamically
   load the library to make sure a certain function will work; the result will
   be MNG_TRUE if the given function is implemented in this version of the library;
   Major/Minor/Version indicate the version the function became available;
   (if these fields are zero the function is not yet implemented!) */
#ifdef MNG_SUPPORT_FUNCQUERY
MNG_EXT mng_bool  MNG_DECL mng_supports_func     (mng_pchar  zFunction,
                                                  mng_uint8* iMajor,
                                                  mng_uint8* iMinor,
                                                  mng_uint8* iRelease);
#endif

/* ************************************************************************** */
/* *                                                                        * */
/* *  MNG/PNG specification level conformance                               * */
/* *                                                                        * */
/* ************************************************************************** */

#define MNG_PNG_VERSION     "1.2"
#define MNG_PNG_VERSION_MAJ 1
#define MNG_PNG_VERSION_MIN 2

#define MNG_MNG_VERSION     "1.1"
#define MNG_MNG_VERSION_MAJ 1
#define MNG_MNG_VERSION_MIN 1
#define MNG_MNG_DRAFT       99         /* deprecated;
                                          only used for nEED "MNG DRAFT nn" */

/* ************************************************************************** */
/* *                                                                        * */
/* *  High-level application functions                                      * */
/* *                                                                        * */
/* ************************************************************************** */

/* library initialization function */
/* must be the first called before anything can be done at all */
/* initializes internal datastructure(s) */
MNG_EXT mng_handle  MNG_DECL mng_initialize      (mng_ptr       pUserdata,
                                                  mng_memalloc  fMemalloc,
                                                  mng_memfree   fMemfree,
                                                  mng_traceproc fTraceproc);

/* library reset function */
/* can be used to re-initialize the library, so another image can be
   processed. there's absolutely no harm in calling it, even when it's not
   really necessary */
MNG_EXT mng_retcode MNG_DECL mng_reset           (mng_handle    hHandle);

/* library cleanup function */
/* must be the last called to clean up internal datastructure(s) */
MNG_EXT mng_retcode MNG_DECL mng_cleanup         (mng_handle*   hHandle);

/* high-level read functions */
/* use mng_read if you simply want to read a Network Graphic */
/* mng_read_resume is used in I/O-read-suspension scenarios, where the
   "readdata" callback may return FALSE & length=0 indicating it's buffer is
   depleted or too short to supply the required bytes, and the buffer needs
   to be refilled; libmng will return the errorcode MNG_NEEDMOREDATA telling
   the app to refill it's read-buffer after which it must call mng_read_resume
   (or mng_display_resume if it also displaying the image simultaneously) */
#ifdef MNG_SUPPORT_READ
MNG_EXT mng_retcode MNG_DECL mng_read            (mng_handle    hHandle);
MNG_EXT mng_retcode MNG_DECL mng_read_resume     (mng_handle    hHandle);
#endif

/* high-level "data push" functions */
/* these functions can be used in situations where data is streaming into the
   application and needs to be buffered by libmng before it is actually
   requested by libmng itself. the pushing complements the normal reading
   mechanism, but applications can decide to always return "0 bytes read" to
   make libmng go into suspension mode with the returncode MNG_NEEDMOREDATA */
/* mng_read_pushdata can be used to push blobs of data of arbitrary size;
   mng_read_pushsig and mng_read_pushchunk can be used if the application
   has already done some low-level decoding (eg. at the chunk level) */
/* the data being pushed into libmng with mng_read_pushdata *must* contain
   the regular 4-byte chunklength, but *must not* contain it with
   mng_read_pushchunk!!! */
/* mng_read_pushsig is used to prevent libmng from trying to parse the regular
   PNG/JNG/MNG signature bytes; the application must have done this itself
   and *must* indicate the proper type in the function call or things will
   go amiss!!
   also you *must* call this first, so pretty much right after mng_initialize
   and certainly before any call to mng_read or mng_readdisplay !!!! */
/* IMPORTANT!!! data can only be safely pushed when libmng is in a
   "wait" state; eg. during MNG_NEEDTIMERWAIT, MNG_NEEDSECTIONWAIT or
   MNG_NEEDMOREDATA !!! this just means you can't have one thread displaying
   and another thread pushing data !!! */
/* if bOwnership = MNG_TRUE, libmng will retain the supplied pointer and
   *will* expect the buffer to remain available until libmng is finished
   with it; what happens then depends on whether or not you have set the
   releasedata() callback; if this is set than the supplied buffer will
   be returned through this callback and your application can take care of
   cleaning it up, otherwise libmng will use its internal freeing mechanism
   (which, depending on compile-options, will be the standard C free() call,
   or the memfree() callback */
/* if bOwnership = MNG_FALSE, libmng will just copy the data into its own
   buffers and dispose of it in the normal way */
#ifdef MNG_SUPPORT_READ
MNG_EXT mng_retcode MNG_DECL mng_read_pushdata   (mng_handle    hHandle,
                                                  mng_ptr       pData,
                                                  mng_size_t    iLength,
                                                  mng_bool      bTakeownership);
MNG_EXT mng_retcode MNG_DECL mng_read_pushsig    (mng_handle    hHandle,
                                                  mng_imgtype   eSigtype);
MNG_EXT mng_retcode MNG_DECL mng_read_pushchunk  (mng_handle    hHandle,
                                                  mng_ptr       pChunk,
                                                  mng_size_t    iLength,
                                                  mng_bool      bTakeownership);
#endif

/* high-level write & create functions */
/* use this if you want to write a previously read Network Graphic or
   if you want to create a new graphic and write it */
/* to write a previously read graphic you must have defined MNG_STORE_CHUNKS */
/* to create a new graphic you'll also need access to the chunks
   (eg. #define MNG_ACCESS_CHUNKS !) */
#ifdef MNG_SUPPORT_WRITE
MNG_EXT mng_retcode MNG_DECL mng_write           (mng_handle    hHandle);
MNG_EXT mng_retcode MNG_DECL mng_create          (mng_handle    hHandle);
#endif

/* high-level display functions */
/* use these to display a previously read or created graphic or
   to read & display a graphic simultaneously */
/* mng_display_resume should be called after a timer-interval
   expires that was set through the settimer-callback, after a
   read suspension-break, or, to resume an animation after a call
   to mng_display_freeze/mng_display_reset */
/* mng_display_freeze thru mng_display_gotime can be used to influence
   the display of an image, BUT ONLY if it has been completely read! */
#ifdef MNG_SUPPORT_DISPLAY
#ifdef MNG_SUPPORT_READ
MNG_EXT mng_retcode MNG_DECL mng_readdisplay     (mng_handle    hHandle);
#endif
MNG_EXT mng_retcode MNG_DECL mng_display         (mng_handle    hHandle);
MNG_EXT mng_retcode MNG_DECL mng_display_resume  (mng_handle    hHandle);
MNG_EXT mng_retcode MNG_DECL mng_display_freeze  (mng_handle    hHandle);
MNG_EXT mng_retcode MNG_DECL mng_display_reset   (mng_handle    hHandle);
#ifndef MNG_NO_DISPLAY_GO_SUPPORTED
MNG_EXT mng_retcode MNG_DECL mng_display_goframe (mng_handle    hHandle,
                                                  mng_uint32    iFramenr);
MNG_EXT mng_retcode MNG_DECL mng_display_golayer (mng_handle    hHandle,
                                                  mng_uint32    iLayernr);
MNG_EXT mng_retcode MNG_DECL mng_display_gotime  (mng_handle    hHandle,
                                                  mng_uint32    iPlaytime);
#endif
#endif /* MNG_SUPPORT_DISPLAY */

/* event processing function */
/* this needs to be called by the app when dynamic MNG is enabled and
   a specific event occurs in the user-interface */
#if defined(MNG_SUPPORT_DISPLAY) && defined(MNG_SUPPORT_DYNAMICMNG)
MNG_EXT mng_retcode MNG_DECL mng_trapevent       (mng_handle    hHandle,
                                                  mng_uint8     iEventtype,
                                                  mng_int32     iX,
                                                  mng_int32     iY);
#endif

/* error reporting function */
/* use this if you need more detailed info on the last error */
/* iExtra1 & iExtra2 may contain errorcodes from zlib, jpeg, etc... */
/* zErrortext will only be filled if you #define MNG_ERROR_TELLTALE */
MNG_EXT mng_retcode MNG_DECL mng_getlasterror    (mng_handle    hHandle,
                                                  mng_int8*     iSeverity,
                                                  mng_chunkid*  iChunkname,
                                                  mng_uint32*   iChunkseq,
                                                  mng_int32*    iExtra1,
                                                  mng_int32*    iExtra2,
                                                  mng_pchar*    zErrortext);

/* ************************************************************************** */
/* *                                                                        * */
/* *  Callback set functions                                                * */
/* *                                                                        * */
/* ************************************************************************** */

/* memory callbacks */
/* called to allocate and release internal datastructures */
#ifndef MNG_INTERNAL_MEMMNGMT
MNG_EXT mng_retcode MNG_DECL mng_setcb_memalloc      (mng_handle        hHandle,
                                                      mng_memalloc      fProc);
MNG_EXT mng_retcode MNG_DECL mng_setcb_memfree       (mng_handle        hHandle,
                                                      mng_memfree       fProc);
#endif /* MNG_INTERNAL_MEMMNGMT */

/* open- & close-stream callbacks */
/* called to open & close streams for input or output */
#if defined(MNG_SUPPORT_READ) || defined(MNG_SUPPORT_WRITE)
#ifndef MNG_NO_OPEN_CLOSE_STREAM
MNG_EXT mng_retcode MNG_DECL mng_setcb_openstream    (mng_handle        hHandle,
                                                      mng_openstream    fProc);
MNG_EXT mng_retcode MNG_DECL mng_setcb_closestream   (mng_handle        hHandle,
                                                      mng_closestream   fProc);
#endif
#endif

/* read callback */
/* called to get data from the inputstream */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人app网站| 欧美日韩综合在线免费观看| 成人午夜av在线| 久久国产日韩欧美精品| 亚洲bdsm女犯bdsm网站| 日韩精品一级二级| 日韩精品福利网| 伦理电影国产精品| 国产精品原创巨作av| 成人黄色软件下载| 激情综合色丁香一区二区| 国产麻豆一精品一av一免费| 国产福利视频一区二区三区| 国内不卡的二区三区中文字幕 | 久久精品国产77777蜜臀| 国产在线视频一区二区三区| 国产成人啪午夜精品网站男同| 成人亚洲精品久久久久软件| 日本高清无吗v一区| 日韩欧美一区二区免费| 国产精品对白交换视频 | 欧美一区二区视频免费观看| 久久久精品黄色| 亚洲成人1区2区| 国产成人av福利| 日韩一区国产二区欧美三区| 亚洲国产精品传媒在线观看| 亚洲一级不卡视频| 国产·精品毛片| 日韩一区二区三区四区| 亚洲欧美成人一区二区三区| 日韩av电影免费观看高清完整版在线观看| 成人黄色一级视频| 日韩午夜电影av| 一区二区三区四区国产精品| 韩国一区二区三区| 色域天天综合网| 日韩一区二区电影在线| 午夜欧美在线一二页| 欧美视频完全免费看| 亚洲久草在线视频| 欧美一卡2卡三卡4卡5免费| 99久久精品99国产精品| 日av在线不卡| 亚洲精选视频免费看| 日本一区二区免费在线| 91精品国产综合久久久久久久| 色综合咪咪久久| 成人毛片视频在线观看| 久久精品国产免费| 奇米影视一区二区三区小说| 一区二区三区在线免费观看| 久久久久久97三级| 精品乱码亚洲一区二区不卡| 欧美精品vⅰdeose4hd| 色综合久久中文字幕| 国产成人午夜高潮毛片| 国产乱码精品一区二区三| 国产真实精品久久二三区| 男男视频亚洲欧美| 久久99精品久久久久婷婷| 国产精品综合av一区二区国产馆| 日本vs亚洲vs韩国一区三区 | 亚洲丝袜自拍清纯另类| 国产精品成人免费精品自在线观看 | 色www精品视频在线观看| 成人99免费视频| 欧洲人成人精品| 7777精品伊人久久久大香线蕉最新版 | 亚洲va天堂va国产va久| 青青草97国产精品免费观看无弹窗版| 日韩黄色免费网站| 国产成人免费9x9x人网站视频| 成人午夜私人影院| 欧美女孩性生活视频| 久久一留热品黄| 亚洲成人资源在线| 成人永久aaa| 538prom精品视频线放| 国产精品视频在线看| 日韩不卡免费视频| 色婷婷久久久久swag精品 | 精品久久免费看| 亚洲综合男人的天堂| 国产精品99久久久久久似苏梦涵 | 国产一区二区三区电影在线观看| 91玉足脚交白嫩脚丫在线播放| 欧美成人精精品一区二区频| 一区二区三区在线观看网站| 成人在线综合网| www国产精品av| 免播放器亚洲一区| 欧美老年两性高潮| 亚洲电影第三页| 一本色道久久综合亚洲精品按摩| 欧美激情中文字幕| 日本黄色一区二区| 麻豆精品国产传媒mv男同| 日本一区二区三级电影在线观看| 在线影院国内精品| 亚洲六月丁香色婷婷综合久久| 欧美电影在哪看比较好| 国产成人99久久亚洲综合精品| 亚洲精品写真福利| 欧美不卡一区二区三区| 色综合久久久久久久久久久| 蜜桃精品在线观看| 一区二区三区在线视频免费观看| 欧美一级欧美三级| 在线亚洲高清视频| 国产伦精品一区二区三区在线观看| 综合av第一页| 久久久久国产免费免费| 日韩亚洲欧美综合| 欧美系列在线观看| kk眼镜猥琐国模调教系列一区二区| 蜜臀av国产精品久久久久| 亚洲自拍偷拍麻豆| 亚洲日本丝袜连裤袜办公室| 久久一二三国产| 精品国产一二三区| 成人av在线资源| 亚洲成人动漫av| 久久嫩草精品久久久精品 | 91视频在线观看| 亚洲宅男天堂在线观看无病毒| 在线综合视频播放| 成人av电影在线播放| 久久精品国产色蜜蜜麻豆| 中文字幕综合网| 国产丝袜欧美中文另类| 欧美日韩视频在线第一区| 丰满少妇在线播放bd日韩电影| 一区二区三区丝袜| 国产精品网站在线观看| 欧美电影免费提供在线观看| 日本乱码高清不卡字幕| bt欧美亚洲午夜电影天堂| 久久99久久精品| 石原莉奈在线亚洲三区| 中文字幕一区二区三区四区不卡| 日韩美一区二区三区| 91精品国产乱| 在线观看91av| 欧美大尺度电影在线| 在线播放亚洲一区| 日韩一区二区电影在线| 91精品国产黑色紧身裤美女| 欧美精品xxxxbbbb| 欧美一区二区三区视频在线| 在线播放/欧美激情| 日韩一区二区免费在线电影| 欧美一区二区三区四区五区| 欧美一区二区三区免费视频 | 国产精品丝袜在线| 国产精品国产三级国产普通话99| 国产精品久久久久国产精品日日| 中文字幕 久热精品 视频在线| 成人午夜精品一区二区三区| 激情综合网最新| 国产精品情趣视频| 亚洲精品一区二区三区在线观看| youjizz国产精品| 高清成人在线观看| bt欧美亚洲午夜电影天堂| 一本在线高清不卡dvd| 99精品一区二区| 欧美色综合久久| 欧美一区二区三区免费视频| 精品国产成人系列| 综合在线观看色| 日本欧美在线观看| aaa亚洲精品| 欧美一区二区女人| 亚洲色图视频网站| 老司机午夜精品| 91久久线看在观草草青青| 精品少妇一区二区三区日产乱码 | 欧美mv和日韩mv的网站| 亚洲人成精品久久久久| 国内精品久久久久影院薰衣草| 91美女视频网站| 国产婷婷色一区二区三区四区| 一区二区三区中文字幕电影 | 欧美精品一区二区不卡 | 中文字幕一区视频| 精品一区二区三区在线观看| 欧洲一区二区av| 亚洲三级在线看| 成人av免费网站| 中国av一区二区三区| 国产精品一二三| 国产日韩精品一区二区浪潮av| 婷婷国产在线综合| 欧美福利一区二区| 亚洲成av人片观看| 91精品免费观看| 奇米影视一区二区三区小说| 91麻豆精品国产91久久久久久| 亚洲国产成人av好男人在线观看|