source: trunk/src/3rdparty/libmng/libmng_object_prc.h

Last change on this file was 2, checked in by dmik, 20 years ago

Imported xplatform parts of the official release 3.3.1 from Trolltech

  • Property svn:keywords set to Id
File size: 22.0 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_object_prc.h copyright (c) 2000 G.Juyn * */
8/* * version : 1.0.0 * */
9/* * * */
10/* * purpose : Object processing routines (definition) * */
11/* * * */
12/* * author : G.Juyn * */
13/* * web : http://www.3-t.com * */
14/* * email : mailto:info@3-t.com * */
15/* * * */
16/* * comment : Definition of the internal object processing routines * */
17/* * * */
18/* * changes : 0.5.1 - 05/08/2000 - G.Juyn * */
19/* * - changed strict-ANSI stuff * */
20/* * * */
21/* * 0.5.2 - 05/24/2000 - G.Juyn * */
22/* * - added support for global color-chunks in animation * */
23/* * - added support for global PLTE,tRNS,bKGD in animation * */
24/* * - added SAVE & SEEK animation objects * */
25/* * 0.5.2 - 05/29/2000 - G.Juyn * */
26/* * - changed ani_object create routines not to return the * */
27/* * created object (wasn't necessary) * */
28/* * - added compression/filter/interlace fields to * */
29/* * object-buffer for delta-image processing * */
30/* * * */
31/* * 0.5.3 - 06/22/2000 - G.Juyn * */
32/* * - added support for PPLT chunk * */
33/* * * */
34/* * 0.9.2 - 08/05/2000 - G.Juyn * */
35/* * - changed file-prefixes * */
36/* * * */
37/* * 0.9.3 - 08/26/2000 - G.Juyn * */
38/* * - added MAGN chunk * */
39/* * 0.9.3 - 10/17/2000 - G.Juyn * */
40/* * - added routine to discard "invalid" objects * */
41/* * * */
42/* ************************************************************************** */
43
44#if defined(__BORLANDC__) && defined(MNG_STRICT_ANSI)
45#pragma option -A /* force ANSI-C */
46#endif
47
48#ifndef _libmng_object_prc_h_
49#define _libmng_object_prc_h_
50
51/* ************************************************************************** */
52
53mng_retcode drop_invalid_objects (mng_datap pData);
54
55/* ************************************************************************** */
56
57mng_retcode create_imagedataobject (mng_datap pData,
58 mng_bool bConcrete,
59 mng_bool bViewable,
60 mng_uint32 iWidth,
61 mng_uint32 iHeight,
62 mng_uint8 iBitdepth,
63 mng_uint8 iColortype,
64 mng_uint8 iCompression,
65 mng_uint8 iFilter,
66 mng_uint8 iInterlace,
67 mng_imagedatap *ppObject);
68
69mng_retcode free_imagedataobject (mng_datap pData,
70 mng_imagedatap pImagedata);
71
72mng_retcode clone_imagedataobject (mng_datap pData,
73 mng_bool bConcrete,
74 mng_imagedatap pSource,
75 mng_imagedatap *ppClone);
76
77/* ************************************************************************** */
78
79mng_retcode create_imageobject (mng_datap pData,
80 mng_uint16 iId,
81 mng_bool bConcrete,
82 mng_bool bVisible,
83 mng_bool bViewable,
84 mng_uint32 iWidth,
85 mng_uint32 iHeight,
86 mng_uint8 iBitdepth,
87 mng_uint8 iColortype,
88 mng_uint8 iCompression,
89 mng_uint8 iFilter,
90 mng_uint8 iInterlace,
91 mng_int32 iPosx,
92 mng_int32 iPosy,
93 mng_bool bClipped,
94 mng_int32 iClipl,
95 mng_int32 iClipr,
96 mng_int32 iClipt,
97 mng_int32 iClipb,
98 mng_imagep *ppObject);
99
100mng_retcode free_imageobject (mng_datap pData,
101 mng_imagep pImage);
102
103mng_imagep find_imageobject (mng_datap pData,
104 mng_uint16 iId);
105
106mng_retcode clone_imageobject (mng_datap pData,
107 mng_uint16 iId,
108 mng_bool bPartial,
109 mng_bool bVisible,
110 mng_bool bAbstract,
111 mng_bool bHasloca,
112 mng_uint8 iLocationtype,
113 mng_int32 iLocationx,
114 mng_int32 iLocationy,
115 mng_imagep pSource,
116 mng_imagep *ppClone);
117
118mng_retcode renum_imageobject (mng_datap pData,
119 mng_imagep pSource,
120 mng_uint16 iId,
121 mng_bool bVisible,
122 mng_bool bAbstract,
123 mng_bool bHasloca,
124 mng_uint8 iLocationtype,
125 mng_int32 iLocationx,
126 mng_int32 iLocationy);
127
128mng_retcode reset_object_details (mng_datap pData,
129 mng_imagep pImage,
130 mng_uint32 iWidth,
131 mng_uint32 iHeight,
132 mng_uint8 iBitdepth,
133 mng_uint8 iColortype,
134 mng_uint8 iCompression,
135 mng_uint8 iFilter,
136 mng_uint8 iInterlace,
137 mng_bool bResetall);
138
139mng_retcode promote_imageobject (mng_datap pData,
140 mng_imagep pImage,
141 mng_uint8 iBitdepth,
142 mng_uint8 iColortype,
143 mng_uint8 iFilltype);
144
145mng_retcode magnify_imageobject (mng_datap pData,
146 mng_imagep pImage);
147
148/* ************************************************************************** */
149
150mng_retcode create_ani_image (mng_datap pData);
151
152mng_retcode create_ani_plte (mng_datap pData,
153 mng_uint32 iEntrycount,
154 mng_palette8ep paEntries);
155
156mng_retcode create_ani_trns (mng_datap pData,
157 mng_uint32 iRawlen,
158 mng_uint8p pRawdata);
159
160mng_retcode create_ani_gama (mng_datap pData,
161 mng_bool bEmpty,
162 mng_uint32 iGamma);
163
164mng_retcode create_ani_chrm (mng_datap pData,
165 mng_bool bEmpty,
166 mng_uint32 iWhitepointx,
167 mng_uint32 iWhitepointy,
168 mng_uint32 iRedx,
169 mng_uint32 iRedy,
170 mng_uint32 iGreenx,
171 mng_uint32 iGreeny,
172 mng_uint32 iBluex,
173 mng_uint32 iBluey);
174
175mng_retcode create_ani_srgb (mng_datap pData,
176 mng_bool bEmpty,
177 mng_uint8 iRenderinginent);
178
179mng_retcode create_ani_iccp (mng_datap pData,
180 mng_bool bEmpty,
181 mng_uint32 iProfilesize,
182 mng_ptr pProfile);
183
184mng_retcode create_ani_bkgd (mng_datap pData,
185 mng_uint16 iRed,
186 mng_uint16 iGreen,
187 mng_uint16 iBlue);
188
189mng_retcode create_ani_loop (mng_datap pData,
190 mng_uint8 iLevel,
191 mng_uint32 iRepeatcount,
192 mng_uint8 iTermcond,
193 mng_uint32 iItermin,
194 mng_uint32 iItermax,
195 mng_uint32 iCount,
196 mng_uint32p pSignals);
197
198mng_retcode create_ani_endl (mng_datap pData,
199 mng_uint8 iLevel);
200
201mng_retcode create_ani_defi (mng_datap pData);
202
203mng_retcode create_ani_basi (mng_datap pData,
204 mng_uint16 iRed,
205 mng_uint16 iGreen,
206 mng_uint16 iBlue,
207 mng_bool bHasalpha,
208 mng_uint16 iAlpha,
209 mng_uint8 iViewable);
210
211mng_retcode create_ani_clon (mng_datap pData,
212 mng_uint16 iCloneid,
213 mng_uint16 iSourceid,
214 mng_uint8 iClonetype,
215 mng_bool bHasdonotshow,
216 mng_uint8 iDonotshow,
217 mng_uint8 iConcrete,
218 mng_bool bHasloca,
219 mng_uint8 iLocatype,
220 mng_int32 iLocax,
221 mng_int32 iLocay);
222
223mng_retcode create_ani_back (mng_datap pData,
224 mng_uint16 iRed,
225 mng_uint16 iGreen,
226 mng_uint16 iBlue,
227 mng_uint8 iMandatory,
228 mng_uint16 iImageid,
229 mng_uint8 iTile);
230
231mng_retcode create_ani_fram (mng_datap pData,
232 mng_uint8 iFramemode,
233 mng_uint8 iChangedelay,
234 mng_uint32 iDelay,
235 mng_uint8 iChangetimeout,
236 mng_uint32 iTimeout,
237 mng_uint8 iChangeclipping,
238 mng_uint8 iCliptype,
239 mng_int32 iClipl,
240 mng_int32 iClipr,
241 mng_int32 iClipt,
242 mng_int32 iClipb);
243
244mng_retcode create_ani_move (mng_datap pData,
245 mng_uint16 iFirstid,
246 mng_uint16 iLastid,
247 mng_uint8 iType,
248 mng_int32 iLocax,
249 mng_int32 iLocay);
250
251mng_retcode create_ani_clip (mng_datap pData,
252 mng_uint16 iFirstid,
253 mng_uint16 iLastid,
254 mng_uint8 iType,
255 mng_int32 iClipl,
256 mng_int32 iClipr,
257 mng_int32 iClipt,
258 mng_int32 iClipb);
259
260mng_retcode create_ani_show (mng_datap pData,
261 mng_uint16 iFirstid,
262 mng_uint16 iLastid,
263 mng_uint8 iMode);
264
265mng_retcode create_ani_term (mng_datap pData,
266 mng_uint8 iTermaction,
267 mng_uint8 iIteraction,
268 mng_uint32 iDelay,
269 mng_uint32 iItermax);
270
271mng_retcode create_ani_save (mng_datap pData);
272mng_retcode create_ani_seek (mng_datap pData);
273
274mng_retcode create_ani_dhdr (mng_datap pData,
275 mng_uint16 iObjectid,
276 mng_uint8 iImagetype,
277 mng_uint8 iDeltatype,
278 mng_uint32 iBlockwidth,
279 mng_uint32 iBlockheight,
280 mng_uint32 iBlockx,
281 mng_uint32 iBlocky);
282
283mng_retcode create_ani_prom (mng_datap pData,
284 mng_uint8 iBitdepth,
285 mng_uint8 iColortype,
286 mng_uint8 iFilltype);
287
288mng_retcode create_ani_ipng (mng_datap pData);
289mng_retcode create_ani_ijng (mng_datap pData);
290
291mng_retcode create_ani_pplt (mng_datap pData,
292 mng_uint8 iType,
293 mng_uint32 iCount,
294 mng_palette8ep paIndexentries,
295 mng_uint8p paAlphaentries,
296 mng_uint8p paUsedentries);
297
298mng_retcode create_ani_magn (mng_datap pData,
299 mng_uint16 iFirstid,
300 mng_uint16 iLastid,
301 mng_uint16 iMethodX,
302 mng_uint16 iMX,
303 mng_uint16 iMY,
304 mng_uint16 iML,
305 mng_uint16 iMR,
306 mng_uint16 iMT,
307 mng_uint16 iMB,
308 mng_uint16 iMethodY);
309
310/* ************************************************************************** */
311
312mng_retcode free_ani_image (mng_datap pData,
313 mng_objectp pObject);
314
315mng_retcode free_ani_plte (mng_datap pData,
316 mng_objectp pObject);
317mng_retcode free_ani_trns (mng_datap pData,
318 mng_objectp pObject);
319mng_retcode free_ani_gama (mng_datap pData,
320 mng_objectp pObject);
321mng_retcode free_ani_chrm (mng_datap pData,
322 mng_objectp pObject);
323mng_retcode free_ani_srgb (mng_datap pData,
324 mng_objectp pObject);
325mng_retcode free_ani_iccp (mng_datap pData,
326 mng_objectp pObject);
327mng_retcode free_ani_bkgd (mng_datap pData,
328 mng_objectp pObject);
329mng_retcode free_ani_loop (mng_datap pData,
330 mng_objectp pObject);
331mng_retcode free_ani_endl (mng_datap pData,
332 mng_objectp pObject);
333mng_retcode free_ani_defi (mng_datap pData,
334 mng_objectp pObject);
335mng_retcode free_ani_basi (mng_datap pData,
336 mng_objectp pObject);
337mng_retcode free_ani_clon (mng_datap pData,
338 mng_objectp pObject);
339mng_retcode free_ani_back (mng_datap pData,
340 mng_objectp pObject);
341mng_retcode free_ani_fram (mng_datap pData,
342 mng_objectp pObject);
343mng_retcode free_ani_move (mng_datap pData,
344 mng_objectp pObject);
345mng_retcode free_ani_clip (mng_datap pData,
346 mng_objectp pObject);
347mng_retcode free_ani_show (mng_datap pData,
348 mng_objectp pObject);
349mng_retcode free_ani_term (mng_datap pData,
350 mng_objectp pObject);
351mng_retcode free_ani_save (mng_datap pData,
352 mng_objectp pObject);
353mng_retcode free_ani_seek (mng_datap pData,
354 mng_objectp pObject);
355mng_retcode free_ani_dhdr (mng_datap pData,
356 mng_objectp pObject);
357mng_retcode free_ani_prom (mng_datap pData,
358 mng_objectp pObject);
359mng_retcode free_ani_ipng (mng_datap pData,
360 mng_objectp pObject);
361mng_retcode free_ani_ijng (mng_datap pData,
362 mng_objectp pObject);
363mng_retcode free_ani_pplt (mng_datap pData,
364 mng_objectp pObject);
365mng_retcode free_ani_magn (mng_datap pData,
366 mng_objectp pObject);
367
368/* ************************************************************************** */
369
370mng_retcode process_ani_image (mng_datap pData,
371 mng_objectp pObject);
372
373mng_retcode process_ani_plte (mng_datap pData,
374 mng_objectp pObject);
375mng_retcode process_ani_trns (mng_datap pData,
376 mng_objectp pObject);
377mng_retcode process_ani_gama (mng_datap pData,
378 mng_objectp pObject);
379mng_retcode process_ani_chrm (mng_datap pData,
380 mng_objectp pObject);
381mng_retcode process_ani_srgb (mng_datap pData,
382 mng_objectp pObject);
383mng_retcode process_ani_iccp (mng_datap pData,
384 mng_objectp pObject);
385mng_retcode process_ani_bkgd (mng_datap pData,
386 mng_objectp pObject);
387mng_retcode process_ani_loop (mng_datap pData,
388 mng_objectp pObject);
389mng_retcode process_ani_endl (mng_datap pData,
390 mng_objectp pObject);
391mng_retcode process_ani_defi (mng_datap pData,
392 mng_objectp pObject);
393mng_retcode process_ani_basi (mng_datap pData,
394 mng_objectp pObject);
395mng_retcode process_ani_clon (mng_datap pData,
396 mng_objectp pObject);
397mng_retcode process_ani_back (mng_datap pData,
398 mng_objectp pObject);
399mng_retcode process_ani_fram (mng_datap pData,
400 mng_objectp pObject);
401mng_retcode process_ani_move (mng_datap pData,
402 mng_objectp pObject);
403mng_retcode process_ani_clip (mng_datap pData,
404 mng_objectp pObject);
405mng_retcode process_ani_show (mng_datap pData,
406 mng_objectp pObject);
407mng_retcode process_ani_term (mng_datap pData,
408 mng_objectp pObject);
409mng_retcode process_ani_save (mng_datap pData,
410 mng_objectp pObject);
411mng_retcode process_ani_seek (mng_datap pData,
412 mng_objectp pObject);
413mng_retcode process_ani_dhdr (mng_datap pData,
414 mng_objectp pObject);
415mng_retcode process_ani_prom (mng_datap pData,
416 mng_objectp pObject);
417mng_retcode process_ani_ipng (mng_datap pData,
418 mng_objectp pObject);
419mng_retcode process_ani_ijng (mng_datap pData,
420 mng_objectp pObject);
421mng_retcode process_ani_pplt (mng_datap pData,
422 mng_objectp pObject);
423mng_retcode process_ani_magn (mng_datap pData,
424 mng_objectp pObject);
425
426/* ************************************************************************** */
427
428#endif /* _libmng_object_prc_h_ */
429
430/* ************************************************************************** */
431/* * end of file * */
432/* ************************************************************************** */
Note: See TracBrowser for help on using the repository browser.