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.

68 lines
2.2 KiB

  1. // Extern functions declaration
  2. #ifndef _HREEXT_
  3. #define _HREEXT_
  4. // Execute an RPL
  5. void DoRPL (LPHRESTATE lpHREState, LPRPLLIST lpRPL);
  6. BOOL InitDisplay (LPRESTATE, UINT);
  7. // BitBlt: source is aligned, destination is not aligned
  8. ULONG FAR PASCAL RP_BITMAP1TO1
  9. (
  10. LPVOID lpContext, // resource executor context
  11. USHORT us_xoffset, /* left offset of source bitmap */
  12. short ul_row, /* top row position */
  13. short ul_col, /* left column position */
  14. USHORT ul_warp, /* longs per scan line */
  15. USHORT ul_height, /* num of dot rows */
  16. USHORT ul_width, /* num of significant dot columns */
  17. ULONG FAR *pul_src, /* bit map data to be copied */
  18. ULONG FAR *pul_pat, /* pattern pointer */
  19. ULONG ul_rop
  20. );
  21. // PatBlt
  22. ULONG FAR PASCAL RP_FILLSCANROW
  23. (
  24. LPRESTATE lpRE, // resource executor context
  25. USHORT xDst, // rectangle left
  26. USHORT yDst, // rectangle right
  27. USHORT xExt, // rectangle width
  28. USHORT yExt, // rectangle height
  29. UBYTE FAR* lpPat, // 32x32 pattern bitmap
  30. DWORD dwRop, // raster operation
  31. LPVOID lpBand, // output band buffer
  32. UINT cbLine, // band width in bytes
  33. WORD yBrush // brush position offset
  34. );
  35. // Vertical Bitmaps
  36. USHORT FAR PASCAL RP_BITMAPV
  37. (
  38. USHORT usRow, /* Row to start Bitmap */
  39. USHORT usCol, /* Column to Start Bitmap */
  40. UBYTE ubTopPadBits, /* Bits to skip in the data stream */
  41. USHORT usHeight, /* Number of bits to draw */
  42. UBYTE FAR *ubBitmapData, /* Data to draw */
  43. LPVOID lpBits, // output band buffer
  44. UINT cbLine // bytes per scan line
  45. );
  46. UINT RP_LineEE_Draw
  47. (
  48. RP_SLICE_DESC FAR *slice,
  49. LPBITMAP lpbmBand
  50. );
  51. // Convert a line from endpoint form to slice form
  52. void RP_SliceLine
  53. (
  54. SHORT s_x1, SHORT s_y1, // endpoint 1
  55. SHORT s_x2, SHORT s_y2, // endpoint 2
  56. RP_SLICE_DESC FAR* lpsd, // output slice form of line
  57. UBYTE fb_keep_order // keep drawing order on styled lines/
  58. );
  59. #endif // _HREEXT_