1
0
mirror of https://github.com/FunkyFr3sh/cnc-ddraw.git synced 2025-03-15 06:04:49 +01:00
cnc-ddraw/inc/IDirectDrawClipper.h

45 lines
1.2 KiB
C
Raw Permalink Normal View History

2020-10-13 09:20:52 +02:00
#ifndef IDIRECTDRAWCLIPPER_H
#define IDIRECTDRAWCLIPPER_H
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include "ddraw.h"
2020-10-13 09:20:52 +02:00
struct IDirectDrawClipperImpl;
struct IDirectDrawClipperImplVtbl;
typedef struct IDirectDrawClipperImpl
{
2021-06-11 20:30:43 +02:00
struct IDirectDrawClipperImplVtbl* lpVtbl;
2020-10-13 09:20:52 +02:00
ULONG ref;
HWND hwnd;
HRGN region;
2024-05-27 05:01:54 +02:00
CRITICAL_SECTION cs;
2020-10-13 09:20:52 +02:00
} IDirectDrawClipperImpl;
typedef struct IDirectDrawClipperImplVtbl IDirectDrawClipperImplVtbl;
2021-06-11 20:30:43 +02:00
#undef INTERFACE
#define INTERFACE IDirectDrawClipperImpl
2020-10-13 09:20:52 +02:00
struct IDirectDrawClipperImplVtbl
{
2021-06-11 20:30:43 +02:00
/*** IUnknown methods ***/
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef) (THIS) PURE;
STDMETHOD_(ULONG, Release) (THIS) PURE;
/*** IDirectDrawClipper methods ***/
STDMETHOD(GetClipList)(THIS_ LPRECT, LPRGNDATA, LPDWORD) PURE;
STDMETHOD(GetHWnd)(THIS_ HWND FAR*) PURE;
STDMETHOD(Initialize)(THIS_ LPDIRECTDRAW, DWORD) PURE;
STDMETHOD(IsClipListChanged)(THIS_ BOOL FAR*) PURE;
STDMETHOD(SetClipList)(THIS_ LPRGNDATA, DWORD) PURE;
STDMETHOD(SetHWnd)(THIS_ DWORD, HWND) PURE;
2020-10-13 09:20:52 +02:00
};
extern struct IDirectDrawClipperImplVtbl g_ddc_vtbl;
#endif