reactos/dll/directx/d3d9/d3d9_surface.h

61 lines
2.1 KiB
C

#ifndef _D3D9_SURFACE_H_
#define _D3D9_SURFACE_H_
#include "d3d9_baseobject.h"
struct _D3D9BaseSurface;
typedef struct _D3D9BaseSurfaceVtbl
{
HRESULT (*QueryInterface)(struct _D3D9BaseSurface* iface, REFIID riid, LPVOID* ppvObject);
ULONG (*AddRef)(struct _D3D9BaseSurface* iface);
ULONG (*Release)(struct _D3D9BaseSurface* iface);
IDirect3DDevice9* (*GetDevice)(struct _D3D9BaseSurface* iface);
HRESULT (*SetPrivateData)(struct _D3D9BaseSurface* iface, REFIID riid, CONST LPVOID pData, DWORD DataSize, DWORD Flags);
HRESULT (*GetPrivateData)(struct _D3D9BaseSurface* iface, REFIID riid, LPVOID pData, DWORD* DataSize);
HRESULT (*FreePrivateData)(struct _D3D9BaseSurface* iface, REFIID riid);
DWORD (*SetPriority)(struct _D3D9BaseSurface* iface, DWORD NewPriority);
DWORD (*GetPriority)(struct _D3D9BaseSurface* iface);
VOID (*Load)(struct _D3D9BaseSurface* iface);
D3DRESOURCETYPE (*GetResourceType)(struct _D3D9BaseSurface* iface);
} ID3D9BaseSurfaceVtbl;
typedef struct _D3D9BaseSurface
{
/* 0x0020 */ ID3D9BaseSurfaceVtbl* lpVtbl;
/* 0x0024 */ D3DFORMAT DisplayFormat2; // Back buffer format?
/* 0x0028 */ DWORD dwUnknown0028; // Constant/ref count? (1)
/* 0x002c */ DWORD dwUnknown002c; // Refresh rate?
/* 0x0030 */ D3DPOOL SurfacePool;
/* 0x0034 */ DWORD dwUnknown0034;
/* 0x0038 */ DWORD dwUnknown0038;
/* 0x003c */ DWORD dwWidth;
/* 0x0040 */ DWORD dwHeight;
/* 0x0044 */ D3DPOOL ResourcePool;
/* 0x0048 */ D3DFORMAT DisplayFormat;
/* 0x004c */ DWORD dwUnknown004c;
/* 0x0050 */ DWORD dwUnknown0050;
/* 0x0054 */ DWORD dwUnknown0054;
/* 0x0058 */ DWORD dwBpp;
} D3D9BaseSurface;
typedef struct _D3D9Surface
{
/* 0x0000 */ D3D9BaseObject BaseObject;
/* 0x0020 */ D3D9BaseSurface BaseSurface;
} D3D9Surface;
typedef struct _D3D9DriverSurface
{
/* 0x0000 */ D3D9Surface BaseD3D9Surface;
/* 0x005c */ DWORD dwUnknown5c;
/* 0x0060 */ DWORD dwUnknown60;
/* 0x0064 */ struct _D3D9DriverSurface* pPreviousDriverSurface;
/* 0x0068 */ struct _D3D9DriverSurface* pNextDriverSurface;
/* 0x006c */ DWORD dwUnknown6c[8];
} D3D9DriverSurface;
#endif // _D3D9_SURFACE_H_