Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

118 lines
1.8 KiB

  1. /*++
  2. Copyright (c) 1990-2003 Microsoft Corporation
  3. Module Name:
  4. compress.h
  5. Abstract:
  6. This module contains #defines and prototypes for the compress.c module.
  7. Author:
  8. 18-Feb-1994 Fri 09:50:29 created
  9. [Environment:]
  10. GDI Device Driver - Plotter.
  11. [Notes:]
  12. Revision History:
  13. --*/
  14. #ifndef _COMPRESS_
  15. #define _COMPRESS_
  16. #define COMPRESS_MODE_NONE (DWORD)0xFFFFFFFF
  17. #define COMPRESS_MODE_ROW 0
  18. #define COMPRESS_MODE_RUNLENGTH 1
  19. #define COMPRESS_MODE_TIFF 2
  20. #define COMPRESS_MODE_DELTA 3
  21. #define COMPRESS_MODE_BLOCK 4
  22. #define COMPRESS_MODE_ADAPT 5
  23. #define RTLSF_MORE_SCAN 0x01
  24. typedef struct _RTLSCANS {
  25. LPBYTE pbCompress;
  26. LPBYTE pbSeedRows[3];
  27. DWORD MaxAdaptBufSize;
  28. WORD cEmptyDup;
  29. BYTE AdaptMethod;
  30. BYTE cAdaptBlk;
  31. DWORD cxBytes;
  32. DWORD cScans;
  33. BYTE Flags;
  34. BYTE Planes;
  35. BYTE Mask;
  36. BYTE CompressMode;
  37. } RTLSCANS, FAR *PRTLSCANS;
  38. //
  39. // The function protypes
  40. //
  41. VOID
  42. ExitRTLScans(
  43. PPDEV pPDev,
  44. PRTLSCANS pRTLScans
  45. );
  46. VOID
  47. EnterRTLScans(
  48. PPDEV pPDev,
  49. PRTLSCANS pRTLScans,
  50. DWORD cx,
  51. DWORD cy,
  52. BOOL MonoBmp
  53. );
  54. LONG
  55. CompressToDelta(
  56. LPBYTE pbSrc,
  57. LPBYTE pbSeedRow,
  58. LPBYTE pbDst,
  59. LONG Size
  60. );
  61. LONG
  62. CompressToTIFF(
  63. LPBYTE pbSrc,
  64. LPBYTE pbDst,
  65. LONG Size
  66. );
  67. LONG
  68. RTLCompression(
  69. LPBYTE pbSrc,
  70. LPBYTE pbSeedRow,
  71. LPBYTE pbDst,
  72. LONG Size,
  73. LPBYTE pCompressMode
  74. );
  75. BOOL
  76. OutputRTLScans(
  77. PPDEV pPDev,
  78. LPBYTE pbPlane1,
  79. LPBYTE pbPlane2,
  80. LPBYTE pbPlane3,
  81. PRTLSCANS pRTLScans
  82. );
  83. #endif // _COMPRESS_