Eneboo - Documentación para desarrolladores
src/qt/src/3rdparty/libmng/libmng_object_prc.h
Ir a la documentación de este archivo.
00001 /* ************************************************************************** */
00002 /* *             For conditions of distribution and use,                    * */
00003 /* *                see copyright notice in libmng.h                        * */
00004 /* ************************************************************************** */
00005 /* *                                                                        * */
00006 /* * project   : libmng                                                     * */
00007 /* * file      : libmng_object_prc.h       copyright (c) 2000 G.Juyn        * */
00008 /* * version   : 1.0.0                                                      * */
00009 /* *                                                                        * */
00010 /* * purpose   : Object processing routines (definition)                    * */
00011 /* *                                                                        * */
00012 /* * author    : G.Juyn                                                     * */
00013 /* * web       : http://www.3-t.com                                         * */
00014 /* * email     : mailto:info@3-t.com                                        * */
00015 /* *                                                                        * */
00016 /* * comment   : Definition of the internal object processing routines      * */
00017 /* *                                                                        * */
00018 /* * changes   : 0.5.1 - 05/08/2000 - G.Juyn                                * */
00019 /* *             - changed strict-ANSI stuff                                * */
00020 /* *                                                                        * */
00021 /* *             0.5.2 - 05/24/2000 - G.Juyn                                * */
00022 /* *             - added support for global color-chunks in animation       * */
00023 /* *             - added support for global PLTE,tRNS,bKGD in animation     * */
00024 /* *             - added SAVE & SEEK animation objects                      * */
00025 /* *             0.5.2 - 05/29/2000 - G.Juyn                                * */
00026 /* *             - changed ani_object create routines not to return the     * */
00027 /* *               created object (wasn't necessary)                        * */
00028 /* *             - added compression/filter/interlace fields to             * */
00029 /* *               object-buffer for delta-image processing                 * */
00030 /* *                                                                        * */
00031 /* *             0.5.3 - 06/22/2000 - G.Juyn                                * */
00032 /* *             - added support for PPLT chunk                             * */
00033 /* *                                                                        * */
00034 /* *             0.9.2 - 08/05/2000 - G.Juyn                                * */
00035 /* *             - changed file-prefixes                                    * */
00036 /* *                                                                        * */
00037 /* *             0.9.3 - 08/26/2000 - G.Juyn                                * */
00038 /* *             - added MAGN chunk                                         * */
00039 /* *             0.9.3 - 10/17/2000 - G.Juyn                                * */
00040 /* *             - added routine to discard "invalid" objects               * */
00041 /* *                                                                        * */
00042 /* ************************************************************************** */
00043 
00044 #if defined(__BORLANDC__) && defined(MNG_STRICT_ANSI)
00045 #pragma option -A                      /* force ANSI-C */
00046 #endif
00047 
00048 #ifndef _libmng_object_prc_h_
00049 #define _libmng_object_prc_h_
00050 
00051 /* ************************************************************************** */
00052 
00053 mng_retcode drop_invalid_objects   (mng_datap      pData);
00054 
00055 /* ************************************************************************** */
00056 
00057 mng_retcode create_imagedataobject (mng_datap      pData,
00058                                     mng_bool       bConcrete,
00059                                     mng_bool       bViewable,
00060                                     mng_uint32     iWidth,
00061                                     mng_uint32     iHeight,
00062                                     mng_uint8      iBitdepth,
00063                                     mng_uint8      iColortype,
00064                                     mng_uint8      iCompression,
00065                                     mng_uint8      iFilter,
00066                                     mng_uint8      iInterlace,
00067                                     mng_imagedatap *ppObject);
00068 
00069 mng_retcode free_imagedataobject   (mng_datap      pData,
00070                                     mng_imagedatap pImagedata);
00071 
00072 mng_retcode clone_imagedataobject  (mng_datap      pData,
00073                                     mng_bool       bConcrete,
00074                                     mng_imagedatap pSource,
00075                                     mng_imagedatap *ppClone);
00076 
00077 /* ************************************************************************** */
00078 
00079 mng_retcode create_imageobject   (mng_datap  pData,
00080                                   mng_uint16 iId,
00081                                   mng_bool   bConcrete,
00082                                   mng_bool   bVisible,
00083                                   mng_bool   bViewable,
00084                                   mng_uint32 iWidth,
00085                                   mng_uint32 iHeight,
00086                                   mng_uint8  iBitdepth,
00087                                   mng_uint8  iColortype,
00088                                   mng_uint8  iCompression,
00089                                   mng_uint8  iFilter,
00090                                   mng_uint8  iInterlace,
00091                                   mng_int32  iPosx,
00092                                   mng_int32  iPosy,
00093                                   mng_bool   bClipped,
00094                                   mng_int32  iClipl,
00095                                   mng_int32  iClipr,
00096                                   mng_int32  iClipt,
00097                                   mng_int32  iClipb,
00098                                   mng_imagep *ppObject);
00099 
00100 mng_retcode free_imageobject     (mng_datap  pData,
00101                                   mng_imagep pImage);
00102 
00103 mng_imagep  find_imageobject     (mng_datap  pData,
00104                                   mng_uint16 iId);
00105 
00106 mng_retcode clone_imageobject    (mng_datap  pData,
00107                                   mng_uint16 iId,
00108                                   mng_bool   bPartial,
00109                                   mng_bool   bVisible,
00110                                   mng_bool   bAbstract,
00111                                   mng_bool   bHasloca,
00112                                   mng_uint8  iLocationtype,
00113                                   mng_int32  iLocationx,
00114                                   mng_int32  iLocationy,
00115                                   mng_imagep pSource,
00116                                   mng_imagep *ppClone);
00117 
00118 mng_retcode renum_imageobject    (mng_datap  pData,
00119                                   mng_imagep pSource,
00120                                   mng_uint16 iId,
00121                                   mng_bool   bVisible,
00122                                   mng_bool   bAbstract,
00123                                   mng_bool   bHasloca,
00124                                   mng_uint8  iLocationtype,
00125                                   mng_int32  iLocationx,
00126                                   mng_int32  iLocationy);
00127 
00128 mng_retcode reset_object_details (mng_datap  pData,
00129                                   mng_imagep pImage,
00130                                   mng_uint32 iWidth,
00131                                   mng_uint32 iHeight,
00132                                   mng_uint8  iBitdepth,
00133                                   mng_uint8  iColortype,
00134                                   mng_uint8  iCompression,
00135                                   mng_uint8  iFilter,
00136                                   mng_uint8  iInterlace,
00137                                   mng_bool   bResetall);
00138 
00139 mng_retcode promote_imageobject  (mng_datap  pData,
00140                                   mng_imagep pImage,
00141                                   mng_uint8  iBitdepth,
00142                                   mng_uint8  iColortype,
00143                                   mng_uint8  iFilltype);
00144 
00145 mng_retcode magnify_imageobject  (mng_datap  pData,
00146                                   mng_imagep pImage);
00147 
00148 /* ************************************************************************** */
00149 
00150 mng_retcode create_ani_image  (mng_datap      pData);
00151 
00152 mng_retcode create_ani_plte   (mng_datap      pData,
00153                                mng_uint32     iEntrycount,
00154                                mng_palette8ep paEntries);
00155 
00156 mng_retcode create_ani_trns   (mng_datap      pData,
00157                                mng_uint32     iRawlen,
00158                                mng_uint8p     pRawdata);
00159 
00160 mng_retcode create_ani_gama   (mng_datap      pData,
00161                                mng_bool       bEmpty,
00162                                mng_uint32     iGamma);
00163 
00164 mng_retcode create_ani_chrm   (mng_datap      pData,
00165                                mng_bool       bEmpty,
00166                                mng_uint32     iWhitepointx,
00167                                mng_uint32     iWhitepointy,
00168                                mng_uint32     iRedx,
00169                                mng_uint32     iRedy,
00170                                mng_uint32     iGreenx,
00171                                mng_uint32     iGreeny,
00172                                mng_uint32     iBluex,
00173                                mng_uint32     iBluey);
00174 
00175 mng_retcode create_ani_srgb   (mng_datap      pData,
00176                                mng_bool       bEmpty,
00177                                mng_uint8      iRenderinginent);
00178 
00179 mng_retcode create_ani_iccp   (mng_datap      pData,
00180                                mng_bool       bEmpty,
00181                                mng_uint32     iProfilesize,
00182                                mng_ptr        pProfile);
00183 
00184 mng_retcode create_ani_bkgd   (mng_datap      pData,
00185                                mng_uint16     iRed,
00186                                mng_uint16     iGreen,
00187                                mng_uint16     iBlue);
00188 
00189 mng_retcode create_ani_loop   (mng_datap      pData,
00190                                mng_uint8      iLevel,
00191                                mng_uint32     iRepeatcount,
00192                                mng_uint8      iTermcond,
00193                                mng_uint32     iItermin,
00194                                mng_uint32     iItermax,
00195                                mng_uint32     iCount,
00196                                mng_uint32p    pSignals);
00197 
00198 mng_retcode create_ani_endl   (mng_datap      pData,
00199                                mng_uint8      iLevel);
00200 
00201 mng_retcode create_ani_defi   (mng_datap      pData);
00202 
00203 mng_retcode create_ani_basi   (mng_datap      pData,
00204                                mng_uint16     iRed,
00205                                mng_uint16     iGreen,
00206                                mng_uint16     iBlue,
00207                                mng_bool       bHasalpha,
00208                                mng_uint16     iAlpha,
00209                                mng_uint8      iViewable);
00210 
00211 mng_retcode create_ani_clon   (mng_datap      pData,
00212                                mng_uint16     iCloneid,
00213                                mng_uint16     iSourceid,
00214                                mng_uint8      iClonetype,
00215                                mng_bool       bHasdonotshow,
00216                                mng_uint8      iDonotshow,
00217                                mng_uint8      iConcrete,
00218                                mng_bool       bHasloca,
00219                                mng_uint8      iLocatype,
00220                                mng_int32      iLocax,
00221                                mng_int32      iLocay);
00222 
00223 mng_retcode create_ani_back   (mng_datap      pData,
00224                                mng_uint16     iRed,
00225                                mng_uint16     iGreen,
00226                                mng_uint16     iBlue,
00227                                mng_uint8      iMandatory,
00228                                mng_uint16     iImageid,
00229                                mng_uint8      iTile);
00230 
00231 mng_retcode create_ani_fram   (mng_datap      pData,
00232                                mng_uint8      iFramemode,
00233                                mng_uint8      iChangedelay,
00234                                mng_uint32     iDelay,
00235                                mng_uint8      iChangetimeout,
00236                                mng_uint32     iTimeout,
00237                                mng_uint8      iChangeclipping,
00238                                mng_uint8      iCliptype,
00239                                mng_int32      iClipl,
00240                                mng_int32      iClipr,
00241                                mng_int32      iClipt,
00242                                mng_int32      iClipb);
00243 
00244 mng_retcode create_ani_move   (mng_datap      pData,
00245                                mng_uint16     iFirstid,
00246                                mng_uint16     iLastid,
00247                                mng_uint8      iType,
00248                                mng_int32      iLocax,
00249                                mng_int32      iLocay);
00250 
00251 mng_retcode create_ani_clip   (mng_datap      pData,
00252                                mng_uint16     iFirstid,
00253                                mng_uint16     iLastid,
00254                                mng_uint8      iType,
00255                                mng_int32      iClipl,
00256                                mng_int32      iClipr,
00257                                mng_int32      iClipt,
00258                                mng_int32      iClipb);
00259 
00260 mng_retcode create_ani_show   (mng_datap      pData,
00261                                mng_uint16     iFirstid,
00262                                mng_uint16     iLastid,
00263                                mng_uint8      iMode);
00264 
00265 mng_retcode create_ani_term   (mng_datap      pData,
00266                                mng_uint8      iTermaction,
00267                                mng_uint8      iIteraction,
00268                                mng_uint32     iDelay,
00269                                mng_uint32     iItermax);
00270 
00271 mng_retcode create_ani_save   (mng_datap      pData);
00272 mng_retcode create_ani_seek   (mng_datap      pData);
00273 
00274 mng_retcode create_ani_dhdr   (mng_datap      pData,
00275                                mng_uint16     iObjectid,
00276                                mng_uint8      iImagetype,
00277                                mng_uint8      iDeltatype,
00278                                mng_uint32     iBlockwidth,
00279                                mng_uint32     iBlockheight,
00280                                mng_uint32     iBlockx,
00281                                mng_uint32     iBlocky);
00282 
00283 mng_retcode create_ani_prom   (mng_datap      pData,
00284                                mng_uint8      iBitdepth,
00285                                mng_uint8      iColortype,
00286                                mng_uint8      iFilltype);
00287 
00288 mng_retcode create_ani_ipng   (mng_datap      pData);
00289 mng_retcode create_ani_ijng   (mng_datap      pData);
00290 
00291 mng_retcode create_ani_pplt   (mng_datap      pData,
00292                                mng_uint8      iType,
00293                                mng_uint32     iCount,
00294                                mng_palette8ep paIndexentries,
00295                                mng_uint8p     paAlphaentries,
00296                                mng_uint8p     paUsedentries);
00297 
00298 mng_retcode create_ani_magn   (mng_datap      pData,
00299                                mng_uint16     iFirstid,
00300                                mng_uint16     iLastid,
00301                                mng_uint16     iMethodX,
00302                                mng_uint16     iMX,
00303                                mng_uint16     iMY,
00304                                mng_uint16     iML,
00305                                mng_uint16     iMR,
00306                                mng_uint16     iMT,
00307                                mng_uint16     iMB,
00308                                mng_uint16     iMethodY);
00309                                
00310 /* ************************************************************************** */
00311 
00312 mng_retcode free_ani_image    (mng_datap    pData,
00313                                mng_objectp  pObject);
00314 
00315 mng_retcode free_ani_plte     (mng_datap    pData,
00316                                mng_objectp  pObject);
00317 mng_retcode free_ani_trns     (mng_datap    pData,
00318                                mng_objectp  pObject);
00319 mng_retcode free_ani_gama     (mng_datap    pData,
00320                                mng_objectp  pObject);
00321 mng_retcode free_ani_chrm     (mng_datap    pData,
00322                                mng_objectp  pObject);
00323 mng_retcode free_ani_srgb     (mng_datap    pData,
00324                                mng_objectp  pObject);
00325 mng_retcode free_ani_iccp     (mng_datap    pData,
00326                                mng_objectp  pObject);
00327 mng_retcode free_ani_bkgd     (mng_datap    pData,
00328                                mng_objectp  pObject);
00329 mng_retcode free_ani_loop     (mng_datap    pData,
00330                                mng_objectp  pObject);
00331 mng_retcode free_ani_endl     (mng_datap    pData,
00332                                mng_objectp  pObject);
00333 mng_retcode free_ani_defi     (mng_datap    pData,
00334                                mng_objectp  pObject);
00335 mng_retcode free_ani_basi     (mng_datap    pData,
00336                                mng_objectp  pObject);
00337 mng_retcode free_ani_clon     (mng_datap    pData,
00338                                mng_objectp  pObject);
00339 mng_retcode free_ani_back     (mng_datap    pData,
00340                                mng_objectp  pObject);
00341 mng_retcode free_ani_fram     (mng_datap    pData,
00342                                mng_objectp  pObject);
00343 mng_retcode free_ani_move     (mng_datap    pData,
00344                                mng_objectp  pObject);
00345 mng_retcode free_ani_clip     (mng_datap    pData,
00346                                mng_objectp  pObject);
00347 mng_retcode free_ani_show     (mng_datap    pData,
00348                                mng_objectp  pObject);
00349 mng_retcode free_ani_term     (mng_datap    pData,
00350                                mng_objectp  pObject);
00351 mng_retcode free_ani_save     (mng_datap    pData,
00352                                mng_objectp  pObject);
00353 mng_retcode free_ani_seek     (mng_datap    pData,
00354                                mng_objectp  pObject);
00355 mng_retcode free_ani_dhdr     (mng_datap    pData,
00356                                mng_objectp  pObject);
00357 mng_retcode free_ani_prom     (mng_datap    pData,
00358                                mng_objectp  pObject);
00359 mng_retcode free_ani_ipng     (mng_datap    pData,
00360                                mng_objectp  pObject);
00361 mng_retcode free_ani_ijng     (mng_datap    pData,
00362                                mng_objectp  pObject);
00363 mng_retcode free_ani_pplt     (mng_datap    pData,
00364                                mng_objectp  pObject);
00365 mng_retcode free_ani_magn     (mng_datap    pData,
00366                                mng_objectp  pObject);
00367 
00368 /* ************************************************************************** */
00369 
00370 mng_retcode process_ani_image (mng_datap    pData,
00371                                mng_objectp  pObject);
00372 
00373 mng_retcode process_ani_plte  (mng_datap    pData,
00374                                mng_objectp  pObject);
00375 mng_retcode process_ani_trns  (mng_datap    pData,
00376                                mng_objectp  pObject);
00377 mng_retcode process_ani_gama  (mng_datap    pData,
00378                                mng_objectp  pObject);
00379 mng_retcode process_ani_chrm  (mng_datap    pData,
00380                                mng_objectp  pObject);
00381 mng_retcode process_ani_srgb  (mng_datap    pData,
00382                                mng_objectp  pObject);
00383 mng_retcode process_ani_iccp  (mng_datap    pData,
00384                                mng_objectp  pObject);
00385 mng_retcode process_ani_bkgd  (mng_datap    pData,
00386                                mng_objectp  pObject);
00387 mng_retcode process_ani_loop  (mng_datap    pData,
00388                                mng_objectp  pObject);
00389 mng_retcode process_ani_endl  (mng_datap    pData,
00390                                mng_objectp  pObject);
00391 mng_retcode process_ani_defi  (mng_datap    pData,
00392                                mng_objectp  pObject);
00393 mng_retcode process_ani_basi  (mng_datap    pData,
00394                                mng_objectp  pObject);
00395 mng_retcode process_ani_clon  (mng_datap    pData,
00396                                mng_objectp  pObject);
00397 mng_retcode process_ani_back  (mng_datap    pData,
00398                                mng_objectp  pObject);
00399 mng_retcode process_ani_fram  (mng_datap    pData,
00400                                mng_objectp  pObject);
00401 mng_retcode process_ani_move  (mng_datap    pData,
00402                                mng_objectp  pObject);
00403 mng_retcode process_ani_clip  (mng_datap    pData,
00404                                mng_objectp  pObject);
00405 mng_retcode process_ani_show  (mng_datap    pData,
00406                                mng_objectp  pObject);
00407 mng_retcode process_ani_term  (mng_datap    pData,
00408                                mng_objectp  pObject);
00409 mng_retcode process_ani_save  (mng_datap    pData,
00410                                mng_objectp  pObject);
00411 mng_retcode process_ani_seek  (mng_datap    pData,
00412                                mng_objectp  pObject);
00413 mng_retcode process_ani_dhdr  (mng_datap    pData,
00414                                mng_objectp  pObject);
00415 mng_retcode process_ani_prom  (mng_datap    pData,
00416                                mng_objectp  pObject);
00417 mng_retcode process_ani_ipng  (mng_datap    pData,
00418                                mng_objectp  pObject);
00419 mng_retcode process_ani_ijng  (mng_datap    pData,
00420                                mng_objectp  pObject);
00421 mng_retcode process_ani_pplt  (mng_datap    pData,
00422                                mng_objectp  pObject);
00423 mng_retcode process_ani_magn  (mng_datap    pData,
00424                                mng_objectp  pObject);
00425 
00426 /* ************************************************************************** */
00427 
00428 #endif /* _libmng_object_prc_h_ */
00429 
00430 /* ************************************************************************** */
00431 /* * end of file                                                            * */
00432 /* ************************************************************************** */
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Propiedades Amigas 'defines'