| 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 _INC_DCIMAN | 
 
 
 
 
 | 7 | #define _INC_DCIMAN | 
 
 
 
 
 | 8 |  | 
 
 
 
 
 | 9 | #ifdef __cplusplus | 
 
 
 
 
 | 10 | #define __inline inline | 
 
 
 
 
 | 11 | extern "C" { | 
 
 
 
 
 | 12 | #endif | 
 
 
 
 
 | 13 |  | 
 
 
 
 
 | 14 | #include "dciddi.h" | 
 
 
 
 
 | 15 |  | 
 
 
 
 
 | 16 | DECLARE_HANDLE(HWINWATCH); | 
 
 
 
 
 | 17 |  | 
 
 
 
 
 | 18 | extern HDC WINAPI DCIOpenProvider(void); | 
 
 
 
 
 | 19 | extern void WINAPI DCICloseProvider(HDC hdc); | 
 
 
 
 
 | 20 |  | 
 
 
 
 
 | 21 | extern int WINAPI DCICreatePrimary(HDC hdc,LPDCISURFACEINFO *lplpSurface); | 
 
 
 
 
 | 22 | extern int WINAPI DCICreateOffscreen(HDC hdc,DWORD dwCompression,DWORD dwRedMask,DWORD dwGreenMask,DWORD dwBlueMask,DWORD dwWidth,DWORD dwHeight,DWORD dwDCICaps,DWORD dwBitCount,LPDCIOFFSCREEN *lplpSurface); | 
 
 
 
 
 | 23 | extern int WINAPI DCICreateOverlay(HDC hdc,LPVOID lpOffscreenSurf,LPDCIOVERLAY *lplpSurface); | 
 
 
 
 
 | 24 | extern int WINAPI DCIEnum(HDC hdc,LPRECT lprDst,LPRECT lprSrc,LPVOID lpFnCallback,LPVOID lpContext); | 
 
 
 
 
 | 25 | extern DCIRVAL WINAPI DCISetSrcDestClip(LPDCIOFFSCREEN pdci,LPRECT srcrc,LPRECT destrc,LPRGNDATA prd); | 
 
 
 
 
 | 26 |  | 
 
 
 
 
 | 27 | extern HWINWATCH WINAPI WinWatchOpen(HWND hwnd); | 
 
 
 
 
 | 28 | extern void WINAPI WinWatchClose(HWINWATCH hWW); | 
 
 
 
 
 | 29 | extern UINT WINAPI WinWatchGetClipList(HWINWATCH hWW,LPRECT prc,UINT size,LPRGNDATA prd); | 
 
 
 
 
 | 30 | extern WINBOOL WINAPI WinWatchDidStatusChange(HWINWATCH hWW); | 
 
 
 
 
 | 31 | extern DWORD WINAPI GetWindowRegionData(HWND hwnd,DWORD size,LPRGNDATA prd); | 
 
 
 
 
 | 32 | extern DWORD WINAPI GetDCRegionData(HDC hdc,DWORD size,LPRGNDATA prd); | 
 
 
 
 
 | 33 |  | 
 
 
 
 
 | 34 | #define WINWATCHNOTIFY_START 0 | 
 
 
 
 
 | 35 | #define WINWATCHNOTIFY_STOP 1 | 
 
 
 
 
 | 36 | #define WINWATCHNOTIFY_DESTROY 2 | 
 
 
 
 
 | 37 | #define WINWATCHNOTIFY_CHANGING 3 | 
 
 
 
 
 | 38 | #define WINWATCHNOTIFY_CHANGED 4 | 
 
 
 
 
 | 39 | typedef void (CALLBACK *WINWATCHNOTIFYPROC)(HWINWATCH hww,HWND hwnd,DWORD code,LPARAM lParam); | 
 
 
 
 
 | 40 |  | 
 
 
 
 
 | 41 | extern WINBOOL WINAPI WinWatchNotify(HWINWATCH hWW,WINWATCHNOTIFYPROC NotifyCallback,LPARAM NotifyParam); | 
 
 
 
 
 | 42 |  | 
 
 
 
 
 | 43 | extern void WINAPI DCIEndAccess(LPDCISURFACEINFO pdci); | 
 
 
 
 
 | 44 | extern DCIRVAL WINAPI DCIBeginAccess(LPDCISURFACEINFO pdci,int x,int y,int dx,int dy); | 
 
 
 
 
 | 45 | extern void WINAPI DCIDestroy(LPDCISURFACEINFO pdci); | 
 
 
 
 
 | 46 | extern DCIRVAL WINAPI DCIDraw(LPDCIOFFSCREEN pdci); | 
 
 
 
 
 | 47 | extern DCIRVAL WINAPI DCISetClipList(LPDCIOFFSCREEN pdci,LPRGNDATA prd); | 
 
 
 
 
 | 48 | extern DCIRVAL WINAPI DCISetDestination(LPDCIOFFSCREEN pdci,LPRECT dst,LPRECT src); | 
 
 
 
 
 | 49 |  | 
 
 
 
 
 | 50 | #ifdef __cplusplus | 
 
 
 
 
 | 51 | } | 
 
 
 
 
 | 52 | #endif | 
 
 
 
 
 | 53 | #endif |