source: trunk/src/3rdparty/libmng/libmng_display.h@ 603

Last change on this file since 603 was 2, checked in by Dmitry A. Kuminov, 16 years ago

Initially imported qt-all-opensource-src-4.5.1 from Trolltech.

File size: 16.6 KB
Line 
1/* ************************************************************************** */
2/* * For conditions of distribution and use, * */
3/* * see copyright notice in libmng.h * */
4/* ************************************************************************** */
5/* * * */
6/* * project : libmng * */
7/* * file : libmng_display.h copyright (c) 2000-2007 G.Juyn * */
8/* * version : 1.0.10 * */
9/* * * */
10/* * purpose : Display management (definition) * */
11/* * * */
12/* * author : G.Juyn * */
13/* * * */
14/* * comment : Definition of the display managament routines * */
15/* * * */
16/* * changes : 0.5.1 - 05/08/2000 - G.Juyn * */
17/* * - changed strict-ANSI stuff * */
18/* * * */
19/* * 0.5.2 - 05/20/2000 - G.Juyn * */
20/* * - added JNG support stuff * */
21/* * * */
22/* * 0.5.3 - 06/16/2000 - G.Juyn * */
23/* * - changed progressive-display processing * */
24/* * 0.5.3 - 06/22/2000 - G.Juyn * */
25/* * - added support for delta-image processing * */
26/* * - added support for PPLT chunk processing * */
27/* * * */
28/* * 0.9.2 - 08/05/2000 - G.Juyn * */
29/* * - changed file-prefixes * */
30/* * 0.9.3 - 08/07/2000 - G.Juyn * */
31/* * - B111300 - fixup for improved portability * */
32/* * 0.9.3 - 08/26/2000 - G.Juyn * */
33/* * - added MAGN chunk * */
34/* * 0.9.3 - 10/16/2000 - G.Juyn * */
35/* * - added JDAA chunk * */
36/* * * */
37/* * 0.9.4 - 11/24/2000 - G.Juyn * */
38/* * - moved restore of object 0 to libmng_display * */
39/* * * */
40/* * 1.0.5 - 08/19/2002 - G.Juyn * */
41/* * - B597134 - libmng pollutes the linker namespace * */
42/* * 1.0.5 - 09/13/2002 - G.Juyn * */
43/* * - fixed read/write of MAGN chunk * */
44/* * 1.0.5 - 09/20/2002 - G.Juyn * */
45/* * - added support for PAST * */
46/* * 1.0.5 - 10/07/2002 - G.Juyn * */
47/* * - added proposed change in handling of TERM- & if-delay * */
48/* * 1.0.5 - 10/20/2002 - G.Juyn * */
49/* * - fixed display of visible target of PAST operation * */
50/* * * */
51/* * 1.0.7 - 03/24/2004 - G.R-P. * */
52/* * - added some SKIPCHUNK conditionals * */
53/* * * */
54/* * 1.0.9 - 12/11/2004 - G.Juyn * */
55/* * - added conditional MNG_OPTIMIZE_DISPLAYCALLS * */
56/* * * */
57/* * 1.0.10 - 04/08/2007 - G.Juyn * */
58/* * - added support for mPNG proposal * */
59/* * 1.0.10 - 04/12/2007 - G.Juyn * */
60/* * - added support for ANG proposal * */
61/* * * */
62/* ************************************************************************** */
63
64#if defined(__BORLANDC__) && defined(MNG_STRICT_ANSI)
65#pragma option -A /* force ANSI-C */
66#endif
67
68#ifndef _libmng_display_h_
69#define _libmng_display_h_
70
71/* ************************************************************************** */
72
73#ifdef MNG_INCLUDE_DISPLAY_PROCS
74
75/* ************************************************************************** */
76
77mng_retcode mng_display_progressive_refresh (mng_datap pData,
78 mng_uint32 iInterval);
79
80/* ************************************************************************** */
81
82mng_retcode mng_reset_objzero (mng_datap pData);
83
84mng_retcode mng_display_image (mng_datap pData,
85 mng_imagep pImage,
86 mng_bool bLayeradvanced);
87
88mng_retcode mng_execute_delta_image (mng_datap pData,
89 mng_imagep pTarget,
90 mng_imagep pDelta);
91
92/* ************************************************************************** */
93
94mng_retcode mng_process_display (mng_datap pData);
95
96/* ************************************************************************** */
97
98#ifdef MNG_OPTIMIZE_FOOTPRINT_INIT
99png_imgtype mng_png_imgtype (mng_uint8 colortype,
100 mng_uint8 bitdepth);
101#endif
102
103/* ************************************************************************** */
104
105#ifndef MNG_OPTIMIZE_DISPLAYCALLS
106
107mng_retcode mng_process_display_ihdr (mng_datap pData);
108
109#ifdef MNG_INCLUDE_MPNG_PROPOSAL
110mng_retcode mng_process_display_mpng (mng_datap pData);
111#endif
112
113#ifdef MNG_INCLUDE_ANG_PROPOSAL
114mng_retcode mng_process_display_ang (mng_datap pData);
115#endif
116
117mng_retcode mng_process_display_idat (mng_datap pData,
118 mng_uint32 iRawlen,
119 mng_uint8p pRawdata);
120
121mng_retcode mng_process_display_iend (mng_datap pData);
122mng_retcode mng_process_display_mend (mng_datap pData);
123mng_retcode mng_process_display_mend2 (mng_datap pData);
124mng_retcode mng_process_display_defi (mng_datap pData);
125
126#ifndef MNG_SKIPCHUNK_BASI
127mng_retcode mng_process_display_basi (mng_datap pData,
128 mng_uint16 iRed,
129 mng_uint16 iGreen,
130 mng_uint16 iBlue,
131 mng_bool bHasalpha,
132 mng_uint16 iAlpha,
133 mng_uint8 iViewable);
134#endif
135
136#ifndef MNG_SKIPCHUNK_CLON
137mng_retcode mng_process_display_clon (mng_datap pData,
138 mng_uint16 iSourceid,
139 mng_uint16 iCloneid,
140 mng_uint8 iClonetype,
141 mng_bool bHasdonotshow,
142 mng_uint8 iDonotshow,
143 mng_uint8 iConcrete,
144 mng_bool bHasloca,
145 mng_uint8 iLocationtype,
146 mng_int32 iLocationx,
147 mng_int32 iLocationy);
148mng_retcode mng_process_display_clon2 (mng_datap pData);
149#endif
150
151#ifndef MNG_SKIPCHUNK_DISC
152mng_retcode mng_process_display_disc (mng_datap pData,
153 mng_uint32 iCount,
154 mng_uint16p pIds);
155#endif
156
157#ifndef MNG_SKIPCHUNK_FRAM
158mng_retcode mng_process_display_fram (mng_datap pData,
159 mng_uint8 iFramemode,
160 mng_uint8 iChangedelay,
161 mng_uint32 iDelay,
162 mng_uint8 iChangetimeout,
163 mng_uint32 iTimeout,
164 mng_uint8 iChangeclipping,
165 mng_uint8 iCliptype,
166 mng_int32 iClipl,
167 mng_int32 iClipr,
168 mng_int32 iClipt,
169 mng_int32 iClipb);
170mng_retcode mng_process_display_fram2 (mng_datap pData);
171#endif
172
173#ifndef MNG_SKIPCHUNK_MOVE
174mng_retcode mng_process_display_move (mng_datap pData,
175 mng_uint16 iFromid,
176 mng_uint16 iToid,
177 mng_uint8 iMovetype,
178 mng_int32 iMovex,
179 mng_int32 iMovey);
180#endif
181
182#ifndef MNG_SKIPCHUNK_CLIP
183mng_retcode mng_process_display_clip (mng_datap pData,
184 mng_uint16 iFromid,
185 mng_uint16 iToid,
186 mng_uint8 iCliptype,
187 mng_int32 iClipl,
188 mng_int32 iClipr,
189 mng_int32 iClipt,
190 mng_int32 iClipb);
191#endif
192
193#ifndef MNG_SKIPCHUNK_SHOW
194mng_retcode mng_process_display_show (mng_datap pData);
195#endif
196#ifndef MNG_SKIPCHUNK_SAVE
197mng_retcode mng_process_display_save (mng_datap pData);
198#endif
199#ifndef MNG_SKIPCHUNK_SEEK
200mng_retcode mng_process_display_seek (mng_datap pData);
201#endif
202#ifdef MNG_INCLUDE_JNG
203mng_retcode mng_process_display_jhdr (mng_datap pData);
204
205mng_retcode mng_process_display_jdaa (mng_datap pData,
206 mng_uint32 iRawlen,
207 mng_uint8p pRawdata);
208
209mng_retcode mng_process_display_jdat (mng_datap pData,
210 mng_uint32 iRawlen,
211 mng_uint8p pRawdata);
212
213#endif
214#ifndef MNG_NO_DELTA_PNG
215mng_retcode mng_process_display_dhdr (mng_datap pData,
216 mng_uint16 iObjectid,
217 mng_uint8 iImagetype,
218 mng_uint8 iDeltatype,
219 mng_uint32 iBlockwidth,
220 mng_uint32 iBlockheight,
221 mng_uint32 iBlockx,
222 mng_uint32 iBlocky);
223
224mng_retcode mng_process_display_prom (mng_datap pData,
225 mng_uint8 iBitdepth,
226 mng_uint8 iColortype,
227 mng_uint8 iFilltype);
228
229mng_retcode mng_process_display_ipng (mng_datap pData);
230#ifdef MNG_INCLUDE_JNG
231mng_retcode mng_process_display_ijng (mng_datap pData);
232#endif
233
234mng_retcode mng_process_display_pplt (mng_datap pData,
235 mng_uint8 iType,
236 mng_uint32 iCount,
237 mng_palette8ep paIndexentries,
238 mng_uint8p paAlphaentries,
239 mng_uint8p paUsedentries);
240#endif
241
242#ifndef MNG_SKIPCHUNK_MAGN
243mng_retcode mng_process_display_magn (mng_datap pData,
244 mng_uint16 iFirstid,
245 mng_uint16 iLastid,
246 mng_uint8 iMethodX,
247 mng_uint16 iMX,
248 mng_uint16 iMY,
249 mng_uint16 iML,
250 mng_uint16 iMR,
251 mng_uint16 iMT,
252 mng_uint16 iMB,
253 mng_uint8 iMethodY);
254mng_retcode mng_process_display_magn2 (mng_datap pData);
255#endif
256
257#ifndef MNG_SKIPCHUNK_PAST
258mng_retcode mng_process_display_past (mng_datap pData,
259 mng_uint16 iTargetid,
260 mng_uint8 iTargettype,
261 mng_int32 iTargetx,
262 mng_int32 iTargety,
263 mng_uint32 iCount,
264 mng_ptr pSources);
265mng_retcode mng_process_display_past2 (mng_datap pData);
266#endif
267
268#else /* MNG_OPTIMIZE_DISPLAYCALLS */
269
270mng_retcode mng_process_display_ihdr (mng_datap pData);
271#ifdef MNG_INCLUDE_MPNG_PROPOSAL
272mng_retcode mng_process_display_mpng (mng_datap pData);
273#endif
274mng_retcode mng_process_display_idat (mng_datap pData);
275mng_retcode mng_process_display_iend (mng_datap pData);
276mng_retcode mng_process_display_mend (mng_datap pData);
277mng_retcode mng_process_display_mend2 (mng_datap pData);
278mng_retcode mng_process_display_defi (mng_datap pData);
279#ifndef MNG_SKIPCHUNK_BASI
280mng_retcode mng_process_display_basi (mng_datap pData);
281#endif
282#ifndef MNG_SKIPCHUNK_CLON
283mng_retcode mng_process_display_clon (mng_datap pData);
284mng_retcode mng_process_display_clon2 (mng_datap pData);
285#endif
286#ifndef MNG_SKIPCHUNK_DISC
287mng_retcode mng_process_display_disc (mng_datap pData);
288#endif
289#ifndef MNG_SKIPCHUNK_FRAM
290mng_retcode mng_process_display_fram (mng_datap pData);
291mng_retcode mng_process_display_fram2 (mng_datap pData);
292#endif
293#ifndef MNG_SKIPCHUNK_MOVE
294mng_retcode mng_process_display_move (mng_datap pData);
295#endif
296#ifndef MNG_SKIPCHUNK_CLIP
297mng_retcode mng_process_display_clip (mng_datap pData);
298#endif
299#ifndef MNG_SKIPCHUNK_SHOW
300mng_retcode mng_process_display_show (mng_datap pData);
301#endif
302#ifndef MNG_SKIPCHUNK_SAVE
303mng_retcode mng_process_display_save (mng_datap pData);
304#endif
305#ifndef MNG_SKIPCHUNK_SEEK
306mng_retcode mng_process_display_seek (mng_datap pData);
307#endif
308#ifdef MNG_INCLUDE_JNG
309mng_retcode mng_process_display_jhdr (mng_datap pData);
310mng_retcode mng_process_display_jdaa (mng_datap pData);
311mng_retcode mng_process_display_jdat (mng_datap pData);
312#endif
313#ifndef MNG_NO_DELTA_PNG
314mng_retcode mng_process_display_dhdr (mng_datap pData);
315mng_retcode mng_process_display_prom (mng_datap pData);
316mng_retcode mng_process_display_ipng (mng_datap pData);
317#ifdef MNG_INCLUDE_JNG
318mng_retcode mng_process_display_ijng (mng_datap pData);
319#endif
320mng_retcode mng_process_display_pplt (mng_datap pData);
321#endif
322#ifndef MNG_SKIPCHUNK_MAGN
323mng_retcode mng_process_display_magn (mng_datap pData);
324mng_retcode mng_process_display_magn2 (mng_datap pData);
325#endif
326#ifndef MNG_SKIPCHUNK_PAST
327mng_retcode mng_process_display_past (mng_datap pData);
328mng_retcode mng_process_display_past2 (mng_datap pData);
329#endif
330
331#endif /* MNG_OPTIMIZE_DISPLAYCALLS */
332
333/* ************************************************************************** */
334
335#endif /* MNG_INCLUDE_DISPLAY_PROCS */
336
337/* ************************************************************************** */
338
339#endif /* _libmng_display_h_ */
340
341/* ************************************************************************** */
342/* * end of file * */
343/* ************************************************************************** */
Note: See TracBrowser for help on using the repository browser.