00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00018 #ifndef __il_h_
00019 #ifndef __IL_H__
00020 
00021 #define __il_h_
00022 #define __IL_H__
00023 
00024 #ifdef __cplusplus
00025 extern "C" {
00026 #endif
00027 
00028 
00029 
00030 
00031 
00032 #define CLAMP_HALF              1
00033 #define CLAMP_FLOATS    1
00034 #define CLAMP_DOUBLES   1
00035 
00036 
00037 
00038 
00039 
00040 
00041 
00042 
00043 
00044 
00045 
00046 
00047 
00048 
00049 
00050 
00051 
00052 
00053 
00054 
00055 
00056 
00057 
00058 #ifdef _WIN32
00059         #if (defined(IL_USE_PRAGMA_LIBS)) && (!defined(_IL_BUILD_LIBRARY))
00060                 #if defined(_MSC_VER) || defined(__BORLANDC__)
00061                         #pragma comment(lib, "DevIL.lib")
00062                 #endif
00063         #endif
00064 #endif
00065 
00066 #ifdef RESTRICT_KEYWORD
00067 #define RESTRICT restrict
00068 #define CONST_RESTRICT const restrict
00069 #else
00070 #define RESTRICT
00071 #define CONST_RESTRICT const
00072 #endif
00073 
00074 #include <stdio.h>
00075 
00076 typedef unsigned int   ILenum;
00077 typedef unsigned char  ILboolean;
00078 typedef unsigned int   ILbitfield;
00079 typedef signed char    ILbyte;
00080 typedef signed short   ILshort;
00081 typedef int                ILint;
00082 typedef size_t         ILsizei;
00083 typedef unsigned char  ILubyte;
00084 typedef unsigned short ILushort;
00085 typedef unsigned int   ILuint;
00086 typedef float          ILfloat;
00087 typedef float          ILclampf;
00088 typedef double         ILdouble;
00089 typedef double         ILclampd;
00090 
00091 #ifdef _MSC_VER
00092 typedef __int64          ILint64;
00093 typedef unsigned __int64 ILuint64;
00094 #else
00095 typedef long long int          ILint64;
00096 typedef long long unsigned int ILuint64;
00097 #endif
00098 
00099 
00100 #include <limits.h>
00101 #ifdef _UNICODE
00102         #ifndef _WIN32_WCE
00103                 #include <wchar.h>
00104         #endif
00105         
00106         
00107         #define ILchar wchar_t
00108         #define ILstring wchar_t*
00109         #define ILconst_string  wchar_t const *
00110 #else
00111         
00112         
00113         #define ILchar char
00114         #define ILstring char*
00115         #define ILconst_string char const *
00116 #endif //_UNICODE
00117 
00118 #define IL_FALSE                        0
00119 #define IL_TRUE                         1
00120 
00121 
00123 #define IL_COLOUR_INDEX     0x1900
00124 #define IL_COLOR_INDEX      0x1900
00125 #define IL_ALPHA                        0x1906
00126 #define IL_RGB              0x1907
00127 #define IL_RGBA             0x1908
00128 #define IL_BGR              0x80E0
00129 #define IL_BGRA             0x80E1
00130 #define IL_LUMINANCE        0x1909
00131 #define IL_LUMINANCE_ALPHA  0x190A
00132 
00134 #define IL_BYTE           0x1400
00135 #define IL_UNSIGNED_BYTE  0x1401
00136 #define IL_SHORT          0x1402
00137 #define IL_UNSIGNED_SHORT 0x1403
00138 #define IL_INT            0x1404
00139 #define IL_UNSIGNED_INT   0x1405
00140 #define IL_FLOAT          0x1406
00141 #define IL_DOUBLE         0x140A
00142 #define IL_HALF           0x140B
00143 
00144 
00145 #define IL_MAX_BYTE                             SCHAR_MAX
00146 #define IL_MAX_UNSIGNED_BYTE    UCHAR_MAX
00147 #define IL_MAX_SHORT                    SHRT_MAX
00148 #define IL_MAX_UNSIGNED_SHORT   USHRT_MAX
00149 #define IL_MAX_INT                              INT_MAX
00150 #define IL_MAX_UNSIGNED_INT     UINT_MAX
00151 
00152 #define IL_LIMIT(x,m,M)         (x<m?m:(x>M?M:x))
00153 #define IL_CLAMP(x)             IL_LIMIT(x,0,1)
00154 
00155 #define IL_VENDOR   0x1F00
00156 #define IL_LOAD_EXT 0x1F01
00157 #define IL_SAVE_EXT 0x1F02
00158 
00159 
00160 
00161 
00162 
00163 
00164 #define IL_VERSION_1_7_8 1
00165 #define IL_VERSION       178
00166 
00167 
00168 
00169 #define IL_ORIGIN_BIT          0x00000001
00170 #define IL_FILE_BIT            0x00000002
00171 #define IL_PAL_BIT             0x00000004
00172 #define IL_FORMAT_BIT          0x00000008
00173 #define IL_TYPE_BIT            0x00000010
00174 #define IL_COMPRESS_BIT        0x00000020
00175 #define IL_LOADFAIL_BIT        0x00000040
00176 #define IL_FORMAT_SPECIFIC_BIT 0x00000080
00177 #define IL_ALL_ATTRIB_BITS     0x000FFFFF
00178 
00179 
00180 
00181 #define IL_PAL_NONE   0x0400
00182 #define IL_PAL_RGB24  0x0401
00183 #define IL_PAL_RGB32  0x0402
00184 #define IL_PAL_RGBA32 0x0403
00185 #define IL_PAL_BGR24  0x0404
00186 #define IL_PAL_BGR32  0x0405
00187 #define IL_PAL_BGRA32 0x0406
00188 
00189 
00190 
00191 #define IL_TYPE_UNKNOWN 0x0000
00192 #define IL_BMP          0x0420  
00193 #define IL_CUT          0x0421  
00194 #define IL_DOOM         0x0422  
00195 #define IL_DOOM_FLAT    0x0423  
00196 #define IL_ICO          0x0424  
00197 #define IL_JPG          0x0425  
00198 #define IL_JFIF         0x0425  
00199 #define IL_ILBM         0x0426  
00200 #define IL_PCD          0x0427  
00201 #define IL_PCX          0x0428  
00202 #define IL_PIC          0x0429  
00203 #define IL_PNG          0x042A  
00204 #define IL_PNM          0x042B  
00205 #define IL_SGI          0x042C  
00206 #define IL_TGA          0x042D  
00207 #define IL_TIF          0x042E  
00208 #define IL_CHEAD        0x042F  
00209 #define IL_RAW          0x0430  
00210 #define IL_MDL          0x0431  
00211 #define IL_WAL          0x0432  
00212 #define IL_LIF          0x0434  
00213 #define IL_MNG          0x0435  
00214 #define IL_JNG          0x0435  
00215 #define IL_GIF          0x0436  
00216 #define IL_DDS          0x0437  
00217 #define IL_DCX          0x0438  
00218 #define IL_PSD          0x0439  
00219 #define IL_EXIF         0x043A  
00220 #define IL_PSP          0x043B  
00221 #define IL_PIX          0x043C  
00222 #define IL_PXR          0x043D  
00223 #define IL_XPM          0x043E  
00224 #define IL_HDR          0x043F  
00225 #define IL_ICNS                 0x0440  
00226 #define IL_JP2                  0x0441  
00227 #define IL_EXR                  0x0442  
00228 #define IL_WDP                  0x0443  
00229 #define IL_VTF                  0x0444  
00230 #define IL_WBMP                 0x0445  
00231 #define IL_SUN                  0x0446  
00232 #define IL_IFF                  0x0447  
00233 #define IL_TPL                  0x0448  
00234 #define IL_FITS                 0x0449  
00235 #define IL_DICOM                0x044A  
00236 #define IL_IWI                  0x044B  
00237 #define IL_BLP                  0x044C  
00238 #define IL_FTX                  0x044D  
00239 #define IL_ROT                  0x044E  
00240 #define IL_TEXTURE              0x044F  
00241 #define IL_DPX                  0x0450  
00242 #define IL_UTX                  0x0451  
00243 #define IL_MP3                  0x0452  
00244 
00245 
00246 #define IL_JASC_PAL     0x0475  
00247 
00248 
00249 
00250 #define IL_NO_ERROR             0x0000
00251 #define IL_INVALID_ENUM         0x0501
00252 #define IL_OUT_OF_MEMORY        0x0502
00253 #define IL_FORMAT_NOT_SUPPORTED 0x0503
00254 #define IL_INTERNAL_ERROR       0x0504
00255 #define IL_INVALID_VALUE        0x0505
00256 #define IL_ILLEGAL_OPERATION    0x0506
00257 #define IL_ILLEGAL_FILE_VALUE   0x0507
00258 #define IL_INVALID_FILE_HEADER  0x0508
00259 #define IL_INVALID_PARAM        0x0509
00260 #define IL_COULD_NOT_OPEN_FILE  0x050A
00261 #define IL_INVALID_EXTENSION    0x050B
00262 #define IL_FILE_ALREADY_EXISTS  0x050C
00263 #define IL_OUT_FORMAT_SAME      0x050D
00264 #define IL_STACK_OVERFLOW       0x050E
00265 #define IL_STACK_UNDERFLOW      0x050F
00266 #define IL_INVALID_CONVERSION   0x0510
00267 #define IL_BAD_DIMENSIONS       0x0511
00268 #define IL_FILE_READ_ERROR      0x0512  // 05/12/2002: Addition by Sam.
00269 #define IL_FILE_WRITE_ERROR     0x0512
00270 
00271 #define IL_LIB_GIF_ERROR  0x05E1
00272 #define IL_LIB_JPEG_ERROR 0x05E2
00273 #define IL_LIB_PNG_ERROR  0x05E3
00274 #define IL_LIB_TIFF_ERROR 0x05E4
00275 #define IL_LIB_MNG_ERROR  0x05E5
00276 #define IL_LIB_JP2_ERROR  0x05E6
00277 #define IL_LIB_EXR_ERROR  0x05E7
00278 #define IL_UNKNOWN_ERROR  0x05FF
00279 
00280 
00281 
00282 #define IL_ORIGIN_SET        0x0600
00283 #define IL_ORIGIN_LOWER_LEFT 0x0601
00284 #define IL_ORIGIN_UPPER_LEFT 0x0602
00285 #define IL_ORIGIN_MODE       0x0603
00286 
00287 
00288 
00289 #define IL_FORMAT_SET  0x0610
00290 #define IL_FORMAT_MODE 0x0611
00291 #define IL_TYPE_SET    0x0612
00292 #define IL_TYPE_MODE   0x0613
00293 
00294 
00295 
00296 #define IL_FILE_OVERWRITE       0x0620
00297 #define IL_FILE_MODE            0x0621
00298 
00299 
00300 
00301 #define IL_CONV_PAL                     0x0630
00302 
00303 
00304 
00305 #define IL_DEFAULT_ON_FAIL      0x0632
00306 
00307 
00308 
00309 #define IL_USE_KEY_COLOUR       0x0635
00310 #define IL_USE_KEY_COLOR        0x0635
00311 #define IL_BLIT_BLEND           0x0636
00312 
00313 
00314 
00315 #define IL_SAVE_INTERLACED      0x0639
00316 #define IL_INTERLACE_MODE       0x063A
00317 
00318 
00319 
00320 #define IL_QUANTIZATION_MODE 0x0640
00321 #define IL_WU_QUANT          0x0641
00322 #define IL_NEU_QUANT         0x0642
00323 #define IL_NEU_QUANT_SAMPLE  0x0643
00324 #define IL_MAX_QUANT_INDEXS  0x0644 //XIX : ILint : Maximum number of colors to reduce to, default of 256. and has a range of 2-256
00325 #define IL_MAX_QUANT_INDICES 0x0644 // Redefined, since the above #define is misspelled
00326 
00327 
00328 
00329 #define IL_FASTEST          0x0660
00330 #define IL_LESS_MEM         0x0661
00331 #define IL_DONT_CARE        0x0662
00332 #define IL_MEM_SPEED_HINT   0x0665
00333 #define IL_USE_COMPRESSION  0x0666
00334 #define IL_NO_COMPRESSION   0x0667
00335 #define IL_COMPRESSION_HINT 0x0668
00336 
00337 
00338 
00339 #define IL_NVIDIA_COMPRESS      0x0670
00340 #define IL_SQUISH_COMPRESS      0x0671
00341 
00342 
00343 
00344 #define IL_SUB_NEXT   0x0680
00345 #define IL_SUB_MIPMAP 0x0681
00346 #define IL_SUB_LAYER  0x0682
00347 
00348 
00349 
00350 #define IL_COMPRESS_MODE 0x0700
00351 #define IL_COMPRESS_NONE 0x0701
00352 #define IL_COMPRESS_RLE  0x0702
00353 #define IL_COMPRESS_LZO  0x0703
00354 #define IL_COMPRESS_ZLIB 0x0704
00355 
00356 
00357 
00358 #define IL_TGA_CREATE_STAMP        0x0710
00359 #define IL_JPG_QUALITY             0x0711
00360 #define IL_PNG_INTERLACE           0x0712
00361 #define IL_TGA_RLE                 0x0713
00362 #define IL_BMP_RLE                 0x0714
00363 #define IL_SGI_RLE                 0x0715
00364 #define IL_TGA_ID_STRING           0x0717
00365 #define IL_TGA_AUTHNAME_STRING     0x0718
00366 #define IL_TGA_AUTHCOMMENT_STRING  0x0719
00367 #define IL_PNG_AUTHNAME_STRING     0x071A
00368 #define IL_PNG_TITLE_STRING        0x071B
00369 #define IL_PNG_DESCRIPTION_STRING  0x071C
00370 #define IL_TIF_DESCRIPTION_STRING  0x071D
00371 #define IL_TIF_HOSTCOMPUTER_STRING 0x071E
00372 #define IL_TIF_DOCUMENTNAME_STRING 0x071F
00373 #define IL_TIF_AUTHNAME_STRING     0x0720
00374 #define IL_JPG_SAVE_FORMAT         0x0721
00375 #define IL_CHEAD_HEADER_STRING     0x0722
00376 #define IL_PCD_PICNUM              0x0723
00377 #define IL_PNG_ALPHA_INDEX 0x0724 //XIX : ILint : the color in the palette at this index value (0-255) is considered transparent, -1 for no trasparent color
00378 #define IL_JPG_PROGRESSIVE         0x0725
00379 #define IL_VTF_COMP                0x0726
00380 
00381 
00382 
00383 #define IL_DXTC_FORMAT      0x0705
00384 #define IL_DXT1             0x0706
00385 #define IL_DXT2             0x0707
00386 #define IL_DXT3             0x0708
00387 #define IL_DXT4             0x0709
00388 #define IL_DXT5             0x070A
00389 #define IL_DXT_NO_COMP      0x070B
00390 #define IL_KEEP_DXTC_DATA   0x070C
00391 #define IL_DXTC_DATA_FORMAT 0x070D
00392 #define IL_3DC              0x070E
00393 #define IL_RXGB             0x070F
00394 #define IL_ATI1N            0x0710
00395 #define IL_DXT1A            0x0711  // Normally the same as IL_DXT1, except for nVidia Texture Tools.
00396 
00397 
00398 #define IL_CUBEMAP_POSITIVEX 0x00000400
00399 #define IL_CUBEMAP_NEGATIVEX 0x00000800
00400 #define IL_CUBEMAP_POSITIVEY 0x00001000
00401 #define IL_CUBEMAP_NEGATIVEY 0x00002000
00402 #define IL_CUBEMAP_POSITIVEZ 0x00004000
00403 #define IL_CUBEMAP_NEGATIVEZ 0x00008000
00404 #define IL_SPHEREMAP         0x00010000
00405 
00406 
00407 
00408 #define IL_VERSION_NUM           0x0DE2
00409 #define IL_IMAGE_WIDTH           0x0DE4
00410 #define IL_IMAGE_HEIGHT          0x0DE5
00411 #define IL_IMAGE_DEPTH           0x0DE6
00412 #define IL_IMAGE_SIZE_OF_DATA    0x0DE7
00413 #define IL_IMAGE_BPP             0x0DE8
00414 #define IL_IMAGE_BYTES_PER_PIXEL 0x0DE8
00415 #define IL_IMAGE_BPP             0x0DE8
00416 #define IL_IMAGE_BITS_PER_PIXEL  0x0DE9
00417 #define IL_IMAGE_FORMAT          0x0DEA
00418 #define IL_IMAGE_TYPE            0x0DEB
00419 #define IL_PALETTE_TYPE          0x0DEC
00420 #define IL_PALETTE_SIZE          0x0DED
00421 #define IL_PALETTE_BPP           0x0DEE
00422 #define IL_PALETTE_NUM_COLS      0x0DEF
00423 #define IL_PALETTE_BASE_TYPE     0x0DF0
00424 #define IL_NUM_FACES             0x0DE1
00425 #define IL_NUM_IMAGES            0x0DF1
00426 #define IL_NUM_MIPMAPS           0x0DF2
00427 #define IL_NUM_LAYERS            0x0DF3
00428 #define IL_ACTIVE_IMAGE          0x0DF4
00429 #define IL_ACTIVE_MIPMAP         0x0DF5
00430 #define IL_ACTIVE_LAYER          0x0DF6
00431 #define IL_ACTIVE_FACE           0x0E00
00432 #define IL_CUR_IMAGE             0x0DF7
00433 #define IL_IMAGE_DURATION        0x0DF8
00434 #define IL_IMAGE_PLANESIZE       0x0DF9
00435 #define IL_IMAGE_BPC             0x0DFA
00436 #define IL_IMAGE_OFFX            0x0DFB
00437 #define IL_IMAGE_OFFY            0x0DFC
00438 #define IL_IMAGE_CUBEFLAGS       0x0DFD
00439 #define IL_IMAGE_ORIGIN          0x0DFE
00440 #define IL_IMAGE_CHANNELS        0x0DFF
00441 
00442 # if defined __GNUC__ && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0))
00443 
00444 #  define DEPRECATED(D) D __attribute__((deprecated))
00445 # elif defined _MSC_VER && _MSC_VER >= 1300
00446 
00447 #  define DEPRECATED(D) __declspec(deprecated) D
00448 # else
00449 #  define DEPRECATED (D) D
00450 # endif
00451 
00452 
00453 
00454 
00455 
00456 
00457 #if (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED) || defined(__BORLANDC__) || defined(__LCC__)
00458         #define ILAPIENTRY __stdcall 
00459         #define IL_PACKSTRUCT
00460 
00461 #elif defined( __GNUC__ )
00462   
00463   
00464         #ifdef __MINGW32__
00465                 #define ILAPIENTRY __stdcall
00466         #else
00467                 #define ILAPIENTRY
00468         #endif
00469         #define IL_PACKSTRUCT __attribute__ ((packed))
00470 #else
00471         #define ILAPIENTRY
00472         #define IL_PACKSTRUCT
00473 #endif
00474 
00475 
00476 #if defined(__LCC__)
00477         #define ILAPI __stdcall
00478 #elif defined(_WIN32) //changed 20031221 to fix bug 840421
00479         #ifdef IL_STATIC_LIB
00480                 #define ILAPI
00481         #else
00482                 #ifdef _IL_BUILD_LIBRARY
00483                         #define ILAPI __declspec(dllexport)
00484                 #else
00485                         #define ILAPI __declspec(dllimport)
00486                 #endif
00487         #endif
00488 #elif __APPLE__
00489         #define ILAPI extern
00490 #else
00491         #define ILAPI
00492 #endif
00493 
00494 
00495 #define IL_SEEK_SET     0
00496 #define IL_SEEK_CUR     1
00497 #define IL_SEEK_END     2
00498 #define IL_EOF          -1
00499 
00500 
00501 
00502 typedef void* ILHANDLE;
00503 typedef void      (ILAPIENTRY *fCloseRProc)(ILHANDLE);
00504 typedef ILboolean (ILAPIENTRY *fEofProc)   (ILHANDLE);
00505 typedef ILint     (ILAPIENTRY *fGetcProc)  (ILHANDLE);
00506 typedef ILHANDLE  (ILAPIENTRY *fOpenRProc) (ILconst_string);
00507 typedef ILint     (ILAPIENTRY *fReadProc)  (void*, ILuint, ILuint, ILHANDLE);
00508 typedef ILint     (ILAPIENTRY *fSeekRProc) (ILHANDLE, ILint, ILint);
00509 typedef ILint     (ILAPIENTRY *fTellRProc) (ILHANDLE);
00510 
00511 
00512 typedef void     (ILAPIENTRY *fCloseWProc)(ILHANDLE);
00513 typedef ILHANDLE (ILAPIENTRY *fOpenWProc) (ILconst_string);
00514 typedef ILint    (ILAPIENTRY *fPutcProc)  (ILubyte, ILHANDLE);
00515 typedef ILint    (ILAPIENTRY *fSeekWProc) (ILHANDLE, ILint, ILint);
00516 typedef ILint    (ILAPIENTRY *fTellWProc) (ILHANDLE);
00517 typedef ILint    (ILAPIENTRY *fWriteProc) (const void*, ILuint, ILuint, ILHANDLE);
00518 
00519 
00520 typedef void* (ILAPIENTRY *mAlloc)(const ILsizei);
00521 typedef void  (ILAPIENTRY *mFree) (const void* CONST_RESTRICT);
00522 
00523 
00524 typedef ILenum (ILAPIENTRY *IL_LOADPROC)(ILconst_string);
00525 typedef ILenum (ILAPIENTRY *IL_SAVEPROC)(ILconst_string);
00526 
00527 
00528 
00529 ILAPI ILboolean ILAPIENTRY ilActiveFace(ILuint Number);
00530 ILAPI ILboolean ILAPIENTRY ilActiveImage(ILuint Number);
00531 ILAPI ILboolean ILAPIENTRY ilActiveLayer(ILuint Number);
00532 ILAPI ILboolean ILAPIENTRY ilActiveMipmap(ILuint Number);
00533 ILAPI ILboolean ILAPIENTRY ilApplyPal(ILconst_string FileName);
00534 ILAPI ILboolean ILAPIENTRY ilApplyProfile(ILstring InProfile, ILstring OutProfile);
00535 ILAPI void              ILAPIENTRY ilBindImage(ILuint Image);
00536 ILAPI ILboolean ILAPIENTRY ilBlit(ILuint Source, ILint DestX, ILint DestY, ILint DestZ, ILuint SrcX, ILuint SrcY, ILuint SrcZ, ILuint Width, ILuint Height, ILuint Depth);
00537 ILAPI ILboolean ILAPIENTRY ilClampNTSC(void);
00538 ILAPI void              ILAPIENTRY ilClearColour(ILclampf Red, ILclampf Green, ILclampf Blue, ILclampf Alpha);
00539 ILAPI ILboolean ILAPIENTRY ilClearImage(void);
00540 ILAPI ILuint    ILAPIENTRY ilCloneCurImage(void);
00541 ILAPI ILubyte*  ILAPIENTRY ilCompressDXT(ILubyte *Data, ILuint Width, ILuint Height, ILuint Depth, ILenum DXTCFormat, ILuint *DXTCSize);
00542 ILAPI ILboolean ILAPIENTRY ilCompressFunc(ILenum Mode);
00543 ILAPI ILboolean ILAPIENTRY ilConvertImage(ILenum DestFormat, ILenum DestType);
00544 ILAPI ILboolean ILAPIENTRY ilConvertPal(ILenum DestFormat);
00545 ILAPI ILboolean ILAPIENTRY ilCopyImage(ILuint Src);
00546 ILAPI ILuint    ILAPIENTRY ilCopyPixels(ILuint XOff, ILuint YOff, ILuint ZOff, ILuint Width, ILuint Height, ILuint Depth, ILenum Format, ILenum Type, void *Data);
00547 ILAPI ILuint    ILAPIENTRY ilCreateSubImage(ILenum Type, ILuint Num);
00548 ILAPI ILboolean ILAPIENTRY ilDefaultImage(void);
00549 ILAPI void              ILAPIENTRY ilDeleteImage(const ILuint Num);
00550 ILAPI void      ILAPIENTRY ilDeleteImages(ILsizei Num, const ILuint *Images);
00551 ILAPI ILenum    ILAPIENTRY ilDetermineType(ILconst_string FileName);
00552 ILAPI ILenum    ILAPIENTRY ilDetermineTypeF(ILHANDLE File);
00553 ILAPI ILenum    ILAPIENTRY ilDetermineTypeL(const void *Lump, ILuint Size);
00554 ILAPI ILboolean ILAPIENTRY ilDisable(ILenum Mode);
00555 ILAPI ILboolean ILAPIENTRY ilDxtcDataToImage(void);
00556 ILAPI ILboolean ILAPIENTRY ilDxtcDataToSurface(void);
00557 ILAPI ILboolean ILAPIENTRY ilEnable(ILenum Mode);
00558 ILAPI void              ILAPIENTRY ilFlipSurfaceDxtcData(void);
00559 ILAPI ILboolean ILAPIENTRY ilFormatFunc(ILenum Mode);
00560 ILAPI void          ILAPIENTRY ilGenImages(ILsizei Num, ILuint *Images);
00561 ILAPI ILuint    ILAPIENTRY ilGenImage(void);
00562 ILAPI ILubyte*  ILAPIENTRY ilGetAlpha(ILenum Type);
00563 ILAPI ILboolean ILAPIENTRY ilGetBoolean(ILenum Mode);
00564 ILAPI void      ILAPIENTRY ilGetBooleanv(ILenum Mode, ILboolean *Param);
00565 ILAPI ILubyte*  ILAPIENTRY ilGetData(void);
00566 ILAPI ILuint    ILAPIENTRY ilGetDXTCData(void *Buffer, ILuint BufferSize, ILenum DXTCFormat);
00567 ILAPI ILenum    ILAPIENTRY ilGetError(void);
00568 ILAPI ILint     ILAPIENTRY ilGetInteger(ILenum Mode);
00569 ILAPI void      ILAPIENTRY ilGetIntegerv(ILenum Mode, ILint *Param);
00570 ILAPI ILuint    ILAPIENTRY ilGetLumpPos(void);
00571 ILAPI ILubyte*  ILAPIENTRY ilGetPalette(void);
00572 ILAPI ILconst_string  ILAPIENTRY ilGetString(ILenum StringName);
00573 ILAPI void      ILAPIENTRY ilHint(ILenum Target, ILenum Mode);
00574 ILAPI ILboolean ILAPIENTRY ilInvertSurfaceDxtcDataAlpha(void);
00575 ILAPI void      ILAPIENTRY ilInit(void);
00576 ILAPI ILboolean ILAPIENTRY ilImageToDxtcData(ILenum Format);
00577 ILAPI ILboolean ILAPIENTRY ilIsDisabled(ILenum Mode);
00578 ILAPI ILboolean ILAPIENTRY ilIsEnabled(ILenum Mode);
00579 ILAPI ILboolean ILAPIENTRY ilIsImage(ILuint Image);
00580 ILAPI ILboolean ILAPIENTRY ilIsValid(ILenum Type, ILconst_string FileName);
00581 ILAPI ILboolean ILAPIENTRY ilIsValidF(ILenum Type, ILHANDLE File);
00582 ILAPI ILboolean ILAPIENTRY ilIsValidL(ILenum Type, void *Lump, ILuint Size);
00583 ILAPI void      ILAPIENTRY ilKeyColour(ILclampf Red, ILclampf Green, ILclampf Blue, ILclampf Alpha);
00584 ILAPI ILboolean ILAPIENTRY ilLoad(ILenum Type, ILconst_string FileName);
00585 ILAPI ILboolean ILAPIENTRY ilLoadF(ILenum Type, ILHANDLE File);
00586 ILAPI ILboolean ILAPIENTRY ilLoadImage(ILconst_string FileName);
00587 ILAPI ILboolean ILAPIENTRY ilLoadL(ILenum Type, const void *Lump, ILuint Size);
00588 ILAPI ILboolean ILAPIENTRY ilLoadPal(ILconst_string FileName);
00589 ILAPI void      ILAPIENTRY ilModAlpha(ILdouble AlphaValue);
00590 ILAPI ILboolean ILAPIENTRY ilOriginFunc(ILenum Mode);
00591 ILAPI ILboolean ILAPIENTRY ilOverlayImage(ILuint Source, ILint XCoord, ILint YCoord, ILint ZCoord);
00592 ILAPI void      ILAPIENTRY ilPopAttrib(void);
00593 ILAPI void      ILAPIENTRY ilPushAttrib(ILuint Bits);
00594 ILAPI void      ILAPIENTRY ilRegisterFormat(ILenum Format);
00595 ILAPI ILboolean ILAPIENTRY ilRegisterLoad(ILconst_string Ext, IL_LOADPROC Load);
00596 ILAPI ILboolean ILAPIENTRY ilRegisterMipNum(ILuint Num);
00597 ILAPI ILboolean ILAPIENTRY ilRegisterNumFaces(ILuint Num);
00598 ILAPI ILboolean ILAPIENTRY ilRegisterNumImages(ILuint Num);
00599 ILAPI void      ILAPIENTRY ilRegisterOrigin(ILenum Origin);
00600 ILAPI void      ILAPIENTRY ilRegisterPal(void *Pal, ILuint Size, ILenum Type);
00601 ILAPI ILboolean ILAPIENTRY ilRegisterSave(ILconst_string Ext, IL_SAVEPROC Save);
00602 ILAPI void      ILAPIENTRY ilRegisterType(ILenum Type);
00603 ILAPI ILboolean ILAPIENTRY ilRemoveLoad(ILconst_string Ext);
00604 ILAPI ILboolean ILAPIENTRY ilRemoveSave(ILconst_string Ext);
00605 ILAPI void      ILAPIENTRY ilResetMemory(void); 
00606 ILAPI void      ILAPIENTRY ilResetRead(void);
00607 ILAPI void      ILAPIENTRY ilResetWrite(void);
00608 ILAPI ILboolean ILAPIENTRY ilSave(ILenum Type, ILconst_string FileName);
00609 ILAPI ILuint    ILAPIENTRY ilSaveF(ILenum Type, ILHANDLE File);
00610 ILAPI ILboolean ILAPIENTRY ilSaveImage(ILconst_string FileName);
00611 ILAPI ILuint    ILAPIENTRY ilSaveL(ILenum Type, void *Lump, ILuint Size);
00612 ILAPI ILboolean ILAPIENTRY ilSavePal(ILconst_string FileName);
00613 ILAPI ILboolean ILAPIENTRY ilSetAlpha(ILdouble AlphaValue);
00614 ILAPI ILboolean ILAPIENTRY ilSetData(void *Data);
00615 ILAPI ILboolean ILAPIENTRY ilSetDuration(ILuint Duration);
00616 ILAPI void      ILAPIENTRY ilSetInteger(ILenum Mode, ILint Param);
00617 ILAPI void      ILAPIENTRY ilSetMemory(mAlloc, mFree);
00618 ILAPI void      ILAPIENTRY ilSetPixels(ILint XOff, ILint YOff, ILint ZOff, ILuint Width, ILuint Height, ILuint Depth, ILenum Format, ILenum Type, void *Data);
00619 ILAPI void      ILAPIENTRY ilSetRead(fOpenRProc, fCloseRProc, fEofProc, fGetcProc, fReadProc, fSeekRProc, fTellRProc);
00620 ILAPI void      ILAPIENTRY ilSetString(ILenum Mode, const char *String);
00621 ILAPI void      ILAPIENTRY ilSetWrite(fOpenWProc, fCloseWProc, fPutcProc, fSeekWProc, fTellWProc, fWriteProc);
00622 ILAPI void      ILAPIENTRY ilShutDown(void);
00623 ILAPI ILboolean ILAPIENTRY ilSurfaceToDxtcData(ILenum Format);
00624 ILAPI ILboolean ILAPIENTRY ilTexImage(ILuint Width, ILuint Height, ILuint Depth, ILubyte NumChannels, ILenum Format, ILenum Type, void *Data);
00625 ILAPI ILboolean ILAPIENTRY ilTexImageDxtc(ILint w, ILint h, ILint d, ILenum DxtFormat, const ILubyte* data);
00626 ILAPI ILenum    ILAPIENTRY ilTypeFromExt(ILconst_string FileName);
00627 ILAPI ILboolean ILAPIENTRY ilTypeFunc(ILenum Mode);
00628 ILAPI ILboolean ILAPIENTRY ilLoadData(ILconst_string FileName, ILuint Width, ILuint Height, ILuint Depth, ILubyte Bpp);
00629 ILAPI ILboolean ILAPIENTRY ilLoadDataF(ILHANDLE File, ILuint Width, ILuint Height, ILuint Depth, ILubyte Bpp);
00630 ILAPI ILboolean ILAPIENTRY ilLoadDataL(void *Lump, ILuint Size, ILuint Width, ILuint Height, ILuint Depth, ILubyte Bpp);
00631 ILAPI ILboolean ILAPIENTRY ilSaveData(ILconst_string FileName);
00632 
00633 
00634 #define ilClearColor    ilClearColour
00635 #define ilKeyColor      ilKeyColour
00636 
00637 #define imemclear(x,y) memset(x,0,y);
00638 
00639 #ifdef __cplusplus
00640 }
00641 #endif
00642 
00643 #endif // __IL_H__
00644 #endif // __il_h__