55
66
mng_uint8p pRawdata, \
56
67
mng_chunkp* ppChunk)
58
READ_CHUNK (read_ihdr) ;
59
READ_CHUNK (read_plte) ;
60
READ_CHUNK (read_idat) ;
61
READ_CHUNK (read_iend) ;
62
READ_CHUNK (read_trns) ;
63
READ_CHUNK (read_gama) ;
64
READ_CHUNK (read_chrm) ;
65
READ_CHUNK (read_srgb) ;
66
READ_CHUNK (read_iccp) ;
67
READ_CHUNK (read_text) ;
68
READ_CHUNK (read_ztxt) ;
69
READ_CHUNK (read_itxt) ;
70
READ_CHUNK (read_bkgd) ;
71
READ_CHUNK (read_phys) ;
72
READ_CHUNK (read_sbit) ;
73
READ_CHUNK (read_splt) ;
74
READ_CHUNK (read_hist) ;
75
READ_CHUNK (read_time) ;
76
READ_CHUNK (read_mhdr) ;
77
READ_CHUNK (read_mend) ;
78
READ_CHUNK (read_loop) ;
79
READ_CHUNK (read_endl) ;
80
READ_CHUNK (read_defi) ;
81
READ_CHUNK (read_basi) ;
82
READ_CHUNK (read_clon) ;
83
READ_CHUNK (read_past) ;
84
READ_CHUNK (read_disc) ;
85
READ_CHUNK (read_back) ;
86
READ_CHUNK (read_fram) ;
87
READ_CHUNK (read_move) ;
88
READ_CHUNK (read_clip) ;
89
READ_CHUNK (read_show) ;
90
READ_CHUNK (read_term) ;
91
READ_CHUNK (read_save) ;
92
READ_CHUNK (read_seek) ;
93
READ_CHUNK (read_expi) ;
94
READ_CHUNK (read_fpri) ;
95
READ_CHUNK (read_phyg) ;
96
READ_CHUNK (read_jhdr) ;
97
READ_CHUNK (read_jdaa) ;
98
READ_CHUNK (read_jdat) ;
99
READ_CHUNK (read_jsep) ;
100
READ_CHUNK (read_dhdr) ;
101
READ_CHUNK (read_prom) ;
102
READ_CHUNK (read_ipng) ;
103
READ_CHUNK (read_pplt) ;
104
READ_CHUNK (read_ijng) ;
105
READ_CHUNK (read_drop) ;
106
READ_CHUNK (read_dbyk) ;
107
READ_CHUNK (read_ordr) ;
108
READ_CHUNK (read_magn) ;
109
READ_CHUNK (read_need) ;
110
READ_CHUNK (read_unknown) ;
69
READ_CHUNK (mng_read_ihdr) ;
70
READ_CHUNK (mng_read_plte) ;
71
READ_CHUNK (mng_read_idat) ;
72
READ_CHUNK (mng_read_iend) ;
73
READ_CHUNK (mng_read_trns) ;
74
READ_CHUNK (mng_read_gama) ;
75
READ_CHUNK (mng_read_chrm) ;
76
READ_CHUNK (mng_read_srgb) ;
77
#ifndef MNG_SKIPCHUNK_iCCP
78
READ_CHUNK (mng_read_iccp) ;
80
#ifndef MNG_SKIPCHUNK_tEXt
81
READ_CHUNK (mng_read_text) ;
83
#ifndef MNG_SKIPCHUNK_zTXt
84
READ_CHUNK (mng_read_ztxt) ;
86
#ifndef MNG_SKIPCHUNK_iTXt
87
READ_CHUNK (mng_read_itxt) ;
89
#ifndef MNG_SKIPCHUNK_bKGD
90
READ_CHUNK (mng_read_bkgd) ;
92
#ifndef MNG_SKIPCHUNK_pHYs
93
READ_CHUNK (mng_read_phys) ;
95
#ifndef MNG_SKIPCHUNK_sBIT
96
READ_CHUNK (mng_read_sbit) ;
98
#ifndef MNG_SKIPCHUNK_sPLT
99
READ_CHUNK (mng_read_splt) ;
101
#ifndef MNG_SKIPCHUNK_hIST
102
READ_CHUNK (mng_read_hist) ;
104
#ifndef MNG_SKIPCHUNK_tIME
105
READ_CHUNK (mng_read_time) ;
107
READ_CHUNK (mng_read_mhdr) ;
108
READ_CHUNK (mng_read_mend) ;
109
READ_CHUNK (mng_read_loop) ;
110
READ_CHUNK (mng_read_endl) ;
111
READ_CHUNK (mng_read_defi) ;
112
READ_CHUNK (mng_read_basi) ;
113
READ_CHUNK (mng_read_clon) ;
114
#ifndef MNG_SKIPCHUNK_PAST
115
READ_CHUNK (mng_read_past) ;
117
READ_CHUNK (mng_read_disc) ;
118
READ_CHUNK (mng_read_back) ;
119
READ_CHUNK (mng_read_fram) ;
120
READ_CHUNK (mng_read_move) ;
121
READ_CHUNK (mng_read_clip) ;
122
READ_CHUNK (mng_read_show) ;
123
READ_CHUNK (mng_read_term) ;
124
READ_CHUNK (mng_read_save) ;
125
READ_CHUNK (mng_read_seek) ;
126
#ifndef MNG_SKIPCHUNK_eXPI
127
READ_CHUNK (mng_read_expi) ;
129
#ifndef MNG_SKIPCHUNK_fPRI
130
READ_CHUNK (mng_read_fpri) ;
132
#ifndef MNG_SKIPCHUNK_pHYg
133
READ_CHUNK (mng_read_phyg) ;
135
#ifdef MNG_INCLUDE_JNG
136
READ_CHUNK (mng_read_jhdr) ;
137
READ_CHUNK (mng_read_jdaa) ;
138
READ_CHUNK (mng_read_jdat) ;
139
READ_CHUNK (mng_read_jsep) ;
141
#ifndef MNG_NO_DELTA_PNG
142
READ_CHUNK (mng_read_dhdr) ;
143
READ_CHUNK (mng_read_prom) ;
144
READ_CHUNK (mng_read_ipng) ;
145
READ_CHUNK (mng_read_pplt) ;
146
#ifdef MNG_INCLUDE_JNG
147
READ_CHUNK (mng_read_ijng) ;
149
READ_CHUNK (mng_read_drop) ;
150
READ_CHUNK (mng_read_dbyk) ;
151
READ_CHUNK (mng_read_ordr) ;
153
READ_CHUNK (mng_read_magn) ;
154
#ifndef MNG_SKIPCHUNK_nEED
155
READ_CHUNK (mng_read_need) ;
157
#ifndef MNG_SKIPCHUNK_evNT
158
READ_CHUNK (mng_read_evnt) ;
160
READ_CHUNK (mng_read_unknown) ;
112
162
/* ************************************************************************** */
114
164
#else /* MNG_INCLUDE_READ_PROCS */
167
#define read_unknown 0
165
#define mng_read_ihdr 0
166
#define mng_read_plte 0
167
#define mng_read_idat 0
168
#define mng_read_iend 0
169
#define mng_read_trns 0
170
#define mng_read_gama 0
171
#define mng_read_chrm 0
172
#define mng_read_srgb 0
173
#define mng_read_iccp 0
174
#define mng_read_text 0
175
#define mng_read_ztxt 0
176
#define mng_read_itxt 0
177
#define mng_read_bkgd 0
178
#define mng_read_phys 0
179
#define mng_read_sbit 0
180
#define mng_read_splt 0
181
#define mng_read_hist 0
182
#define mng_read_time 0
183
#define mng_read_mhdr 0
184
#define mng_read_mend 0
185
#define mng_read_loop 0
186
#define mng_read_endl 0
187
#define mng_read_defi 0
188
#define mng_read_basi 0
189
#define mng_read_clon 0
190
#ifndef MNG_SKIPCHUNK_PAST
191
#define mng_read_past 0
193
#define mng_read_disc 0
194
#define mng_read_back 0
195
#define mng_read_fram 0
196
#define mng_read_move 0
197
#define mng_read_clip 0
198
#define mng_read_show 0
199
#define mng_read_term 0
200
#define mng_read_save 0
201
#define mng_read_seek 0
202
#define mng_read_expi 0
203
#define mng_read_fpri 0
204
#define mng_read_phyg 0
205
#ifdef MNG_INCLUDE_JNG
206
#define mng_read_jhdr 0
207
#define mng_read_jdaa 0
208
#define mng_read_jdat 0
209
#define mng_read_jsep 0
211
#ifndef MNG_NO_DELTA_PNG
212
#define mng_read_dhdr 0
213
#define mng_read_prom 0
214
#define mng_read_ipng 0
215
#define mng_read_pplt 0
216
#ifdef MNG_INCLUDE_JNG
217
#define mng_read_ijng 0
219
#define mng_read_drop 0
220
#define mng_read_dbyk 0
221
#define mng_read_ordr 0
223
#define mng_read_magn 0
224
#define mng_read_need 0
225
#define mng_read_evnt 0
226
#define mng_read_unknown 0
168
227
#endif /* MNG_INCLUDE_READ_PROCS */
170
229
/* ************************************************************************** */
174
233
#define WRITE_CHUNK(n) mng_retcode n (mng_datap pData, \
175
234
mng_chunkp pChunk)
177
WRITE_CHUNK (write_ihdr) ;
178
WRITE_CHUNK (write_plte) ;
179
WRITE_CHUNK (write_idat) ;
180
WRITE_CHUNK (write_iend) ;
181
WRITE_CHUNK (write_trns) ;
182
WRITE_CHUNK (write_gama) ;
183
WRITE_CHUNK (write_chrm) ;
184
WRITE_CHUNK (write_srgb) ;
185
WRITE_CHUNK (write_iccp) ;
186
WRITE_CHUNK (write_text) ;
187
WRITE_CHUNK (write_ztxt) ;
188
WRITE_CHUNK (write_itxt) ;
189
WRITE_CHUNK (write_bkgd) ;
190
WRITE_CHUNK (write_phys) ;
191
WRITE_CHUNK (write_sbit) ;
192
WRITE_CHUNK (write_splt) ;
193
WRITE_CHUNK (write_hist) ;
194
WRITE_CHUNK (write_time) ;
195
WRITE_CHUNK (write_mhdr) ;
196
WRITE_CHUNK (write_mend) ;
197
WRITE_CHUNK (write_loop) ;
198
WRITE_CHUNK (write_endl) ;
199
WRITE_CHUNK (write_defi) ;
200
WRITE_CHUNK (write_basi) ;
201
WRITE_CHUNK (write_clon) ;
202
WRITE_CHUNK (write_past) ;
203
WRITE_CHUNK (write_disc) ;
204
WRITE_CHUNK (write_back) ;
205
WRITE_CHUNK (write_fram) ;
206
WRITE_CHUNK (write_move) ;
207
WRITE_CHUNK (write_clip) ;
208
WRITE_CHUNK (write_show) ;
209
WRITE_CHUNK (write_term) ;
210
WRITE_CHUNK (write_save) ;
211
WRITE_CHUNK (write_seek) ;
212
WRITE_CHUNK (write_expi) ;
213
WRITE_CHUNK (write_fpri) ;
214
WRITE_CHUNK (write_phyg) ;
215
WRITE_CHUNK (write_jhdr) ;
216
WRITE_CHUNK (write_jdaa) ;
217
WRITE_CHUNK (write_jdat) ;
218
WRITE_CHUNK (write_jsep) ;
219
WRITE_CHUNK (write_dhdr) ;
220
WRITE_CHUNK (write_prom) ;
221
WRITE_CHUNK (write_ipng) ;
222
WRITE_CHUNK (write_pplt) ;
223
WRITE_CHUNK (write_ijng) ;
224
WRITE_CHUNK (write_drop) ;
225
WRITE_CHUNK (write_dbyk) ;
226
WRITE_CHUNK (write_ordr) ;
227
WRITE_CHUNK (write_magn) ;
228
WRITE_CHUNK (write_need) ;
229
WRITE_CHUNK (write_unknown) ;
236
WRITE_CHUNK (mng_write_ihdr) ;
237
WRITE_CHUNK (mng_write_plte) ;
238
WRITE_CHUNK (mng_write_idat) ;
239
WRITE_CHUNK (mng_write_iend) ;
240
WRITE_CHUNK (mng_write_trns) ;
241
WRITE_CHUNK (mng_write_gama) ;
242
WRITE_CHUNK (mng_write_chrm) ;
243
WRITE_CHUNK (mng_write_srgb) ;
244
WRITE_CHUNK (mng_write_iccp) ;
245
WRITE_CHUNK (mng_write_text) ;
246
WRITE_CHUNK (mng_write_ztxt) ;
247
WRITE_CHUNK (mng_write_itxt) ;
248
WRITE_CHUNK (mng_write_bkgd) ;
249
WRITE_CHUNK (mng_write_phys) ;
250
WRITE_CHUNK (mng_write_sbit) ;
251
WRITE_CHUNK (mng_write_splt) ;
252
WRITE_CHUNK (mng_write_hist) ;
253
WRITE_CHUNK (mng_write_time) ;
254
WRITE_CHUNK (mng_write_mhdr) ;
255
WRITE_CHUNK (mng_write_mend) ;
256
WRITE_CHUNK (mng_write_loop) ;
257
WRITE_CHUNK (mng_write_endl) ;
258
WRITE_CHUNK (mng_write_defi) ;
259
WRITE_CHUNK (mng_write_basi) ;
260
WRITE_CHUNK (mng_write_clon) ;
261
#ifndef MNG_SKIPCHUNK_PAST
262
WRITE_CHUNK (mng_write_past) ;
264
WRITE_CHUNK (mng_write_disc) ;
265
WRITE_CHUNK (mng_write_back) ;
266
WRITE_CHUNK (mng_write_fram) ;
267
WRITE_CHUNK (mng_write_move) ;
268
WRITE_CHUNK (mng_write_clip) ;
269
WRITE_CHUNK (mng_write_show) ;
270
WRITE_CHUNK (mng_write_term) ;
271
WRITE_CHUNK (mng_write_save) ;
272
WRITE_CHUNK (mng_write_seek) ;
273
WRITE_CHUNK (mng_write_expi) ;
274
WRITE_CHUNK (mng_write_fpri) ;
275
WRITE_CHUNK (mng_write_phyg) ;
276
#ifdef MNG_INCLUDE_JNG
277
WRITE_CHUNK (mng_write_jhdr) ;
278
WRITE_CHUNK (mng_write_jdaa) ;
279
WRITE_CHUNK (mng_write_jdat) ;
280
WRITE_CHUNK (mng_write_jsep) ;
282
#ifndef MNG_NO_DELTA_PNG
283
WRITE_CHUNK (mng_write_dhdr) ;
284
WRITE_CHUNK (mng_write_prom) ;
285
WRITE_CHUNK (mng_write_ipng) ;
286
WRITE_CHUNK (mng_write_pplt) ;
287
#ifdef MNG_INCLUDE_JNG
288
WRITE_CHUNK (mng_write_ijng) ;
290
WRITE_CHUNK (mng_write_drop) ;
291
WRITE_CHUNK (mng_write_dbyk) ;
292
WRITE_CHUNK (mng_write_ordr) ;
294
WRITE_CHUNK (mng_write_magn) ;
295
WRITE_CHUNK (mng_write_need) ;
296
WRITE_CHUNK (mng_write_evnt) ;
297
WRITE_CHUNK (mng_write_unknown) ;
231
299
/* ************************************************************************** */
233
301
#else /* MNG_INCLUDE_WRITE_PROCS */
286
#define write_unknown 0
302
#define mng_write_ihdr 0
303
#define mng_write_plte 0
304
#define mng_write_idat 0
305
#define mng_write_iend 0
306
#define mng_write_trns 0
307
#define mng_write_gama 0
308
#define mng_write_chrm 0
309
#define mng_write_srgb 0
310
#define mng_write_iccp 0
311
#define mng_write_text 0
312
#define mng_write_ztxt 0
313
#define mng_write_itxt 0
314
#define mng_write_bkgd 0
315
#define mng_write_phys 0
316
#define mng_write_sbit 0
317
#define mng_write_splt 0
318
#define mng_write_hist 0
319
#define mng_write_time 0
320
#define mng_write_mhdr 0
321
#define mng_write_mend 0
322
#define mng_write_loop 0
323
#define mng_write_endl 0
324
#define mng_write_defi 0
325
#define mng_write_basi 0
326
#define mng_write_clon 0
327
#ifndef MNG_SKIPCHUNK_PAST
328
#define mng_write_past 0
330
#define mng_write_disc 0
331
#define mng_write_back 0
332
#define mng_write_fram 0
333
#define mng_write_move 0
334
#define mng_write_clip 0
335
#define mng_write_show 0
336
#define mng_write_term 0
337
#define mng_write_save 0
338
#define mng_write_seek 0
339
#define mng_write_expi 0
340
#define mng_write_fpri 0
341
#define mng_write_phyg 0
342
#ifdef MNG_INCLUDE_JNG
343
#define mng_write_jhdr 0
344
#define mng_write_jdaa 0
345
#define mng_write_jdat 0
346
#define mng_write_jsep 0
348
#ifndef MNG_NO_DELTA_PNG
349
#define mng_write_dhdr 0
350
#define mng_write_prom 0
351
#define mng_write_ipng 0
352
#define mng_write_pplt 0
353
#ifdef MNG_INCLUDE_JNG
354
#define mng_write_ijng 0
356
#define mng_write_drop 0
357
#define mng_write_dbyk 0
358
#define mng_write_ordr 0
360
#define mng_write_magn 0
361
#define mng_write_need 0
362
#define mng_write_evnt 0
363
#define mng_write_unknown 0
287
364
#endif /* MNG_INCLUDE_WRITE_PROCS */
289
366
/* ************************************************************************** */