31 lines
906 B
C
31 lines
906 B
C
#pragma once
|
|
|
|
struct ISwapChain;
|
|
struct __declspec(novtable) __declspec(uuid("{3ABA91B1-9B3E-4ae6-B5EA-EB24E77B6097}")) IWindow
|
|
{
|
|
virtual ~IWindow() {};
|
|
virtual void Initialize(const string16& argTitle, int argWidth, int argHeight, bool argFullscreen) = 0;
|
|
|
|
virtual LRESULT ProcessMessage(UINT argMessage, WPARAM argWParam, LPARAM argLParam) = 0;
|
|
virtual void SwapBuffers() = 0;
|
|
|
|
virtual void set_Active(bool argActive) = 0;
|
|
virtual bool get_Active() = 0;
|
|
|
|
virtual void set_Fullscreen(bool argFullscreen) = 0;
|
|
virtual bool get_Fullscreen() = 0;
|
|
|
|
virtual void set_VSync(bool argUseVSync) = 0;
|
|
virtual bool get_VSync() = 0;
|
|
|
|
virtual void set_DeviceContext(HDC argDeviceContext) = 0;
|
|
virtual HDC get_DeviceContext() = 0;
|
|
|
|
virtual void set_Title(const string16& argTitle) = 0;
|
|
virtual string16 get_Title() = 0;
|
|
|
|
virtual HWND get_Handle() = 0;
|
|
|
|
virtual ISwapChain& get_SwapChain() const = 0;
|
|
};
|