| 1 | /** | 
 
 
 
 
 | 2 | * This file has no copyright assigned and is placed in the Public Domain. | 
 
 
 
 
 | 3 | * This file is part of the mingw-w64 runtime package. | 
 
 
 
 
 | 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | 
 
 
 
 
 | 5 | */ | 
 
 
 
 
 | 6 | #ifndef _WOWNT32_ | 
 
 
 
 
 | 7 | #define _WOWNT32_ | 
 
 
 
 
 | 8 |  | 
 
 
 
 
 | 9 | LPVOID WINAPI WOWGetVDMPointer(DWORD vp,DWORD dwBytes,WINBOOL fProtectedMode); | 
 
 
 
 
 | 10 | LPVOID WINAPI WOWGetVDMPointerFix(DWORD vp,DWORD dwBytes,WINBOOL fProtectedMode); | 
 
 
 
 
 | 11 | VOID WINAPI WOWGetVDMPointerUnfix(DWORD vp); | 
 
 
 
 
 | 12 | WORD WINAPI WOWGlobalAlloc16(WORD wFlags,DWORD cb); | 
 
 
 
 
 | 13 | WORD WINAPI WOWGlobalFree16(WORD hMem); | 
 
 
 
 
 | 14 | DWORD WINAPI WOWGlobalLock16(WORD hMem); | 
 
 
 
 
 | 15 | WINBOOL WINAPI WOWGlobalUnlock16(WORD hMem); | 
 
 
 
 
 | 16 | DWORD WINAPI WOWGlobalAllocLock16(WORD wFlags,DWORD cb,WORD *phMem); | 
 
 
 
 
 | 17 | WORD WINAPI WOWGlobalUnlockFree16(DWORD vpMem); | 
 
 
 
 
 | 18 | DWORD WINAPI WOWGlobalLockSize16(WORD hMem,PDWORD pcb); | 
 
 
 
 
 | 19 | VOID WINAPI WOWYield16(VOID); | 
 
 
 
 
 | 20 | VOID WINAPI WOWDirectedYield16(WORD htask16); | 
 
 
 
 
 | 21 |  | 
 
 
 
 
 | 22 | typedef enum _WOW_HANDLE_TYPE { | 
 
 
 
 
 | 23 | WOW_TYPE_HWND,WOW_TYPE_HMENU,WOW_TYPE_HDWP,WOW_TYPE_HDROP,WOW_TYPE_HDC,WOW_TYPE_HFONT,WOW_TYPE_HMETAFILE,WOW_TYPE_HRGN,WOW_TYPE_HBITMAP, | 
 
 
 
 
 | 24 | WOW_TYPE_HBRUSH,WOW_TYPE_HPALETTE,WOW_TYPE_HPEN,WOW_TYPE_HACCEL,WOW_TYPE_HTASK,WOW_TYPE_FULLHWND | 
 
 
 
 
 | 25 | } WOW_HANDLE_TYPE; | 
 
 
 
 
 | 26 |  | 
 
 
 
 
 | 27 | HANDLE WINAPI WOWHandle32 (WORD,WOW_HANDLE_TYPE); | 
 
 
 
 
 | 28 | WORD WINAPI WOWHandle16 (HANDLE,WOW_HANDLE_TYPE); | 
 
 
 
 
 | 29 |  | 
 
 
 
 
 | 30 | #define HWND_32(h16) ((HWND) (WOWHandle32(h16,WOW_TYPE_HWND))) | 
 
 
 
 
 | 31 | #define HMENU_32(h16) ((HMENU) (WOWHandle32(h16,WOW_TYPE_HMENU))) | 
 
 
 
 
 | 32 | #define HDWP_32(h16) ((HDWP) (WOWHandle32(h16,WOW_TYPE_HDWP))) | 
 
 
 
 
 | 33 | #define HDROP_32(h16) ((HDROP) (WOWHandle32(h16,WOW_TYPE_HDROP))) | 
 
 
 
 
 | 34 | #define HDC_32(h16) ((HDC) (WOWHandle32(h16,WOW_TYPE_HDC))) | 
 
 
 
 
 | 35 | #define HFONT_32(h16) ((HFONT) (WOWHandle32(h16,WOW_TYPE_HFONT))) | 
 
 
 
 
 | 36 | #define HMETAFILE_32(h16) ((HMETAFILE) (WOWHandle32(h16,WOW_TYPE_HMETAFILE))) | 
 
 
 
 
 | 37 | #define HRGN_32(h16) ((HRGN) (WOWHandle32(h16,WOW_TYPE_HRGN))) | 
 
 
 
 
 | 38 | #define HBITMAP_32(h16) ((HBITMAP) (WOWHandle32(h16,WOW_TYPE_HBITMAP))) | 
 
 
 
 
 | 39 | #define HBRUSH_32(h16) ((HBRUSH) (WOWHandle32(h16,WOW_TYPE_HBRUSH))) | 
 
 
 
 
 | 40 | #define HPALETTE_32(h16) ((HPALETTE) (WOWHandle32(h16,WOW_TYPE_HPALETTE))) | 
 
 
 
 
 | 41 | #define HPEN_32(h16) ((HPEN) (WOWHandle32(h16,WOW_TYPE_HPEN))) | 
 
 
 
 
 | 42 | #define HACCEL_32(h16) ((HACCEL) (WOWHandle32(h16,WOW_TYPE_HACCEL))) | 
 
 
 
 
 | 43 | #define HTASK_32(h16) ((DWORD) (WOWHandle32(h16,WOW_TYPE_HTASK))) | 
 
 
 
 
 | 44 | #define FULLHWND_32(h16) ((HWND) (WOWHandle32(h16,WOW_TYPE_FULLHWND))) | 
 
 
 
 
 | 45 |  | 
 
 
 
 
 | 46 | #define HWND_16(h32) (WOWHandle16(h32,WOW_TYPE_HWND)) | 
 
 
 
 
 | 47 | #define HMENU_16(h32) (WOWHandle16(h32,WOW_TYPE_HMENU)) | 
 
 
 
 
 | 48 | #define HDWP_16(h32) (WOWHandle16(h32,WOW_TYPE_HDWP)) | 
 
 
 
 
 | 49 | #define HDROP_16(h32) (WOWHandle16(h32,WOW_TYPE_HDROP)) | 
 
 
 
 
 | 50 | #define HDC_16(h32) (WOWHandle16(h32,WOW_TYPE_HDC)) | 
 
 
 
 
 | 51 | #define HFONT_16(h32) (WOWHandle16(h32,WOW_TYPE_HFONT)) | 
 
 
 
 
 | 52 | #define HMETAFILE_16(h32) (WOWHandle16(h32,WOW_TYPE_HMETAFILE)) | 
 
 
 
 
 | 53 | #define HRGN_16(h32) (WOWHandle16(h32,WOW_TYPE_HRGN)) | 
 
 
 
 
 | 54 | #define HBITMAP_16(h32) (WOWHandle16(h32,WOW_TYPE_HBITMAP)) | 
 
 
 
 
 | 55 | #define HBRUSH_16(h32) (WOWHandle16(h32,WOW_TYPE_HBRUSH)) | 
 
 
 
 
 | 56 | #define HPALETTE_16(h32) (WOWHandle16(h32,WOW_TYPE_HPALETTE)) | 
 
 
 
 
 | 57 | #define HPEN_16(h32) (WOWHandle16(h32,WOW_TYPE_HPEN)) | 
 
 
 
 
 | 58 | #define HACCEL_16(h32) (WOWHandle16(h32,WOW_TYPE_HACCEL)) | 
 
 
 
 
 | 59 | #define HTASK_16(h32) (WOWHandle16(h32,WOW_TYPE_HTASK)) | 
 
 
 
 
 | 60 |  | 
 
 
 
 
 | 61 | DWORD WINAPI WOWCallback16(DWORD vpfn16,DWORD dwParam); | 
 
 
 
 
 | 62 |  | 
 
 
 
 
 | 63 | #define WCB16_MAX_CBARGS (16) | 
 
 
 
 
 | 64 |  | 
 
 
 
 
 | 65 | #define WCB16_PASCAL (0x0) | 
 
 
 
 
 | 66 | #define WCB16_CDECL (0x1) | 
 
 
 
 
 | 67 |  | 
 
 
 
 
 | 68 | WINBOOL WINAPI WOWCallback16Ex(DWORD vpfn16,DWORD dwFlags,DWORD cbArgs,PVOID pArgs,PDWORD pdwRetCode); | 
 
 
 
 
 | 69 | #endif |