2021-11-12 20:03:04 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "Unknown.hpp"
|
|
|
|
#include "ddraw.hpp"
|
|
|
|
|
|
|
|
namespace glrage {
|
|
|
|
namespace ddraw {
|
|
|
|
|
2021-11-14 23:59:19 +01:00
|
|
|
class DirectDrawClipper
|
|
|
|
: public Unknown
|
|
|
|
, public IDirectDrawClipper
|
2021-11-12 20:03:04 +01:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
DirectDrawClipper();
|
|
|
|
virtual ~DirectDrawClipper();
|
|
|
|
|
|
|
|
/*** IUnknown methods ***/
|
|
|
|
virtual HRESULT WINAPI QueryInterface(REFIID riid, LPVOID* ppvObj);
|
|
|
|
virtual ULONG WINAPI AddRef();
|
|
|
|
virtual ULONG WINAPI Release();
|
|
|
|
|
|
|
|
/*** IDirectDrawClipper methods ***/
|
2021-11-14 23:59:19 +01:00
|
|
|
HRESULT WINAPI GetClipList(LPRECT lpRect,
|
|
|
|
LPRGNDATA lpClipList,
|
|
|
|
LPDWORD lpdwSize);
|
2021-11-12 20:03:04 +01:00
|
|
|
HRESULT WINAPI GetHWnd(HWND* lphWnd);
|
|
|
|
HRESULT WINAPI Initialize(LPDIRECTDRAW lpDD, DWORD dwFlags);
|
|
|
|
HRESULT WINAPI IsClipListChanged(BOOL* lpbChanged);
|
|
|
|
HRESULT WINAPI SetClipList(LPRGNDATA lpClipList, DWORD dwFlags);
|
|
|
|
HRESULT WINAPI SetHWnd(DWORD dwFlags, HWND hWnd);
|
|
|
|
|
|
|
|
private:
|
|
|
|
HWND m_hWnd;
|
|
|
|
RGNDATA m_clipList;
|
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace ddraw
|
|
|
|
} // namespace glrage
|