1
//-----------------------------------------------------------------------------
4
// Copyright (C) 2000-2002 by Denton Woods
5
// Last modified: 06/23/2002 <--Y2K Compliant! =]
9
// Description: The main include file for DevIL
11
//-----------------------------------------------------------------------------
56
//#define IL_STATIC_LIB
59
//This is now in config.h
61
// #ifndef IL_USE_JPEGLIB_UNMODIFIED
62
// #define IL_USE_JPEGLIB_UNMODIFIED
95
#if defined(_MSC_VER) || defined(__BORLANDC__)
97
#ifndef _IL_BUILD_LIBRARY
98
pragma comment(lib, "Devil_DLL.lib")
101
#ifndef _IL_BUILD_LIBRARY
103
pragma comment(lib, "Devil_DBG.lib")
105
pragma comment(lib, "Devil.lib")
114
typedef unsigned int ILenum;
115
typedef unsigned char ILboolean;
116
typedef unsigned int ILbitfield;
118
typedef short ILshort;
121
typedef unsigned char ILubyte;
122
typedef unsigned short ILushort;
123
typedef unsigned int ILuint;
124
typedef float ILfloat;
125
typedef float ILclampf;
126
typedef double ILdouble;
127
typedef double ILclampd;
134
typedef wchar_t* ILstring;
136
typedef char* ILstring;
144
// Matches OpenGL's right now.
145
#define IL_COLOUR_INDEX 0x1900
146
#define IL_COLOR_INDEX 0x1900
147
#define IL_RGB 0x1907
148
#define IL_RGBA 0x1908
149
#define IL_BGR 0x80E0
150
#define IL_BGRA 0x80E1
151
#define IL_LUMINANCE 0x1909
152
#define IL_LUMINANCE_ALPHA 0x190A
155
#define IL_BYTE 0x1400
156
#define IL_UNSIGNED_BYTE 0x1401
157
#define IL_SHORT 0x1402
158
#define IL_UNSIGNED_SHORT 0x1403
159
#define IL_INT 0x1404
160
#define IL_UNSIGNED_INT 0x1405
161
#define IL_FLOAT 0x1406
162
#define IL_DOUBLE 0x140A
165
#define IL_VENDOR 0x1F00
166
#define IL_LOAD_EXT 0x1F01
167
#define IL_SAVE_EXT 0x1F02
171
// IL-specific #define's
174
#define IL_VERSION_1_6_7 1
175
#define IL_VERSION 167
179
#define IL_ORIGIN_BIT 0x00000001
180
#define IL_FILE_BIT 0x00000002
181
#define IL_PAL_BIT 0x00000004
182
#define IL_FORMAT_BIT 0x00000008
183
#define IL_TYPE_BIT 0x00000010
184
#define IL_COMPRESS_BIT 0x00000020
185
#define IL_LOADFAIL_BIT 0x00000040
186
#define IL_FORMAT_SPECIFIC_BIT 0x00000080
187
#define IL_ALL_ATTRIB_BITS 0x000FFFFF
191
#define IL_PAL_NONE 0x0400
192
#define IL_PAL_RGB24 0x0401
193
#define IL_PAL_RGB32 0x0402
194
#define IL_PAL_RGBA32 0x0403
195
#define IL_PAL_BGR24 0x0404
196
#define IL_PAL_BGR32 0x0405
197
#define IL_PAL_BGRA32 0x0406
201
#define IL_TYPE_UNKNOWN 0x0000
202
#define IL_BMP 0x0420
203
#define IL_CUT 0x0421
204
#define IL_DOOM 0x0422
205
#define IL_DOOM_FLAT 0x0423
206
#define IL_ICO 0x0424
207
#define IL_JPG 0x0425
208
#define IL_JFIF 0x0425
209
#define IL_LBM 0x0426
210
#define IL_PCD 0x0427
211
#define IL_PCX 0x0428
212
#define IL_PIC 0x0429
213
#define IL_PNG 0x042A
214
#define IL_PNM 0x042B
215
#define IL_SGI 0x042C
216
#define IL_TGA 0x042D
217
#define IL_TIF 0x042E
218
#define IL_CHEAD 0x042F
219
#define IL_RAW 0x0430
220
#define IL_MDL 0x0431
221
#define IL_WAL 0x0432
222
#define IL_LIF 0x0434
223
#define IL_MNG 0x0435
224
#define IL_JNG 0x0435
225
#define IL_GIF 0x0436
226
#define IL_DDS 0x0437
227
#define IL_DCX 0x0438
228
#define IL_PSD 0x0439
229
#define IL_EXIF 0x043A
230
#define IL_PSP 0x043B
231
#define IL_PIX 0x043C
232
#define IL_PXR 0x043D
233
#define IL_XPM 0x043E
234
#define IL_HDR 0x043F
236
#define IL_JASC_PAL 0x0475
240
#define IL_NO_ERROR 0x0000
241
#define IL_INVALID_ENUM 0x0501
242
#define IL_OUT_OF_MEMORY 0x0502
243
#define IL_FORMAT_NOT_SUPPORTED 0x0503
244
#define IL_INTERNAL_ERROR 0x0504
245
#define IL_INVALID_VALUE 0x0505
246
#define IL_ILLEGAL_OPERATION 0x0506
247
#define IL_ILLEGAL_FILE_VALUE 0x0507
248
#define IL_INVALID_FILE_HEADER 0x0508
249
#define IL_INVALID_PARAM 0x0509
250
#define IL_COULD_NOT_OPEN_FILE 0x050A
251
#define IL_INVALID_EXTENSION 0x050B
252
#define IL_FILE_ALREADY_EXISTS 0x050C
253
#define IL_OUT_FORMAT_SAME 0x050D
254
#define IL_STACK_OVERFLOW 0x050E
255
#define IL_STACK_UNDERFLOW 0x050F
256
#define IL_INVALID_CONVERSION 0x0510
257
#define IL_BAD_DIMENSIONS 0x0511
258
#define IL_FILE_READ_ERROR 0x0512 // 05/12/2002: Addition by Sam.
259
#define IL_FILE_WRITE_ERROR 0x0512
261
#define IL_LIB_GIF_ERROR 0x05E1
262
#define IL_LIB_JPEG_ERROR 0x05E2
263
#define IL_LIB_PNG_ERROR 0x05E3
264
#define IL_LIB_TIFF_ERROR 0x05E4
265
#define IL_LIB_MNG_ERROR 0x05E5
266
#define IL_UNKNOWN_ERROR 0x05FF
269
// Origin Definitions
270
#define IL_ORIGIN_SET 0x0600
271
#define IL_ORIGIN_LOWER_LEFT 0x0601
272
#define IL_ORIGIN_UPPER_LEFT 0x0602
273
#define IL_ORIGIN_MODE 0x0603
276
// Format and Type Mode Definitions
277
#define IL_FORMAT_SET 0x0610
278
#define IL_FORMAT_MODE 0x0611
279
#define IL_TYPE_SET 0x0612
280
#define IL_TYPE_MODE 0x0613
284
#define IL_FILE_OVERWRITE 0x0620
285
#define IL_FILE_MODE 0x0621
288
// Palette definitions
289
#define IL_CONV_PAL 0x0630
292
// Load fail definitions
293
#define IL_DEFAULT_ON_FAIL 0x0632
296
// Key colour definitions
297
#define IL_USE_KEY_COLOUR 0x0635
298
#define IL_USE_KEY_COLOR 0x0635
301
// Interlace definitions
302
#define IL_SAVE_INTERLACED 0x0639
303
#define IL_INTERLACE_MODE 0x063A
306
// Quantization definitions
307
#define IL_QUANTIZATION_MODE 0x0640
308
#define IL_WU_QUANT 0x0641
309
#define IL_NEU_QUANT 0x0642
310
#define IL_NEU_QUANT_SAMPLE 0x0643
311
#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
315
#define IL_FASTEST 0x0660
316
#define IL_LESS_MEM 0x0661
317
#define IL_DONT_CARE 0x0662
318
#define IL_MEM_SPEED_HINT 0x0665
319
#define IL_USE_COMPRESSION 0x0666
320
#define IL_NO_COMPRESSION 0x0667
321
#define IL_COMPRESSION_HINT 0x0668
325
#define IL_SUB_NEXT 0x0680
326
#define IL_SUB_MIPMAP 0x0681
327
#define IL_SUB_LAYER 0x0682
330
// Compression definitions
331
#define IL_COMPRESS_MODE 0x0700
332
#define IL_COMPRESS_NONE 0x0701
333
#define IL_COMPRESS_RLE 0x0702
334
#define IL_COMPRESS_LZO 0x0703
335
#define IL_COMPRESS_ZLIB 0x0704
338
// File format-specific values
339
#define IL_TGA_CREATE_STAMP 0x0710
340
#define IL_JPG_QUALITY 0x0711
341
#define IL_PNG_INTERLACE 0x0712
342
#define IL_TGA_RLE 0x0713
343
#define IL_BMP_RLE 0x0714
344
#define IL_SGI_RLE 0x0715
345
#define IL_TGA_ID_STRING 0x0717
346
#define IL_TGA_AUTHNAME_STRING 0x0718
347
#define IL_TGA_AUTHCOMMENT_STRING 0x0719
348
#define IL_PNG_AUTHNAME_STRING 0x071A
349
#define IL_PNG_TITLE_STRING 0x071B
350
#define IL_PNG_DESCRIPTION_STRING 0x071C
351
#define IL_TIF_DESCRIPTION_STRING 0x071D
352
#define IL_TIF_HOSTCOMPUTER_STRING 0x071E
353
#define IL_TIF_DOCUMENTNAME_STRING 0x071F
354
#define IL_TIF_AUTHNAME_STRING 0x0720
355
#define IL_JPG_SAVE_FORMAT 0x0721
356
#define IL_CHEAD_HEADER_STRING 0x0722
357
#define IL_PCD_PICNUM 0x0723
359
#define IL_PNG_ALPHA_INDEX 0x0724 //XIX : ILint : the color in the pallete at this index value (0-255) is considered transparent, -1 for no trasparent color
362
#define IL_DXTC_FORMAT 0x0705
363
#define IL_DXT1 0x0706
364
#define IL_DXT2 0x0707
365
#define IL_DXT3 0x0708
366
#define IL_DXT4 0x0709
367
#define IL_DXT5 0x070A
368
#define IL_DXT_NO_COMP 0x070B
369
#define IL_KEEP_DXTC_DATA 0x070C
370
#define IL_DXTC_DATA_FORMAT 0x070D
371
#define IL_3DC 0x070E
374
// Cube map definitions
375
#define IL_CUBEMAP_POSITIVEX 0x00000400
376
#define IL_CUBEMAP_NEGATIVEX 0x00000800
377
#define IL_CUBEMAP_POSITIVEY 0x00001000
378
#define IL_CUBEMAP_NEGATIVEY 0x00002000
379
#define IL_CUBEMAP_POSITIVEZ 0x00004000
380
#define IL_CUBEMAP_NEGATIVEZ 0x00008000
384
#define IL_VERSION_NUM 0x0DE2
385
#define IL_IMAGE_WIDTH 0x0DE4
386
#define IL_IMAGE_HEIGHT 0x0DE5
387
#define IL_IMAGE_DEPTH 0x0DE6
388
#define IL_IMAGE_SIZE_OF_DATA 0x0DE7
389
#define IL_IMAGE_BPP 0x0DE8
390
#define IL_IMAGE_BYTES_PER_PIXEL 0x0DE8
391
#define IL_IMAGE_BPP 0x0DE8
392
#define IL_IMAGE_BITS_PER_PIXEL 0x0DE9
393
#define IL_IMAGE_FORMAT 0x0DEA
394
#define IL_IMAGE_TYPE 0x0DEB
395
#define IL_PALETTE_TYPE 0x0DEC
396
#define IL_PALETTE_SIZE 0x0DED
397
#define IL_PALETTE_BPP 0x0DEE
398
#define IL_PALETTE_NUM_COLS 0x0DEF
399
#define IL_PALETTE_BASE_TYPE 0x0DF0
400
#define IL_NUM_IMAGES 0x0DF1
401
#define IL_NUM_MIPMAPS 0x0DF2
402
#define IL_NUM_LAYERS 0x0DF3
403
#define IL_ACTIVE_IMAGE 0x0DF4
404
#define IL_ACTIVE_MIPMAP 0x0DF5
405
#define IL_ACTIVE_LAYER 0x0DF6
406
#define IL_CUR_IMAGE 0x0DF7
407
#define IL_IMAGE_DURATION 0x0DF8
408
#define IL_IMAGE_PLANESIZE 0x0DF9
409
#define IL_IMAGE_BPC 0x0DFA
410
#define IL_IMAGE_OFFX 0x0DFB
411
#define IL_IMAGE_OFFY 0x0DFC
412
#define IL_IMAGE_CUBEFLAGS 0x0DFD
413
#define IL_IMAGE_ORIGIN 0x0DFE
414
#define IL_IMAGE_CHANNELS 0x0DFF
417
// Section shamelessly modified from the glut header.
420
// This is from Win32's <windef.h>
421
#if (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED) || defined(__BORLANDC__) || defined(__LCC__)
422
#define ILAPIENTRY __stdcall
423
#define IL_PACKSTRUCT
424
//#elif defined(linux) || defined(MACOSX) || defined(__CYGWIN__) //fix bug 840364
425
#elif defined( __GNUC__ )
426
// this should work for any of the above commented platforms
427
// plus any platform using GCC
429
#define IL_PACKSTRUCT __attribute__ ((packed))
432
#define IL_PACKSTRUCT
435
// This is from Win32's <wingdi.h> and <winnt.h>
437
#define ILAPI __stdcall
438
#elif defined(_WIN32) //changed 20031221 to fix bug 840421
442
#ifdef _IL_BUILD_LIBRARY
443
#define ILAPI __declspec(dllexport)
445
#define ILAPI __declspec(dllimport)
455
#define IL_SEEK_SET 0
456
#define IL_SEEK_CUR 1
457
#define IL_SEEK_END 2
461
// Callback functions for file reading
462
typedef void* ILHANDLE;
463
typedef ILvoid (ILAPIENTRY *fCloseRProc)(ILHANDLE);
464
typedef ILboolean (ILAPIENTRY *fEofProc) (ILHANDLE);
465
typedef ILint (ILAPIENTRY *fGetcProc) (ILHANDLE);
466
typedef ILHANDLE (ILAPIENTRY *fOpenRProc) (const ILstring);
467
typedef ILint (ILAPIENTRY *fReadProc) (void*, ILuint, ILuint, ILHANDLE);
468
typedef ILint (ILAPIENTRY *fSeekRProc) (ILHANDLE, ILint, ILint);
469
typedef ILint (ILAPIENTRY *fTellRProc) (ILHANDLE);
471
// Callback functions for file writing
472
typedef ILvoid (ILAPIENTRY *fCloseWProc)(ILHANDLE);
473
typedef ILHANDLE (ILAPIENTRY *fOpenWProc) (const ILstring);
474
typedef ILint (ILAPIENTRY *fPutcProc) (ILubyte, ILHANDLE);
475
typedef ILint (ILAPIENTRY *fSeekWProc) (ILHANDLE, ILint, ILint);
476
typedef ILint (ILAPIENTRY *fTellWProc) (ILHANDLE);
477
typedef ILint (ILAPIENTRY *fWriteProc) (const void*, ILuint, ILuint, ILHANDLE);
479
// Callback functions for allocation and deallocation
480
typedef ILvoid* (ILAPIENTRY *mAlloc)(ILuint);
481
typedef ILvoid (ILAPIENTRY *mFree) (ILvoid*);
483
// Registered format procedures
484
typedef ILenum (ILAPIENTRY *IL_LOADPROC)(const ILstring);
485
typedef ILenum (ILAPIENTRY *IL_SAVEPROC)(const ILstring);
488
// ImageLib Functions
489
ILAPI ILboolean ILAPIENTRY ilActiveImage(ILuint Number);
490
ILAPI ILboolean ILAPIENTRY ilActiveLayer(ILuint Number);
491
ILAPI ILboolean ILAPIENTRY ilActiveMipmap(ILuint Number);
492
ILAPI ILboolean ILAPIENTRY ilApplyPal(const ILstring FileName);
493
ILAPI ILboolean ILAPIENTRY ilApplyProfile(const ILstring InProfile, const ILstring OutProfile);
494
ILAPI ILvoid ILAPIENTRY ilBindImage(ILuint Image);
495
ILAPI ILboolean ILAPIENTRY ilBlit(ILuint Source, ILint DestX, ILint DestY, ILint DestZ, ILuint SrcX, ILuint SrcY, ILuint SrcZ, ILuint Width, ILuint Height, ILuint Depth);
496
ILAPI ILvoid ILAPIENTRY ilClearColour(ILclampf Red, ILclampf Green, ILclampf Blue, ILclampf Alpha);
497
ILAPI ILboolean ILAPIENTRY ilClearImage(ILvoid);
498
ILAPI ILuint ILAPIENTRY ilCloneCurImage(ILvoid);
499
ILAPI ILboolean ILAPIENTRY ilCompressFunc(ILenum Mode);
500
ILAPI ILboolean ILAPIENTRY ilConvertImage(ILenum DestFormat, ILenum DestType);
501
ILAPI ILboolean ILAPIENTRY ilConvertPal(ILenum DestFormat);
502
ILAPI ILboolean ILAPIENTRY ilCopyImage(ILuint Src);
503
ILAPI ILuint ILAPIENTRY ilCopyPixels(ILuint XOff, ILuint YOff, ILuint ZOff, ILuint Width, ILuint Height, ILuint Depth, ILenum Format, ILenum Type, ILvoid *Data);
504
ILAPI ILuint ILAPIENTRY ilCreateSubImage(ILenum Type, ILuint Num);
505
ILAPI ILboolean ILAPIENTRY ilDefaultImage(ILvoid);
506
ILAPI ILvoid ILAPIENTRY ilDeleteImages(ILsizei Num, const ILuint *Images);
507
ILAPI ILboolean ILAPIENTRY ilDisable(ILenum Mode);
508
ILAPI ILboolean ILAPIENTRY ilEnable(ILenum Mode);
509
ILAPI ILboolean ILAPIENTRY ilFormatFunc(ILenum Mode);
510
ILAPI ILvoid ILAPIENTRY ilGenImages(ILsizei Num, ILuint *Images);
511
ILAPI ILubyte* ILAPIENTRY ilGetAlpha(ILenum Type);
512
ILAPI ILvoid ILAPIENTRY ilModAlpha( ILdouble AlphaValue );
513
ILAPI ILvoid ILAPIENTRY ilSetAlpha( ILdouble AlphaValue );
514
ILAPI ILboolean ILAPIENTRY ilGetBoolean(ILenum Mode);
515
ILAPI ILvoid ILAPIENTRY ilGetBooleanv(ILenum Mode, ILboolean *Param);
516
ILAPI ILubyte* ILAPIENTRY ilGetData(ILvoid);
517
ILAPI ILuint ILAPIENTRY ilGetDXTCData(ILvoid *Buffer, ILuint BufferSize, ILenum DXTCFormat);
518
ILAPI ILenum ILAPIENTRY ilGetError(ILvoid);
519
ILAPI ILint ILAPIENTRY ilGetInteger(ILenum Mode);
520
ILAPI ILvoid ILAPIENTRY ilGetIntegerv(ILenum Mode, ILint *Param);
521
ILAPI ILuint ILAPIENTRY ilGetLumpPos(ILvoid);
522
ILAPI ILubyte* ILAPIENTRY ilGetPalette(ILvoid);
523
ILAPI const ILstring ILAPIENTRY ilGetString(ILenum StringName);
524
ILAPI ILvoid ILAPIENTRY ilHint(ILenum Target, ILenum Mode);
525
ILAPI ILvoid ILAPIENTRY ilInit(ILvoid);
526
ILAPI ILboolean ILAPIENTRY ilIsDisabled(ILenum Mode);
527
ILAPI ILboolean ILAPIENTRY ilIsEnabled(ILenum Mode);
528
ILAPI ILboolean ILAPIENTRY ilIsImage(ILuint Image);
529
ILAPI ILboolean ILAPIENTRY ilIsValid(ILenum Type, const ILstring FileName);
530
ILAPI ILboolean ILAPIENTRY ilIsValidF(ILenum Type, ILHANDLE File);
531
ILAPI ILboolean ILAPIENTRY ilIsValidL(ILenum Type, ILvoid *Lump, ILuint Size);
532
ILAPI ILvoid ILAPIENTRY ilKeyColour(ILclampf Red, ILclampf Green, ILclampf Blue, ILclampf Alpha);
533
ILAPI ILboolean ILAPIENTRY ilLoad(ILenum Type, const ILstring FileName);
534
ILAPI ILboolean ILAPIENTRY ilLoadF(ILenum Type, ILHANDLE File);
535
ILAPI ILboolean ILAPIENTRY ilLoadImage(const ILstring FileName);
536
ILAPI ILboolean ILAPIENTRY ilLoadL(ILenum Type, ILvoid *Lump, ILuint Size);
537
ILAPI ILboolean ILAPIENTRY ilLoadPal(const ILstring FileName);
538
ILAPI ILboolean ILAPIENTRY ilOriginFunc(ILenum Mode);
539
ILAPI ILboolean ILAPIENTRY ilOverlayImage(ILuint Source, ILint XCoord, ILint YCoord, ILint ZCoord);
540
ILAPI ILvoid ILAPIENTRY ilPopAttrib(ILvoid);
541
ILAPI ILvoid ILAPIENTRY ilPushAttrib(ILuint Bits);
542
ILAPI ILvoid ILAPIENTRY ilRegisterFormat(ILenum Format);
543
ILAPI ILboolean ILAPIENTRY ilRegisterLoad(const ILstring Ext, IL_LOADPROC Load);
544
ILAPI ILboolean ILAPIENTRY ilRegisterMipNum(ILuint Num);
545
ILAPI ILboolean ILAPIENTRY ilRegisterNumImages(ILuint Num);
546
ILAPI ILvoid ILAPIENTRY ilRegisterOrigin(ILenum Origin);
547
ILAPI ILvoid ILAPIENTRY ilRegisterPal(ILvoid *Pal, ILuint Size, ILenum Type);
548
ILAPI ILboolean ILAPIENTRY ilRegisterSave(const ILstring Ext, IL_SAVEPROC Save);
549
ILAPI ILvoid ILAPIENTRY ilRegisterType(ILenum Type);
550
ILAPI ILboolean ILAPIENTRY ilRemoveLoad(const ILstring Ext);
551
ILAPI ILboolean ILAPIENTRY ilRemoveSave(const ILstring Ext);
552
ILAPI ILvoid ILAPIENTRY ilResetMemory(ILvoid);
553
ILAPI ILvoid ILAPIENTRY ilResetRead(ILvoid);
554
ILAPI ILvoid ILAPIENTRY ilResetWrite(ILvoid);
555
ILAPI ILboolean ILAPIENTRY ilSave(ILenum Type, const ILstring FileName);
556
ILAPI ILuint ILAPIENTRY ilSaveF(ILenum Type, ILHANDLE File);
557
ILAPI ILboolean ILAPIENTRY ilSaveImage(const ILstring FileName);
558
ILAPI ILuint ILAPIENTRY ilSaveL(ILenum Type, ILvoid *Lump, ILuint Size);
559
ILAPI ILboolean ILAPIENTRY ilSavePal(const ILstring FileName);
560
ILAPI ILboolean ILAPIENTRY ilSetData(ILvoid *Data);
561
ILAPI ILboolean ILAPIENTRY ilSetDuration(ILuint Duration);
562
ILAPI ILvoid ILAPIENTRY ilSetInteger(ILenum Mode, ILint Param);
563
ILAPI ILvoid ILAPIENTRY ilSetMemory(mAlloc, mFree);
564
ILAPI ILvoid ILAPIENTRY ilSetPixels(ILint XOff, ILint YOff, ILint ZOff, ILuint Width, ILuint Height, ILuint Depth, ILenum Format, ILenum Type, ILvoid *Data);
565
ILAPI ILvoid ILAPIENTRY ilSetRead(fOpenRProc, fCloseRProc, fEofProc, fGetcProc, fReadProc, fSeekRProc, fTellRProc);
566
ILAPI ILvoid ILAPIENTRY ilSetString(ILenum Mode, const char *String);
567
ILAPI ILvoid ILAPIENTRY ilSetWrite(fOpenWProc, fCloseWProc, fPutcProc, fSeekWProc, fTellWProc, fWriteProc);
568
ILAPI ILvoid ILAPIENTRY ilShutDown(ILvoid);
569
ILAPI ILboolean ILAPIENTRY ilTexImage(ILuint Width, ILuint Height, ILuint Depth, ILubyte Bpp, ILenum Format, ILenum Type, ILvoid *Data);
570
ILAPI ILboolean ILAPIENTRY ilTypeFunc(ILenum Mode);
572
ILAPI ILboolean ILAPIENTRY ilLoadData(const ILstring FileName, ILuint Width, ILuint Height, ILuint Depth, ILubyte Bpp);
573
ILAPI ILboolean ILAPIENTRY ilLoadDataF(ILHANDLE File, ILuint Width, ILuint Height, ILuint Depth, ILubyte Bpp);
574
ILAPI ILboolean ILAPIENTRY ilLoadDataL(ILvoid *Lump, ILuint Size, ILuint Width, ILuint Height, ILuint Depth, ILubyte Bpp);
575
ILAPI ILboolean ILAPIENTRY ilSaveData(const ILstring FileName);
577
ILAPI ILboolean ILAPIENTRY ilLoadFromJpegStruct(ILvoid* JpegDecompressorPtr);
578
ILAPI ILboolean ILAPIENTRY ilSaveFromJpegStruct(ILvoid* JpegCompressorPtr);
580
// For all those weirdos that spell "colour" without the 'u'.
581
#define ilClearColor ilClearColour
582
#define ilKeyColor ilKeyColour
592
#define imemclear(x,y) memset(x,0,y);