You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.7 KiB
52 lines
1.7 KiB
#include "devilution.h" |
|
#include <SDL.h> |
|
|
|
namespace dvl { |
|
|
|
extern SDL_Window *window; |
|
extern SDL_Renderer *renderer; |
|
extern SDL_Texture *texture; |
|
extern SDL_Surface *surface; |
|
extern SDL_Palette *palette; |
|
extern SDL_Surface *pal_surface; |
|
|
|
struct StubDraw : public IDirectDraw { |
|
public: |
|
virtual ULONG Release(); |
|
HRESULT CreatePalette(DWORD dwFlags, LPPALETTEENTRY lpColorTable, LPDIRECTDRAWPALETTE *lplpDDPalette, IUnknown *pUnkOuter); |
|
HRESULT CreateSurface(LPDDSURFACEDESC lpDDSurfaceDesc, LPDIRECTDRAWSURFACE *lplpDDSurface, IUnknown *pUnkOuter); |
|
HRESULT SetCooperativeLevel(HWND hWnd, DWORD dwFlags); |
|
HRESULT SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP); |
|
HRESULT WaitForVerticalBlank(DWORD dwFlags, HANDLE hEvent); |
|
|
|
private: |
|
int width = 0; |
|
int height = 0; |
|
}; |
|
|
|
struct StubSurface : public IDirectDrawSurface { |
|
public: |
|
StubSurface(LPDDSURFACEDESC lpDDSurfaceDesc); |
|
~StubSurface(); |
|
virtual ULONG Release(); |
|
HRESULT BltFast(DWORD dwX, DWORD dwY, LPDIRECTDRAWSURFACE lpDDSrcSurface, LPRECT lpSrcRect, DWORD dwTrans); |
|
HRESULT GetCaps(LPDDSCAPS lpDDSCaps); |
|
HRESULT GetDC(HDC *lphDC); |
|
HRESULT GetPixelFormat(LPDDPIXELFORMAT lpDDPixelFormat); |
|
HRESULT IsLost(); |
|
HRESULT Lock(LPRECT lpDestRect, LPDDSURFACEDESC lpDDSurfaceDesc, DWORD dwFlags, HANDLE hEvent); |
|
HRESULT ReleaseDC(HDC hDC); |
|
HRESULT Restore(); |
|
HRESULT SetPalette(LPDIRECTDRAWPALETTE lpDDPalette); |
|
HRESULT Unlock(LPVOID lpSurfaceData); |
|
}; |
|
|
|
struct StubPalette : public IDirectDrawPalette { |
|
public: |
|
virtual ULONG Release(); |
|
HRESULT GetCaps(LPDWORD lpdwCaps); |
|
HRESULT GetEntries(DWORD dwFlags, DWORD dwBase, DWORD dwNumEntries, LPPALETTEENTRY lpEntries); |
|
HRESULT SetEntries(DWORD dwFlags, DWORD dwStartingEntry, DWORD dwCount, LPPALETTEENTRY lpEntries); |
|
}; |
|
|
|
} // namespace dvl
|
|
|