1 /*
2 * Copyright 2011 Joakim Sindholt <[email protected]>
3 * SPDX-License-Identifier: MIT
4 */
5
6 #ifndef _NINE_SWAPCHAIN9EX_H_
7 #define _NINE_SWAPCHAIN9EX_H_
8
9 #include "swapchain9.h"
10
11 struct NineSwapChain9Ex
12 {
13 struct NineSwapChain9 base;
14 };
15 static inline struct NineSwapChain9Ex *
NineSwapChain9Ex(void * data)16 NineSwapChain9Ex( void *data )
17 {
18 return (struct NineSwapChain9Ex *)data;
19 }
20
21 HRESULT
22 NineSwapChain9Ex_new( struct NineDevice9 *pDevice,
23 BOOL implicit,
24 ID3DPresent *pPresent,
25 D3DPRESENT_PARAMETERS *pPresentationParameters,
26 struct d3dadapter9_context *pCTX,
27 HWND hFocusWindow,
28 D3DDISPLAYMODEEX *mode,
29 struct NineSwapChain9Ex **ppOut );
30
31 HRESULT NINE_WINAPI
32 NineSwapChain9Ex_GetLastPresentCount( struct NineSwapChain9Ex *This,
33 UINT *pLastPresentCount );
34
35 HRESULT NINE_WINAPI
36 NineSwapChain9Ex_GetPresentStats( struct NineSwapChain9Ex *This,
37 D3DPRESENTSTATS *pPresentationStatistics );
38
39 HRESULT NINE_WINAPI
40 NineSwapChain9Ex_GetDisplayModeEx( struct NineSwapChain9Ex *This,
41 D3DDISPLAYMODEEX *pMode,
42 D3DDISPLAYROTATION *pRotation );
43
44 #endif /* _NINE_SWAPCHAIN9EX_H_ */
45