📄 libmng_chunk_io.h
字号:
/* ************************************************************************** *//* * For conditions of distribution and use, * *//* * see copyright notice in libmng.h * *//* ************************************************************************** *//* * * *//* * project : libmng * *//* * file : libmng_chunk_io.h copyright (c) 2000 G.Juyn * *//* * version : 1.0.0 * *//* * * *//* * purpose : Chunk I/O routines (definition) * *//* * * *//* * author : G.Juyn * *//* * web : http://www.3-t.com * *//* * email : mailto:info@3-t.com * *//* * * *//* * comment : Definition of the chunk input/output routines * *//* * * *//* * changes : 0.5.1 - 05/04/2000 - G.Juyn * *//* * - changed CRC initializtion to use dynamic structure * *//* * (wasn't thread-safe the old way !) * *//* * 0.5.1 - 05/08/2000 - G.Juyn * *//* * - changed write routines definition * *//* * - changed strict-ANSI stuff * *//* * * *//* * 0.9.2 - 08/05/2000 - G.Juyn * *//* * - changed file-prefixes * *//* * * *//* * 0.9.3 - 08/26/2000 - G.Juyn * *//* * - added MAGN chunk * *//* * 0.9.3 - 10/16/2000 - G.Juyn * *//* * - added support for JDAA * *//* * * *//* ************************************************************************** */#if defined(__BORLANDC__) && defined(MNG_STRICT_ANSI)#pragma option -A /* force ANSI-C */#endif#ifndef _libmng_chunk_io_h_#define _libmng_chunk_io_h_/* ************************************************************************** */mng_uint32 crc (mng_datap pData, mng_uint8p buf, mng_int32 len);/* ************************************************************************** */#ifdef MNG_INCLUDE_READ_PROCS#define READ_CHUNK(n) mng_retcode n (mng_datap pData, \ mng_chunkp pHeader, \ mng_uint32 iRawlen, \ mng_uint8p pRawdata, \ mng_chunkp* ppChunk)READ_CHUNK (read_ihdr) ;READ_CHUNK (read_plte) ;READ_CHUNK (read_idat) ;READ_CHUNK (read_iend) ;READ_CHUNK (read_trns) ;READ_CHUNK (read_gama) ;READ_CHUNK (read_chrm) ;READ_CHUNK (read_srgb) ;READ_CHUNK (read_iccp) ;READ_CHUNK (read_text) ;READ_CHUNK (read_ztxt) ;READ_CHUNK (read_itxt) ;READ_CHUNK (read_bkgd) ;READ_CHUNK (read_phys) ;READ_CHUNK (read_sbit) ;READ_CHUNK (read_splt) ;READ_CHUNK (read_hist) ;READ_CHUNK (read_time) ;READ_CHUNK (read_mhdr) ;READ_CHUNK (read_mend) ;READ_CHUNK (read_loop) ;READ_CHUNK (read_endl) ;READ_CHUNK (read_defi) ;READ_CHUNK (read_basi) ;READ_CHUNK (read_clon) ;READ_CHUNK (read_past) ;READ_CHUNK (read_disc) ;READ_CHUNK (read_back) ;READ_CHUNK (read_fram) ;READ_CHUNK (read_move) ;READ_CHUNK (read_clip) ;READ_CHUNK (read_show) ;READ_CHUNK (read_term) ;READ_CHUNK (read_save) ;READ_CHUNK (read_seek) ;READ_CHUNK (read_expi) ;READ_CHUNK (read_fpri) ;READ_CHUNK (read_phyg) ;READ_CHUNK (read_jhdr) ;READ_CHUNK (read_jdaa) ;READ_CHUNK (read_jdat) ;READ_CHUNK (read_jsep) ;READ_CHUNK (read_dhdr) ;READ_CHUNK (read_prom) ;READ_CHUNK (read_ipng) ;READ_CHUNK (read_pplt) ;READ_CHUNK (read_ijng) ;READ_CHUNK (read_drop) ;READ_CHUNK (read_dbyk) ;READ_CHUNK (read_ordr) ;READ_CHUNK (read_magn) ;READ_CHUNK (read_need) ;READ_CHUNK (read_unknown) ;/* ************************************************************************** */#else /* MNG_INCLUDE_READ_PROCS */#define read_ihdr 0#define read_plte 0#define read_idat 0#define read_iend 0#define read_trns 0#define read_gama 0#define read_chrm 0#define read_srgb 0#define read_iccp 0#define read_text 0#define read_ztxt 0#define read_itxt 0#define read_bkgd 0#define read_phys 0#define read_sbit 0#define read_splt 0#define read_hist 0#define read_time 0#define read_mhdr 0#define read_mend 0#define read_loop 0#define read_endl 0#define read_defi 0#define read_basi 0#define read_clon 0#define read_past 0#define read_disc 0#define read_back 0#define read_fram 0#define read_move 0#define read_clip 0#define read_show 0#define read_term 0#define read_save 0#define read_seek 0#define read_expi 0#define read_fpri 0#define read_phyg 0#define read_jhdr 0#define read_jdaa 0#define read_jdat 0#define read_jsep 0#define read_dhdr 0#define read_prom 0#define read_ipng 0#define read_pplt 0#define read_ijng 0#define read_drop 0#define read_dbyk 0#define read_ordr 0#define read_magn 0#define read_need 0#define read_unknown 0#endif /* MNG_INCLUDE_READ_PROCS *//* ************************************************************************** */#ifdef MNG_INCLUDE_WRITE_PROCS#define WRITE_CHUNK(n) mng_retcode n (mng_datap pData, \ mng_chunkp pChunk)WRITE_CHUNK (write_ihdr) ;WRITE_CHUNK (write_plte) ;WRITE_CHUNK (write_idat) ;WRITE_CHUNK (write_iend) ;WRITE_CHUNK (write_trns) ;WRITE_CHUNK (write_gama) ;WRITE_CHUNK (write_chrm) ;WRITE_CHUNK (write_srgb) ;WRITE_CHUNK (write_iccp) ;WRITE_CHUNK (write_text) ;WRITE_CHUNK (write_ztxt) ;WRITE_CHUNK (write_itxt) ;WRITE_CHUNK (write_bkgd) ;WRITE_CHUNK (write_phys) ;WRITE_CHUNK (write_sbit) ;WRITE_CHUNK (write_splt) ;WRITE_CHUNK (write_hist) ;WRITE_CHUNK (write_time) ;WRITE_CHUNK (write_mhdr) ;WRITE_CHUNK (write_mend) ;WRITE_CHUNK (write_loop) ;WRITE_CHUNK (write_endl) ;WRITE_CHUNK (write_defi) ;WRITE_CHUNK (write_basi) ;WRITE_CHUNK (write_clon) ;WRITE_CHUNK (write_past) ;WRITE_CHUNK (write_disc) ;WRITE_CHUNK (write_back) ;WRITE_CHUNK (write_fram) ;WRITE_CHUNK (write_move) ;WRITE_CHUNK (write_clip) ;WRITE_CHUNK (write_show) ;WRITE_CHUNK (write_term) ;WRITE_CHUNK (write_save) ;WRITE_CHUNK (write_seek) ;WRITE_CHUNK (write_expi) ;WRITE_CHUNK (write_fpri) ;WRITE_CHUNK (write_phyg) ;WRITE_CHUNK (write_jhdr) ;WRITE_CHUNK (write_jdaa) ;WRITE_CHUNK (write_jdat) ;WRITE_CHUNK (write_jsep) ;WRITE_CHUNK (write_dhdr) ;WRITE_CHUNK (write_prom) ;WRITE_CHUNK (write_ipng) ;WRITE_CHUNK (write_pplt) ;WRITE_CHUNK (write_ijng) ;WRITE_CHUNK (write_drop) ;WRITE_CHUNK (write_dbyk) ;WRITE_CHUNK (write_ordr) ;WRITE_CHUNK (write_magn) ;WRITE_CHUNK (write_need) ;WRITE_CHUNK (write_unknown) ;/* ************************************************************************** */#else /* MNG_INCLUDE_WRITE_PROCS */#define write_ihdr 0#define write_plte 0#define write_idat 0#define write_iend 0#define write_trns 0#define write_gama 0#define write_chrm 0#define write_srgb 0#define write_iccp 0#define write_text 0#define write_ztxt 0#define write_itxt 0#define write_bkgd 0#define write_phys 0#define write_sbit 0#define write_splt 0#define write_hist 0#define write_time 0#define write_mhdr 0#define write_mend 0#define write_loop 0#define write_endl 0#define write_defi 0#define write_basi 0#define write_clon 0#define write_past 0#define write_disc 0#define write_back 0#define write_fram 0#define write_move 0#define write_clip 0#define write_show 0#define write_term 0#define write_save 0#define write_seek 0#define write_expi 0#define write_fpri 0#define write_phyg 0#define write_jhdr 0#define write_jdaa 0#define write_jdat 0#define write_jsep 0#define write_dhdr 0#define write_prom 0#define write_ipng 0#define write_pplt 0#define write_ijng 0#define write_drop 0#define write_dbyk 0#define write_ordr 0#define write_magn 0#define write_need 0#define write_unknown 0#endif /* MNG_INCLUDE_WRITE_PROCS *//* ************************************************************************** */#endif /* _libmng_chunk_io_h_ *//* ************************************************************************** *//* * end of file * *//* ************************************************************************** */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -