il.inc 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535
  1. '-----------------------------------------------------------------------------
  2. '
  3. ' ImageLib Sources
  4. ' Copyright (C) 2000-2002 by Denton Woods
  5. ' Last modified: 06/22/2002 <--Y2K Compliant! =]
  6. '
  7. ' Filename: il/il.h
  8. '
  9. ' Description: The main include file for DevIL
  10. '
  11. '-----------------------------------------------------------------------------
  12. '-----------------------------------------------------------------------------
  13. '
  14. ' Translated to Powerbasic by Peter Scheutz, Scheutz & Clementsen Design
  15. ' Web: http://www.scheutz.dk
  16. ' e-mail: sourcecode@scheutz.dk
  17. '
  18. ' Last modified: 06/22/2002
  19. ' Based on DevIL Ver. 1.6.1 headers
  20. '
  21. ' Filename: il.inc
  22. '
  23. ' Description: PB main include file for DevIL
  24. '
  25. ' For information on use and download of DevIL goto: http://openil.sourceforge.net/
  26. ' (Get docs and "End User Package")
  27. '
  28. ' Report errors in the Powerbasic includes to e-mail above.
  29. '
  30. ' For general help on Powerbasic and DevIL, try the forums at:
  31. ' http://www.powerbasic.com
  32. '-----------------------------------------------------------------------------
  33. ' #ifndef __il_h_
  34. ' #ifndef __IL_H__
  35. ' %__il_h_
  36. ' %__IL_H__
  37. ' #ifdef __cplusplus
  38. ' extern "C" {
  39. ' #endif
  40. '%IL_NO_BMP
  41. '%IL_NO_CUT
  42. '%IL_NO_CHEAD
  43. '%IL_NO_DDS
  44. '%IL_NO_DOOM
  45. '%IL_NO_ICO
  46. '%IL_NO_JPG
  47. '%IL_NO_LIF
  48. '%IL_NO_LBM
  49. '%IL_NO_MDL
  50. '%IL_NO_PCD
  51. '%IL_NO_PCX
  52. '%IL_NO_PIC
  53. '%IL_NO_PNG
  54. '%IL_NO_PNM
  55. '%IL_NO_RAW
  56. '%IL_NO_SGI
  57. '%IL_NO_TGA
  58. '%IL_NO_TIF
  59. '%IL_NO_WAL
  60. '%IL_NO_DDS
  61. '%IL_NO_DCX
  62. '%IL_NO_PSD
  63. '%IL_NO_PSP
  64. '%IL_NO_PXR
  65. '%IL_NO_RAW
  66. '%IL_NO_SGI
  67. '%IL_NO_TGA
  68. '%IL_NO_TIF
  69. '%IL_NO_WAL
  70. '%IL_NO_XPM
  71. '%IL_USE_IJL ' Whether we use the Intel Jpeg Library (else use libjpeg).
  72. ' #ifdef _WIN32
  73. '%WIN32_LEAN_AND_MEAN ' Exclude rarely-used stuff from Windows headers
  74. '#include <windows.h>
  75. ' #ifdef _MSC_VER
  76. ' #ifndef _IL_BUILD_LIBRARY
  77. ' #ifdef _DEBUG
  78. ' #pragma comment(lib, "devil-d.lib")
  79. ' #else
  80. ' #pragma comment(lib, "devil.lib")
  81. ' #endif'_DEBUG
  82. ' #endif'_IL_BUILD_LIBRARY
  83. ' #endif'_MSC_VER
  84. ' #endif'_WIN32
  85. ' #include <stdio.h>
  86. ' typedef unsigned int ILenum;
  87. ' typedef unsigned char ILboolean;
  88. ' typedef unsigned int ILbitfield;
  89. ' typedef char ILbyte;
  90. ' typedef short ILshort;
  91. ' typedef int ILint;
  92. ' typedef int ILsizei;
  93. ' typedef unsigned char ILubyte;
  94. ' typedef unsigned short ILushort;
  95. ' typedef unsigned int ILuint;
  96. ' typedef float ILfloat;
  97. ' typedef float ILclampf;
  98. ' typedef double ILdouble;
  99. ' typedef double ILclampd;
  100. ' typedef void ILvoid;
  101. %IL_FALSE = 0
  102. %IL_TRUE = 1
  103. ' Matches OpenGL's right now.
  104. %IL_COLOUR_INDEX = &H1900&
  105. %IL_COLOR_INDEX = &H1900&
  106. %IL_RGB = &H1907&
  107. %IL_RGBA = &H1908&
  108. %IL_BGR = &H80E0&
  109. %IL_BGRA = &H80E1&
  110. %IL_LUMINANCE = &H1909&
  111. %IL_BYTE = &H1400&
  112. %IL_UNSIGNED_BYTE = &H1401&
  113. %IL_SHORT = &H1402&
  114. %IL_UNSIGNED_SHORT = &H1403&
  115. %IL_INT = &H1404&
  116. %IL_UNSIGNED_INT = &H1405&
  117. %IL_FLOAT = &H1406&
  118. %GL_DOUBLE = &H140A&
  119. %IL_VENDOR = &H1F00&
  120. '
  121. ' IL-specific #define's
  122. '
  123. %IL_VERSION_1_5_6 = 1
  124. %IL_VERSION = 156
  125. %IL_LOAD_EXT = &H1F01&
  126. %IL_SAVE_EXT = &H1F02&
  127. ' Attribute Bits
  128. %IL_ORIGIN_BIT = &H00000001&
  129. %IL_FILE_BIT = &H00000002&
  130. %IL_PAL_BIT = &H00000004&
  131. %IL_FORMAT_BIT = &H00000008&
  132. %IL_TYPE_BIT = &H00000010&
  133. %IL_COMPRESS_BIT = &H00000020&
  134. %IL_LOADFAIL_BIT = &H00000040&
  135. %IL_ALL_ATTRIB_BITS = &H000FFFFF&
  136. ' Palette types
  137. %IL_PAL_NONE = &H0400&
  138. %IL_PAL_RGB24 = &H0401&
  139. %IL_PAL_RGB32 = &H0402&
  140. %IL_PAL_RGBA32 = &H0403&
  141. %IL_PAL_BGR24 = &H0404&
  142. %IL_PAL_BGR32 = &H0405&
  143. %IL_PAL_BGRA32 = &H0406&
  144. ' Image types
  145. %IL_TYPE_UNKNOWN = &H0000&
  146. %IL_BMP = &H0420&
  147. %IL_CUT = &H0421&
  148. %IL_DOOM = &H0422&
  149. %IL_DOOM_FLAT = &H0423&
  150. %IL_ICO = &H0424&
  151. %IL_JPG = &H0425&
  152. %IL_LBM = &H0426&
  153. %IL_PCD = &H0427&
  154. %IL_PCX = &H0428&
  155. %IL_PIC = &H0429&
  156. %IL_PNG = &H042A&
  157. %IL_PNM = &H042B&
  158. %IL_SGI = &H042C&
  159. %IL_TGA = &H042D&
  160. %IL_TIF = &H042E&
  161. %IL_CHEAD = &H042F&
  162. %IL_RAW = &H0430&
  163. %IL_MDL = &H0431&
  164. %IL_WAL = &H0432&
  165. %IL_LIF = &H0434&
  166. %IL_MNG = &H0435&
  167. %IL_JNG = &H0435&
  168. %IL_GIF = &H0436&
  169. %IL_DDS = &H0437&
  170. %IL_DCX = &H0438&
  171. %IL_PSD = &H0439&
  172. %IL_EXIF = &H043A&
  173. %IL_PSP = &H043B&
  174. %IL_PIX = &H043C&
  175. %IL_PXR = &H043D&
  176. %IL_XPM = &H043E&
  177. %IL_JASC_PAL = &H0475&
  178. ' Error Types
  179. %IL_NO_ERROR = &H0000&
  180. %IL_INVALID_ENUM = &H0501&
  181. %IL_OUT_OF_MEMORY = &H0502&
  182. %IL_FORMAT_NOT_SUPPORTED = &H0503&
  183. %IL_INTERNAL_ERROR = &H0504&
  184. %IL_INVALID_VALUE = &H0505&
  185. %IL_ILLEGAL_OPERATION = &H0506&
  186. %IL_ILLEGAL_FILE_VALUE = &H0507&
  187. %IL_INVALID_FILE_HEADER = &H0508&
  188. %IL_INVALID_PARAM = &H0509&
  189. %IL_COULD_NOT_OPEN_FILE = &H050A&
  190. %IL_INVALID_EXTENSION = &H050B&
  191. %IL_FILE_ALREADY_EXISTS = &H050C&
  192. %IL_OUT_FORMAT_SAME = &H050D&
  193. %IL_STACK_OVERFLOW = &H050E&
  194. %IL_STACK_UNDERFLOW = &H050F&
  195. %IL_INVALID_CONVERSION = &H0510&
  196. %IL_BAD_DIMENSIONS = &H0511&
  197. %IL_FILE_READ_ERROR = &H0512&
  198. %IL_LIB_GIF_ERROR = &H05E1&
  199. %IL_LIB_JPEG_ERROR = &H05E2&
  200. %IL_LIB_PNG_ERROR = &H05E3&
  201. %IL_LIB_TIFF_ERROR = &H05E4&
  202. %IL_LIB_MNG_ERROR = &H05E5&
  203. %IL_UNKNOWN_ERROR = &H05FF&
  204. ' Origin Definitions
  205. %IL_ORIGIN_SET = &H0600&
  206. %IL_ORIGIN_LOWER_LEFT = &H0601&
  207. %IL_ORIGIN_UPPER_LEFT = &H0602&
  208. %IL_ORIGIN_MODE = &H0603&
  209. ' Format and Type Mode Definitions
  210. %IL_FORMAT_SET = &H0610&
  211. %IL_FORMAT_MODE = &H0611&
  212. %IL_TYPE_SET = &H0612&
  213. %IL_TYPE_MODE = &H0613&
  214. ' File definitions
  215. %IL_FILE_OVERWRITE = &H0620&
  216. %IL_FILE_MODE = &H0621&
  217. ' Palette definitions
  218. %IL_CONV_PAL = &H0630&
  219. ' Load fail definitions
  220. %IL_DEFAULT_ON_FAIL = &H0632&
  221. ' Key colour definitions
  222. %IL_USE_KEY_COLOUR = &H0635&
  223. %IL_USE_KEY_COLOR = &H0635&
  224. ' Interlace definitions
  225. %IL_SAVE_INTERLACED = &H0639&
  226. %IL_INTERLACE_MODE = &H063A&
  227. ' Quantization definitions
  228. %IL_QUANTIZATION_MODE = &H0640&
  229. %IL_WU_QUANT = &H0641&
  230. %IL_NEU_QUANT = &H0642&
  231. %IL_NEU_QUANT_SAMPLE = &H0643&
  232. ' Hints
  233. %IL_FASTEST = &H0660&
  234. %IL_LESS_MEM = &H0661&
  235. %IL_DONT_CARE = &H0662&
  236. %IL_MEM_SPEED_HINT = &H0665&
  237. %IL_USE_COMPRESSION = &H0666&
  238. %IL_NO_COMPRESSION = &H0667&
  239. %IL_COMPRESSION_HINT = &H0668&
  240. ' Subimage types
  241. %IL_SUB_NEXT = &H0680&
  242. %IL_SUB_MIPMAP = &H0681&
  243. %IL_SUB_LAYER = &H0682&
  244. ' Compression definitions
  245. %IL_COMPRESS_MODE = &H0700&
  246. %IL_COMPRESS_NONE = &H0701&
  247. %IL_COMPRESS_RLE = &H0702&
  248. %IL_COMPRESS_LZO = &H0703&
  249. %IL_COMPRESS_ZLIB = &H0704&
  250. ' File format-specific values
  251. %IL_TGA_CREATE_STAMP = &H0710&
  252. %IL_JPG_QUALITY = &H0711&
  253. %IL_PNG_INTERLACE = &H0712&
  254. %IL_TGA_RLE = &H0713&
  255. %IL_BMP_RLE = &H0714&
  256. %IL_SGI_RLE = &H0715&
  257. %IL_TGA_CREATE_STAMP = &H0710&
  258. %IL_JPG_QUALITY = &H0711&
  259. %IL_PNG_INTERLACE = &H0712&
  260. %IL_TGA_RLE = &H0713&
  261. %IL_BMP_RLE = &H0714&
  262. %IL_SGI_RLE = &H0715&
  263. %IL_TGA_ID_STRING = &H0717&
  264. %IL_TGA_AUTHNAME_STRING = &H0718&
  265. %IL_TGA_AUTHCOMMENT_STRING = &H0719&
  266. %IL_PNG_AUTHNAME_STRING = &H071A&
  267. %IL_PNG_TITLE_STRING = &H071B&
  268. %IL_PNG_DESCRIPTION_STRING = &H071C&
  269. %IL_TIF_DESCRIPTION_STRING = &H071D&
  270. %IL_TIF_HOSTCOMPUTER_STRING = &H071E&
  271. %IL_TIF_DOCUMENTNAME_STRING = &H071F&
  272. %IL_TIF_AUTHNAME_STRING = &H0720&
  273. %IL_JPG_SAVE_FORMAT = &H0721&
  274. %IL_CHEAD_HEADER_STRING = &H0722&
  275. %IL_PCD_PICNUM = &H0723&
  276. ' DXTC definitions
  277. %IL_DXTC_FORMAT = &H0705&
  278. %IL_DXT1 = &H0706&
  279. %IL_DXT2 = &H0707&
  280. %IL_DXT3 = &H0708&
  281. %IL_DXT4 = &H0709&
  282. %IL_DXT5 = &H070A&
  283. %IL_DXT_NO_COMP = &H070B&
  284. %IL_KEEP_DXTC_DATA = &H070C&
  285. %IL_DXTC_DATA_FORMAT = &H070D&
  286. ' Cube map definitions
  287. %IL_CUBEMAP_POSITIVEX = &H00000400&
  288. %IL_CUBEMAP_NEGATIVEX = &H00000800&
  289. %IL_CUBEMAP_POSITIVEY = &H00001000&
  290. %IL_CUBEMAP_NEGATIVEY = &H00002000&
  291. %IL_CUBEMAP_POSITIVEZ = &H00004000&
  292. %IL_CUBEMAP_NEGATIVEZ = &H00008000&
  293. ' Values
  294. %IL_VERSION_NUM = &H0DE2&
  295. %IL_IMAGE_WIDTH = &H0DE4&
  296. %IL_IMAGE_HEIGHT = &H0DE5&
  297. %IL_IMAGE_DEPTH = &H0DE6&
  298. %IL_IMAGE_SIZE_OF_DATA = &H0DE7&
  299. %IL_IMAGE_BPP = &H0DE8&
  300. %IL_IMAGE_BYTES_PER_PIXEL = &H0DE8&
  301. %IL_IMAGE_BITS_PER_PIXEL = &H0DE9&
  302. %IL_IMAGE_FORMAT = &H0DEA&
  303. %IL_IMAGE_TYPE = &H0DEB&
  304. %IL_PALETTE_TYPE = &H0DEC&
  305. %IL_PALETTE_SIZE = &H0DED&
  306. %IL_PALETTE_BPP = &H0DEE&
  307. %IL_PALETTE_NUM_COLS = &H0DEF&
  308. %IL_PALETTE_BASE_TYPE = &H0DF0&
  309. %IL_NUM_IMAGES = &H0DF1&
  310. %IL_NUM_MIPMAPS = &H0DF2&
  311. %IL_NUM_LAYERS = &H0DF3&
  312. %IL_ACTIVE_IMAGE = &H0DF4&
  313. %IL_ACTIVE_MIPMAP = &H0DF5&
  314. %IL_ACTIVE_LAYER = &H0DF6&
  315. %IL_CUR_IMAGE = &H0DF7&
  316. %IL_IMAGE_DURATION = &H0DF8&
  317. '
  318. ' Section shamelessly modified from the glut header.
  319. '
  320. ' This is from Win32's <windef.h>
  321. ' #if (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED) || defined(__BORLANDC__) || defined(__LCC__)
  322. ' = %ILAPIENTRY = __stdcall
  323. ' %IL_PACKSTRUCT
  324. ' #else
  325. ' %ILAPIENTRY
  326. ' = %IL_PACKSTRUCT = __attribute__ = ((packed))
  327. ' #endif
  328. ' This is from Win32's <wingdi.h> and <winnt.h>
  329. ' #if defined(__LCC__)
  330. ' = %ILAPI = __stdcall
  331. ' #elif _WIN32
  332. ' #ifdef _IL_BUILD_LIBRARY
  333. ' = %ILAPI = __declspec(dllexport)
  334. ' #else
  335. ' = %ILAPI = __declspec(dllimport)
  336. ' #endif
  337. ' #else
  338. ' %ILAPI
  339. ' #endif
  340. %IL_SEEK_SET = 0
  341. %IL_SEEK_CUR = 1
  342. %IL_SEEK_END = 2
  343. %IL_EOF = -1
  344. ' Callback functions for file reading
  345. ' typedef void* ILHANDLE;
  346. ' typedef ILvoid (ILAPIENTRY *fCloseRProc) (ILHANDLE);
  347. ' typedef ILboolean (ILAPIENTRY *fEofProc) (ILHANDLE);
  348. ' typedef ILint (ILAPIENTRY *fGetcProc) (ILHANDLE);
  349. ' typedef ILHANDLE (ILAPIENTRY *fOpenRProc) (char*);
  350. ' typedef ILint (ILAPIENTRY *fReadProc) (void*, ILuint, ILuint, ILHANDLE);
  351. ' typedef ILint (ILAPIENTRY *fSeekRProc) (ILHANDLE, ILint, ILint);
  352. ' typedef ILint (ILAPIENTRY *fTellRProc) (ILHANDLE);
  353. ' Callback functions for file writing
  354. ' typedef ILvoid (ILAPIENTRY *fCloseWProc) (ILHANDLE);
  355. ' typedef ILHANDLE (ILAPIENTRY *fOpenWProc) (char*);
  356. ' typedef ILint (ILAPIENTRY *fPutcProc) (ILubyte, ILHANDLE);
  357. ' typedef ILint (ILAPIENTRY *fSeekWProc) (ILHANDLE, ILint, ILint);
  358. ' typedef ILint (ILAPIENTRY *fTellWProc) (ILHANDLE);
  359. ' typedef ILint (ILAPIENTRY *fWriteProc) (void*, ILuint, ILuint, ILHANDLE);
  360. ' Registered format procedures
  361. ' typedef ILboolean (ILAPIENTRY *IL_LOADPROC) (char*);
  362. ' typedef ILboolean (ILAPIENTRY *IL_SAVEPROC) (char*);
  363. ' ImageLib Functions
  364. Declare Function ilActiveImage Lib "DevIL.dll" Alias "ilActiveImage" (ByVal pb_Number As Dword) As Byte
  365. Declare Function ilActiveLayer Lib "DevIL.dll" Alias "ilActiveLayer" (ByVal pb_Number As Dword) As Byte
  366. Declare Function ilActiveMipmap Lib "DevIL.dll" Alias "ilActiveMipmap" (ByVal pb_Number As Dword) As Byte
  367. Declare Function ilApplyPal Lib "DevIL.dll" Alias "ilApplyPal" (ByRef pb_FileName As Asciiz) As Byte
  368. Declare Function ilApplyProfile Lib "DevIL.dll" Alias "ilApplyProfile" (ByRef pb_InProfile
  369. As Asciiz, ByRef pb_OutProfile As Asciiz) As Byte
  370. Declare Sub ilBindImage Lib "DevIL.dll" Alias "ilBindImage" (ByVal pb_Image As Dword)
  371. Declare Function ilBlit Lib "DevIL.dll" Alias "ilBlit" (ByVal pb_Src As Long, ByVal pb_DestX As Long, ByVal pb_DestY As Long, ByVal pb_DestZ as Dword, ByVal pb_SrcX As Dword, ByVal pb_SrcY As Dword, ByVal pb_SrcZ As Dword, ByVal pb_Width As Dword, ByVal pb_Height As Dword, ByVal pb_Depth As Dword) As Byte
  372. Declare Sub ilClearColour Lib "DevIL.dll" Alias "ilClearColour" (ByVal pb_Red As Single, ByVal pb_Green As Single, ByVal pb_Blue As Single, ByVal pb_Alpha As Single)
  373. Declare Function ilClearImage Lib "DevIL.dll" Alias "ilClearImage" () As Byte
  374. Declare Function ilCloneCurImage Lib "DevIL.dll" Alias "ilCloneCurImage" () As Dword
  375. Declare Function ilCompressFunc Lib "DevIL.dll" Alias "ilCompressFunc" (ByVal pb_Mode As Dword) As Byte
  376. Declare Function ilConvertImage Lib "DevIL.dll" Alias "ilConvertImage" (ByVal pb_DestFormat As Dword, ByVal pb_DestType As Dword) As Byte
  377. Declare Function ilConvertPal Lib "DevIL.dll" Alias "ilConvertPal" (ByVal pb_DestFormat As Dword) As Byte
  378. Declare Function ilCopyImage Lib "DevIL.dll" Alias "ilCopyImage" (ByVal pb_Src As Dword) As Byte
  379. Declare Function ilCopyPixels Lib "DevIL.dll" Alias "ilCopyPixels" (ByVal pb_XOff As Dword, ByVal pb_YOff As Dword, ByVal pb_ZOff As Dword, ByVal pb_Width As Dword, ByVal pb_Height As Dword, ByVal pb_Depth As Dword, ByVal pb_Format As Dword, ByVal pb_Type As Dword, ByRef pb_Data As Long) As Dword
  380. Declare Function ilCreateSubImage Lib "DevIL.dll" Alias "ilCreateSubImage" (ByVal pb_Type As Dword, ByVal pb_Num As Dword) As Dword
  381. Declare Function ilDefaultImage Lib "DevIL.dll" Alias "ilDefaultImage" () As Byte
  382. Declare Sub ilDeleteImages Lib "DevIL.dll" Alias "ilDeleteImages" (ByVal pb_Num As Long, ByRef pb_Images As Dword)
  383. Declare Function ilDisable Lib "DevIL.dll" Alias "ilDisable" (ByVal pb_Mode As Dword) As Byte
  384. Declare Function ilEnable Lib "DevIL.dll" Alias "ilEnable" (ByVal pb_Mode As Dword) As Byte
  385. Declare Function ilFormatFunc Lib "DevIL.dll" Alias "ilFormatFunc" (ByVal pb_Mode As Dword) As Byte
  386. Declare Sub ilGenImages Lib "DevIL.dll" Alias "ilGenImages" (ByVal pb_Num As Long, ByRef pb_Images As Dword)
  387. Declare Function ilGetAlpha Lib "DevIL.dll" Alias "ilGetAlpha" (ByVal pb_Type As Dword) As Long
  388. Declare Function ilGetBoolean Lib "DevIL.dll" Alias "ilGetBoolean" (ByVal pb_Mode As Dword) As Byte
  389. Declare Sub ilGetBooleanv Lib "DevIL.dll" Alias "ilGetBooleanv" (ByVal pb_Mode As Dword, ByRef pb_Param As Byte)
  390. Declare Function ilGetData Lib "DevIL.dll" Alias "ilGetData" () As Long
  391. Declare Function ilGetError Lib "DevIL.dll" Alias "ilGetError" () As Dword
  392. Declare Function ilGetInteger Lib "DevIL.dll" Alias "ilGetInteger" (ByVal pb_Mode As Dword) As Long
  393. Declare Sub ilGetIntegerv Lib "DevIL.dll" Alias "ilGetIntegerv" (ByVal pb_Mode As Dword, ByRef pb_Param As Long)
  394. Declare Function ilGetLumpPos Lib "DevIL.dll" Alias "ilGetLumpPos" () As Dword
  395. Declare Function ilGetPalette Lib "DevIL.dll" Alias "ilGetPalette" () As Long
  396. Declare Function ilGetString Lib "DevIL.dll" Alias "ilGetString" (ByVal pb_StringName As Dword) As String
  397. Declare Sub ilHint Lib "DevIL.dll" Alias "ilHint" (ByVal pb_Target As Dword, ByVal pb_Mode As Dword)
  398. Declare Sub ilInit Lib "DevIL.dll" Alias "ilInit" ()
  399. Declare Function ilIsDisabled Lib "DevIL.dll" Alias "ilIsDisabled" (ByVal pb_Mode As Dword) As Byte
  400. Declare Function ilIsEnabled Lib "DevIL.dll" Alias "ilIsEnabled" (ByVal pb_Mode As Dword) As Byte
  401. Declare Function ilIsImage Lib "DevIL.dll" Alias "ilIsImage" (ByVal pb_Image As Dword) As Byte
  402. Declare Function ilIsValid Lib "DevIL.dll" Alias "ilIsValid" (ByVal pb_Type As Dword, ByRef pb_FileName As Asciiz) As Byte
  403. Declare Function ilIsValidF Lib "DevIL.dll" Alias "ilIsValidF" (ByVal pb_Type As Dword, ByVal pb_File As Long) As Byte
  404. Declare Function ilIsValidL Lib "DevIL.dll" Alias "ilIsValidL" (ByVal pb_Type As Dword, ByRef pb_Lump As Long, ByVal pb_Size As Dword) As Byte
  405. Declare Sub ilKeyColour Lib "DevIL.dll" Alias "ilKeyColour" (ByVal pb_Red As Single, ByVal pb_Green As Single, ByVal pb_Blue As Single, ByVal pb_Alpha As Single)
  406. Declare Function ilLoad Lib "DevIL.dll" Alias "ilLoad" (ByVal pb_Type As Dword, ByRef pb_FileName As Asciiz) As Byte
  407. Declare Function ilLoadF Lib "DevIL.dll" Alias "ilLoadF" (ByVal pb_Type As Dword, ByVal pb_File As Long) As Byte
  408. Declare Function ilLoadImage Lib "DevIL.dll" Alias "ilLoadImage" (ByRef pb_FileName As Asciiz) As Byte
  409. Declare Function ilLoadL Lib "DevIL.dll" Alias "ilLoadL" (ByVal pb_Type As Dword, ByRef pb_Lump As Long, ByVal pb_Size As Dword) As Byte
  410. Declare Function ilLoadPal Lib "DevIL.dll" Alias "ilLoadPal" (ByRef pb_FileName As Asciiz) As Byte
  411. Declare Function ilOriginFunc Lib "DevIL.dll" Alias "ilOriginFunc" (ByVal pb_Mode As Dword) As Byte
  412. Declare Function ilOverlayImage Lib "DevIL.dll" Alias "ilOverlayImage" (ByVal pb_Src As Dword, ByVal pb_XCoord As Long, ByVal pb_YCoord As Long, ByVal pb_ZCoord As Long) As Byte
  413. Declare Sub ilPopAttrib Lib "DevIL.dll" Alias "ilPopAttrib" ()
  414. Declare Sub ilPushAttrib Lib "DevIL.dll" Alias "ilPushAttrib" (ByVal pb_Bits As Dword)
  415. Declare Sub ilRegisterFormat Lib "DevIL.dll" Alias "ilRegisterFormat" (ByVal pb_Format As Dword)
  416. Declare Function ilRegisterLoad Lib "DevIL.dll" Alias "ilRegisterLoad" (ByRef pb_Ext As Asciiz, ByVal pb_Load As Dword) As Byte
  417. Declare Function ilRegisterMipNum Lib "DevIL.dll" Alias "ilRegisterMipNum" (ByVal pb_Num As Dword) As Byte
  418. Declare Function ilRegisterNumImages Lib "DevIL.dll" Alias "ilRegisterNumImages" (ByVal pb_Num As Dword) As Byte
  419. Declare Sub ilRegisterOrigin Lib "DevIL.dll" Alias "ilRegisterOrigin" (ByVal pb_Origin As Dword)
  420. Declare Sub ilRegisterPal Lib "DevIL.dll" Alias "ilRegisterPal" (ByRef pb_Pal As Long, ByVal pb_Size As Dword, ByVal pb_Type As Dword)
  421. Declare Function ilRegisterSave Lib "DevIL.dll" Alias "ilRegisterSave" (ByRef pb_Ext As Asciiz, ByVal pb_Save As Dword) As Byte
  422. Declare Sub ilRegisterType Lib "DevIL.dll" Alias "ilRegisterType" (ByVal pb_Type As Dword)
  423. Declare Function ilRemoveLoad Lib "DevIL.dll" Alias "ilRemoveLoad" (ByRef pb_Ext As Asciiz) As Byte
  424. Declare Function ilRemoveSave Lib "DevIL.dll" Alias "ilRemoveSave" (ByRef pb_Ext As Asciiz) As Byte
  425. Declare Sub ilResetRead Lib "DevIL.dll" Alias "ilResetRead" ()
  426. Declare Sub ilResetWrite Lib "DevIL.dll" Alias "ilResetWrite" ()
  427. Declare Function ilSave Lib "DevIL.dll" Alias "ilSave" (ByVal pb_Type As Dword, ByRef pb_FileName As Asciiz) As Byte
  428. Declare Function ilSaveF Lib "DevIL.dll" Alias "ilSaveF" (ByVal pb_Type As Dword, ByVal pb_File As Long) As Byte
  429. Declare Function ilSaveImage Lib "DevIL.dll" Alias "ilSaveImage" (ByRef pb_FileName As Asciiz) As Byte
  430. Declare Function ilSaveL Lib "DevIL.dll" Alias "ilSaveL" (ByVal pb_Type As Dword, ByRef pb_Lump As Long, ByVal pb_Size As Dword) As Byte
  431. Declare Function ilSavePal Lib "DevIL.dll" Alias "ilSavePal" (ByRef pb_FileName As Asciiz) As Byte
  432. Declare Function ilSetData Lib "DevIL.dll" Alias "ilSetData" (ByRef pb_Data As Long) As Byte
  433. Declare Function ilSetDuration Lib "DevIL.dll" Alias "ilSetDuration" (ByVal pb_Duration As Dword) As Byte
  434. Declare Sub ilSetInteger Lib "DevIL.dll" Alias "ilSetInteger" (ByVal pb_Mode As Dword, ByVal pb_Param As Dword)
  435. Declare Sub ilSetPixels Lib "DevIL.dll" Alias "ilSetPixels" (ByVal pb_XOff As Dword, ByVal pb_YOff As Dword, ByVal pb_ZOff As Dword, ByVal pb_Width As Dword, ByVal pb_Height As Dword, ByVal pb_Depth As Dword, ByVal pb_Format As Dword, ByVal pb_Type As _
  436. Dword, ByRef pb_Data As Long)
  437. Declare Sub ilSetRead Lib "DevIL.dll" Alias "ilSetRead" (ByVal pb_fOpenRProc As Dword, ByVal pb_fCloseRProc As Dword, ByVal pb_fEofProc As Dword, ByVal pb_fGetcProc As Dword, ByVal pb_fReadProc As Dword, _
  438. ByVal pb_fSeekRProc As Dword, ByVal pb_fTellRProc As Dword)
  439. Declare Sub ilSetWrite Lib "DevIL.dll" Alias "ilSetWrite" (ByVal pb_fOpenWProc As Dword, ByVal pb_fCloseWProc As Dword, ByVal pb_fPutcProc As Dword, ByVal pb_fSeekWProc As Dword, _
  440. ByVal pb_fTellWProc As Dword, ByVal pb_fWriteProc As Dword)
  441. Declare Function ilTexImage Lib "DevIL.dll" Alias "ilTexImage" (ByVal pb_Width As Dword, ByVal pb_Height As Dword, ByVal pb_Depth As Dword, ByVal pb_Bpp As Byte, ByVal pb_Format As Dword, ByVal pb_Type As Dword, ByRef pb_Data As Long) As Byte
  442. Declare Function ilTypeFunc Lib "DevIL.dll" Alias "ilTypeFunc" (ByVal pb_Mode As Dword) As Byte
  443. Declare Function ilLoadData Lib "DevIL.dll" Alias "ilLoadData" (ByRef pb_FileName As Asciiz, ByVal pb_Width As Dword, ByVal pb_Height As Dword, ByVal pb_Depth As Dword, ByVal pb_Bpp As Byte) As Byte
  444. Declare Function ilLoadDataF Lib "DevIL.dll" Alias "ilLoadDataF" (ByVal pb_File As Long, ByVal pb_Width As Dword, ByVal pb_Height As Dword, ByVal pb_Depth As Dword, ByVal pb_Bpp As Byte) As Byte
  445. Declare Function ilLoadDataL Lib "DevIL.dll" Alias "ilLoadDataL" (ByRef pb_Lump As Long, ByVal pb_Size As Dword, ByVal pb_Width As Dword, ByVal pb_Height As Dword, ByVal pb_Depth As Dword, ByVal pb_Bpp As Byte) As Byte
  446. Declare Function ilSaveData Lib "DevIL.dll" Alias "ilSaveData" (ByRef pb_FileName As Asciiz) As Byte
  447. '%ilClearColor = ilClearColour
  448. '%ilKeyColor = ilKeyColour
  449. ' #if (DJGPP || LINUX)
  450. ' static void GccMain() __attribute__((constructor));
  451. ' #endif
  452. ' #ifdef __cplusplus
  453. ' }
  454. ' #endif
  455. ' #endif /* __IL_H__ */
  456. ' #endif /* __il_h_ */