il_dcx.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. //-----------------------------------------------------------------------------
  2. //
  3. // ImageLib Sources
  4. // Copyright (C) 2000-2009 by Denton Woods
  5. // Last modified: 02/26/2009
  6. //
  7. // Filename: src-IL/include/il_dcx.h
  8. //
  9. // Description: Reads from a .dcx file.
  10. //
  11. //-----------------------------------------------------------------------------
  12. #ifndef DCX_H
  13. #define DCX_H
  14. #include "il_internal.h"
  15. #ifdef _WIN32
  16. #pragma pack(push, packed_struct, 1)
  17. #endif
  18. typedef struct DCXHEAD
  19. {
  20. ILubyte Manufacturer;
  21. ILubyte Version;
  22. ILubyte Encoding;
  23. ILubyte Bpp;
  24. ILushort Xmin, Ymin, Xmax, Ymax;
  25. ILushort HDpi;
  26. ILushort VDpi;
  27. ILubyte ColMap[48];
  28. ILubyte Reserved;
  29. ILubyte NumPlanes;
  30. ILushort Bps;
  31. ILushort PaletteInfo;
  32. ILushort HScreenSize;
  33. ILushort VScreenSize;
  34. ILubyte Filler[54];
  35. } IL_PACKSTRUCT DCXHEAD;
  36. #ifdef _WIN32
  37. #pragma pack(pop, packed_struct)
  38. #endif
  39. // For checking and reading
  40. ILboolean iIsValidDcx(void);
  41. ILboolean iCheckDcx(DCXHEAD *Header);
  42. ILboolean iLoadDcxInternal(void);
  43. ILimage* iUncompressDcx(DCXHEAD *Header);
  44. ILimage* iUncompressDcxSmall(DCXHEAD *Header);
  45. #endif//PCX_H