ReactOS 0.4.16-dev-321-g63bb46a
d3d9_swapchain.h
Go to the documentation of this file.
1/*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS ReactX
4 * FILE: dll/directx/d3d9/d3d9_swapchain.h
5 * PURPOSE: Direct3D9's swap chain object
6 * PROGRAMERS: Gregor Gullwi <gbrunmar (dot) ros (at) gmail (dot) com>
7 */
8#ifndef _D3D9_SWAPCHAIN_H_
9#define _D3D9_SWAPCHAIN_H_
10
11#include "d3d9_common.h"
12#include <d3d9.h>
13#include <ddraw.h>
14#include "d3d9_baseobject.h"
15
17
19{
21/* 0x0020 */ struct IDirect3DSwapChain9Vtbl* lpVtbl;
22/* 0x0024 */ DWORD dwUnknown0024;
23/* 0x0028 */ struct _D3D9Surface* pPrimarySurface;
25/* 0x0030 */ DWORD dwUnknown0030;
28/* 0x003c */ DWORD ChainIndex;
31/* 0x007c */ DWORD dwUnknown007c;
32/* 0x0080 */ DWORD dwUnknown0080[2]; /* Extended format? */
33/* 0x0088 */ struct _D3D9Cursor* pCursor;
34/* 0x008c */ DWORD dwUnknown008c[4];
35/* 0x009c */ struct _D3D9_Unknown6BC* pUnknown6BC;
37/* 0x00a4 */ DWORD dwUnknown00a4;
38/* 0x00a8 */ DWORD dwUnknown00a8;
39/* 0x00ac */ DWORD dwWidth;
40/* 0x00b0 */ DWORD dwHeight;
41/* 0x00b4 */ DWORD dwUnknown00b4;
42/* 0x00b8 */ DWORD dwUnknown00b8;
43/* 0x00bc */ DWORD dwUnknown00bc;
44/* 0x00c0 */ DWORD dwWidth2;
45/* 0x00c4 */ DWORD dwHeight2;
46/* 0x00c8 */ DWORD dwUnknown00c8;
47/* 0x00cc */ DWORD dwUnknown00cc;
48/* 0x00d0 */ DWORD dwUnknown00d0;
49/* 0x00d4 */ DWORD dwUnknown00d4;
50/* 0x00d8 */ DWORD dwUnknown00d8;
51/* 0x00dc */ DWORD dwUnknown00dc;
52/* 0x00e0 */ DWORD dwDevModeScale;
53/* 0x00e4 */ DWORD dwUnknown00e4;
54/* 0x00e8 */ DWORD dwUnknown00e8;
55/* 0x00ec */ DWORD dwUnknown00ec;
56/* 0x00f0 */ DWORD dwUnknown00f0[27];
57
58/* 0x015c */ LPVOID pUnknown015c;
59/* 0x0160 */ DWORD dwUnknown0160[4];
60/* 0x0170 */ HRESULT hResult;
61
62/* 0x0174 */ DWORD dwUnknown0174[26];
63
64/* 0x01DC */ DWORD dwUnknownFlags; /* 1 = Show frame rate, 2 = Flip without vsync */
66/* 0x01E4 */ DWORD dwUnknown01dc[4];
67
69/* 0x01f8 */ DWORD dwUnknown01f8;
70/* 0x01fc */ DWORD dwUnknown01fc;
73
75Direct3DSwapChain9_INT* CreateDirect3DSwapChain9(enum REF_TYPE RefType, struct _Direct3DDevice9_INT* pBaseDevice, DWORD ChainIndex);
76
78HRESULT Direct3DSwapChain9_Init(Direct3DSwapChain9_INT* pThisSwapChain, D3DPRESENT_PARAMETERS* pPresentationParameters);
79HRESULT Direct3DSwapChain9_Reset(Direct3DSwapChain9_INT* pThisSwapChain, D3DPRESENT_PARAMETERS* pPresentationParameters);
82
83#endif // _D3D9_SWAPCHAIN_H_
enum _D3DSWAPEFFECT D3DSWAPEFFECT
struct IDirect3DSwapChain9 * LPDIRECT3DSWAPCHAIN9
Definition: d3d9.h:145
REF_TYPE
struct _Direct3DSwapChain9_INT * LPDIRECT3DSWAPCHAIN9_INT
VOID Direct3DSwapChain9_SetDisplayMode(Direct3DSwapChain9_INT *pThisSwapChain, D3DPRESENT_PARAMETERS *pPresentationParameters)
HRESULT Direct3DSwapChain9_Reset(Direct3DSwapChain9_INT *pThisSwapChain, D3DPRESENT_PARAMETERS *pPresentationParameters)
VOID Direct3DSwapChain9_SetGammaRamp(Direct3DSwapChain9_INT *pThisSwapChain, DWORD Flags, CONST D3DGAMMARAMP *pRamp)
struct _Direct3DSwapChain9_INT Direct3DSwapChain9_INT
LPDIRECT3DSWAPCHAIN9_INT IDirect3DSwapChain9ToImpl(LPDIRECT3DSWAPCHAIN9 iface)
Direct3DSwapChain9_INT * CreateDirect3DSwapChain9(enum REF_TYPE RefType, struct _Direct3DDevice9_INT *pBaseDevice, DWORD ChainIndex)
HRESULT Direct3DSwapChain9_Init(Direct3DSwapChain9_INT *pThisSwapChain, D3DPRESENT_PARAMETERS *pPresentationParameters)
VOID Direct3DSwapChain9_GetGammaRamp(Direct3DSwapChain9_INT *pThisSwapChain, D3DGAMMARAMP *pRamp)
#define FAR
Definition: zlib.h:34
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
#define CONST
Definition: pedump.c:81
struct _D3D9Surface * pExtendedPrimarySurface
struct _D3D9_Unknown6BC * pUnknown6BC
D3DPRESENT_PARAMETERS PresentParameters
struct IDirect3DSwapChain9Vtbl * lpVtbl
struct _D3D9Cursor * pCursor
D3DSWAPEFFECT SwapEffect
struct _D3D9Surface * pPrimarySurface
D3D9BaseObject BaseObject
struct _D3D9DriverSurface ** ppBackBufferList
uint32_t * LPDWORD
Definition: typedefs.h:59
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170