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.

101 lines
2.3 KiB

  1. /***************************************************************************
  2. *
  3. * compdef.h
  4. *
  5. * Copyright (c) 1993 Microsoft Corporation
  6. *
  7. * 32-bit Thunks for msvideo.dll
  8. *
  9. * Structures for mapping compression manager calls
  10. *
  11. **************************************************************************/
  12. /**************************************************************************\
  13. Thunking of compman APIs
  14. Functions:
  15. ICInstall is NOT supported from 16-bit to 32-bit
  16. ICRemove is also NOT supported
  17. ICInfo - tries the 32-bit side first
  18. Handles
  19. Are pointers to the PIC table.
  20. The 16-bit side handle manager will store these and call us back
  21. with our 32-bit handles so the thunking routines here receive
  22. real 32-bit handles.
  23. There is NO handle cleanup (why not ???) on task termination
  24. /*
  25. * Make sure the compiler doesn't think it knows better about packing
  26. * The 16-bit stack is effectively pack(2)
  27. */
  28. #pragma pack(2)
  29. /*
  30. * Note that everything is in the reverse order to keep with the PASCAL
  31. * calling convention on the other side
  32. */
  33. /****************************************************************************
  34. compman entry point parameter lists
  35. ****************************************************************************/
  36. typedef struct {
  37. #ifdef ICINFOA
  38. ICINFOA *lpicinfo; // Why is there no ASCII 32-bit API?
  39. #else
  40. ICINFO *lpicinfo; // Why is there no ASCII 32-bit API?
  41. #endif
  42. DWORD fccHandler;
  43. DWORD fccType;
  44. } UNALIGNED *PICInfoParms16;
  45. typedef struct {
  46. DWORD dw2;
  47. DWORD dw1;
  48. WORD msg;
  49. DWORD hic;
  50. } UNALIGNED *PICSendMessageParms16;
  51. typedef struct {
  52. WORD wMode;
  53. DWORD fccHandler;
  54. DWORD fccType;
  55. } UNALIGNED *PICOpenParms16;
  56. typedef struct {
  57. DWORD hic;
  58. } UNALIGNED *PICCloseParms16;
  59. typedef struct {
  60. DWORD dwFlags;
  61. WORD hpal;
  62. WORD hwnd;
  63. WORD hdc;
  64. short xDst;
  65. short yDst;
  66. short dxDst;
  67. short dyDst;
  68. LPBITMAPINFOHEADER lpbi;
  69. short xSrc;
  70. short ySrc;
  71. short dxSrc;
  72. short dySrc;
  73. DWORD dwRate;
  74. DWORD dwScale;
  75. } ICDRAWBEGIN16;
  76. #pragma pack()
  77.