wined3d: Add WINED3DDEVTYPE to wined3d_types.h.
diff --git a/dlls/d3d8/d3d8_private.h b/dlls/d3d8/d3d8_private.h index fc975b8..31fe04c 100644 --- a/dlls/d3d8/d3d8_private.h +++ b/dlls/d3d8/d3d8_private.h
@@ -59,7 +59,7 @@ =========================================================================== */ /* Not nice, but it lets wined3d support different versions of directx */ #define D3D8CAPSTOWINECAPS(_pD3D8Caps, _pWineCaps) \ - _pWineCaps->DeviceType = &_pD3D8Caps->DeviceType; \ + _pWineCaps->DeviceType = (WINED3DDEVTYPE *) &_pD3D8Caps->DeviceType; \ _pWineCaps->AdapterOrdinal = &_pD3D8Caps->AdapterOrdinal; \ _pWineCaps->Caps = &_pD3D8Caps->Caps; \ _pWineCaps->Caps2 = &_pD3D8Caps->Caps2; \
diff --git a/dlls/d3d9/d3d9_private.h b/dlls/d3d9/d3d9_private.h index b1ee522..916cff2 100644 --- a/dlls/d3d9/d3d9_private.h +++ b/dlls/d3d9/d3d9_private.h
@@ -57,7 +57,7 @@ =========================================================================== */ /* Not nice, but it lets wined3d support different versions of directx */ #define D3D9CAPSTOWINECAPS(_pD3D9Caps, _pWineCaps) \ - _pWineCaps->DeviceType = &_pD3D9Caps->DeviceType; \ + _pWineCaps->DeviceType = (WINED3DDEVTYPE *) &_pD3D9Caps->DeviceType; \ _pWineCaps->AdapterOrdinal = &_pD3D9Caps->AdapterOrdinal; \ _pWineCaps->Caps = &_pD3D9Caps->Caps; \ _pWineCaps->Caps2 = &_pD3D9Caps->Caps2; \
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index 28b2728..8758d82 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c
@@ -1198,7 +1198,7 @@ #endif } -HRESULT WINAPI IWineD3DImpl_CheckDepthStencilMatch(IWineD3D *iface, UINT Adapter, D3DDEVTYPE DeviceType, +HRESULT WINAPI IWineD3DImpl_CheckDepthStencilMatch(IWineD3D *iface, UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DFORMAT AdapterFormat, WINED3DFORMAT RenderTargetFormat, WINED3DFORMAT DepthStencilFormat) { @@ -1254,7 +1254,7 @@ return hr; } -HRESULT WINAPI IWineD3DImpl_CheckDeviceMultiSampleType(IWineD3D *iface, UINT Adapter, D3DDEVTYPE DeviceType, +HRESULT WINAPI IWineD3DImpl_CheckDeviceMultiSampleType(IWineD3D *iface, UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DFORMAT SurfaceFormat, BOOL Windowed, WINED3DMULTISAMPLE_TYPE MultiSampleType, DWORD* pQualityLevels) { @@ -1285,7 +1285,7 @@ return D3DERR_NOTAVAILABLE; } -HRESULT WINAPI IWineD3DImpl_CheckDeviceType(IWineD3D *iface, UINT Adapter, D3DDEVTYPE CheckType, +HRESULT WINAPI IWineD3DImpl_CheckDeviceType(IWineD3D *iface, UINT Adapter, WINED3DDEVTYPE CheckType, WINED3DFORMAT DisplayFormat, WINED3DFORMAT BackBufferFormat, BOOL Windowed) { IWineD3DImpl *This = (IWineD3DImpl *)iface; @@ -1326,7 +1326,7 @@ return D3DERR_NOTAVAILABLE; } -HRESULT WINAPI IWineD3DImpl_CheckDeviceFormat(IWineD3D *iface, UINT Adapter, D3DDEVTYPE DeviceType, +HRESULT WINAPI IWineD3DImpl_CheckDeviceFormat(IWineD3D *iface, UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DFORMAT AdapterFormat, DWORD Usage, WINED3DRESOURCETYPE RType, WINED3DFORMAT CheckFormat) { IWineD3DImpl *This = (IWineD3DImpl *)iface; TRACE_(d3d_caps)("(%p)-> (STUB) (Adptr:%d, DevType:(%u,%s), AdptFmt:(%u,%s), Use:(%lu,%s), ResTyp:(%x,%s), CheckFmt:(%u,%s)) ", @@ -1418,7 +1418,7 @@ return D3D_OK; } -HRESULT WINAPI IWineD3DImpl_CheckDeviceFormatConversion(IWineD3D *iface, UINT Adapter, D3DDEVTYPE DeviceType, +HRESULT WINAPI IWineD3DImpl_CheckDeviceFormatConversion(IWineD3D *iface, UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DFORMAT SourceFormat, WINED3DFORMAT TargetFormat) { IWineD3DImpl *This = (IWineD3DImpl *)iface; @@ -1434,7 +1434,7 @@ /* Note: d3d8 passes in a pointer to a D3DCAPS8 structure, which is a true subset of a D3DCAPS9 structure. However, it has to come via a void * as the d3d8 interface cannot import the d3d9 header */ -HRESULT WINAPI IWineD3DImpl_GetDeviceCaps(IWineD3D *iface, UINT Adapter, D3DDEVTYPE DeviceType, WINED3DCAPS* pCaps) { +HRESULT WINAPI IWineD3DImpl_GetDeviceCaps(IWineD3D *iface, UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DCAPS* pCaps) { IWineD3DImpl *This = (IWineD3DImpl *)iface; @@ -1457,7 +1457,7 @@ /* ------------------------------------------------ The following fields apply to both d3d8 and d3d9 ------------------------------------------------ */ - *pCaps->DeviceType = (DeviceType == D3DDEVTYPE_HAL) ? D3DDEVTYPE_HAL : D3DDEVTYPE_REF; /* Not quite true, but use h/w supported by opengl I suppose */ + *pCaps->DeviceType = (DeviceType == WINED3DDEVTYPE_HAL) ? WINED3DDEVTYPE_HAL : WINED3DDEVTYPE_REF; /* Not quite true, but use h/w supported by opengl I suppose */ *pCaps->AdapterOrdinal = Adapter; *pCaps->Caps = 0; @@ -1674,7 +1674,7 @@ *pCaps->MaxStreams = MAX_STREAMS; *pCaps->MaxStreamStride = 1024; - if (((wined3d_settings.vs_mode == VS_HW) && GL_SUPPORT(ARB_VERTEX_PROGRAM)) || (wined3d_settings.vs_mode == VS_SW) || (DeviceType == D3DDEVTYPE_REF)) { + if (((wined3d_settings.vs_mode == VS_HW) && GL_SUPPORT(ARB_VERTEX_PROGRAM)) || (wined3d_settings.vs_mode == VS_SW) || (DeviceType == WINED3DDEVTYPE_REF)) { *pCaps->VertexShaderVersion = D3DVS_VERSION(1,1); if (This->gl_info.gl_vendor == VENDOR_MESA || @@ -1688,7 +1688,7 @@ *pCaps->MaxVertexShaderConst = 0; } - if ((wined3d_settings.ps_mode == PS_HW) && GL_SUPPORT(ARB_FRAGMENT_PROGRAM) && (DeviceType != D3DDEVTYPE_REF)) { + if ((wined3d_settings.ps_mode == PS_HW) && GL_SUPPORT(ARB_FRAGMENT_PROGRAM) && (DeviceType != WINED3DDEVTYPE_REF)) { *pCaps->PixelShaderVersion = D3DPS_VERSION(1,4); *pCaps->PixelShader1xMaxValue = 1.0; } else { @@ -1743,7 +1743,7 @@ /* Note due to structure differences between dx8 and dx9 D3DPRESENT_PARAMETERS, and fields being inserted in the middle, a new structure is used in place */ -HRESULT WINAPI IWineD3DImpl_CreateDevice(IWineD3D *iface, UINT Adapter, D3DDEVTYPE DeviceType, HWND hFocusWindow, +HRESULT WINAPI IWineD3DImpl_CreateDevice(IWineD3D *iface, UINT Adapter, WINED3DDEVTYPE DeviceType, HWND hFocusWindow, DWORD BehaviourFlags, WINED3DPRESENT_PARAMETERS* pPresentationParameters, IWineD3DDevice** ppReturnedDeviceInterface, IUnknown *parent, D3DCB_CREATEADDITIONALSWAPCHAIN D3DCB_CreateAdditionalSwapChain) {
diff --git a/include/wine/wined3d_interface.h b/include/wine/wined3d_interface.h index de0eee5..bbbd954 100644 --- a/include/wine/wined3d_interface.h +++ b/include/wine/wined3d_interface.h
@@ -257,13 +257,13 @@ STDMETHOD(EnumAdapterModes)(THIS_ UINT Adapter, UINT Mode, WINED3DFORMAT Format, D3DDISPLAYMODE * pMode) PURE; STDMETHOD(GetAdapterDisplayMode)(THIS_ UINT Adapter, D3DDISPLAYMODE *pMode) PURE; STDMETHOD(GetAdapterIdentifier)(THIS_ UINT Adapter, DWORD Flags, WINED3DADAPTER_IDENTIFIER* pIdentifier) PURE; - STDMETHOD(CheckDeviceMultiSampleType)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, WINED3DFORMAT SurfaceFormat, BOOL Windowed, WINED3DMULTISAMPLE_TYPE MultiSampleType, DWORD *pQuality) PURE; - STDMETHOD(CheckDepthStencilMatch)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, WINED3DFORMAT AdapterFormat, WINED3DFORMAT RenderTargetFormat, WINED3DFORMAT DepthStencilFormat) PURE; - STDMETHOD(CheckDeviceType)(THIS_ UINT Adapter, D3DDEVTYPE CheckType, WINED3DFORMAT DisplayFormat, WINED3DFORMAT BackBufferFormat, BOOL Windowed) PURE; - STDMETHOD(CheckDeviceFormat)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, WINED3DFORMAT AdapterFormat, DWORD Usage, WINED3DRESOURCETYPE RType, WINED3DFORMAT CheckFormat) PURE; - STDMETHOD(CheckDeviceFormatConversion)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, WINED3DFORMAT SourceFormat, WINED3DFORMAT TargetFormat) PURE; - STDMETHOD(GetDeviceCaps)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, WINED3DCAPS *pCaps) PURE; - STDMETHOD(CreateDevice)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType,HWND hFocusWindow, DWORD BehaviorFlags, WINED3DPRESENT_PARAMETERS *pPresentationParameters, struct IWineD3DDevice **ppReturnedDeviceInterface, IUnknown *parent, D3DCB_CREATEADDITIONALSWAPCHAIN pFn3) PURE; + STDMETHOD(CheckDeviceMultiSampleType)(THIS_ UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DFORMAT SurfaceFormat, BOOL Windowed, WINED3DMULTISAMPLE_TYPE MultiSampleType, DWORD *pQuality) PURE; + STDMETHOD(CheckDepthStencilMatch)(THIS_ UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DFORMAT AdapterFormat, WINED3DFORMAT RenderTargetFormat, WINED3DFORMAT DepthStencilFormat) PURE; + STDMETHOD(CheckDeviceType)(THIS_ UINT Adapter, WINED3DDEVTYPE CheckType, WINED3DFORMAT DisplayFormat, WINED3DFORMAT BackBufferFormat, BOOL Windowed) PURE; + STDMETHOD(CheckDeviceFormat)(THIS_ UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DFORMAT AdapterFormat, DWORD Usage, WINED3DRESOURCETYPE RType, WINED3DFORMAT CheckFormat) PURE; + STDMETHOD(CheckDeviceFormatConversion)(THIS_ UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DFORMAT SourceFormat, WINED3DFORMAT TargetFormat) PURE; + STDMETHOD(GetDeviceCaps)(THIS_ UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DCAPS *pCaps) PURE; + STDMETHOD(CreateDevice)(THIS_ UINT Adapter, WINED3DDEVTYPE DeviceType,HWND hFocusWindow, DWORD BehaviorFlags, WINED3DPRESENT_PARAMETERS *pPresentationParameters, struct IWineD3DDevice **ppReturnedDeviceInterface, IUnknown *parent, D3DCB_CREATEADDITIONALSWAPCHAIN pFn3) PURE; }; #undef INTERFACE
diff --git a/include/wine/wined3d_types.h b/include/wine/wined3d_types.h index 5ecc645..3ed8876 100644 --- a/include/wine/wined3d_types.h +++ b/include/wine/wined3d_types.h
@@ -111,6 +111,15 @@ * WineD3D Structures to be used when d3d8 and d3d9 are incompatible */ + +typedef enum _WINED3DDEVTYPE { + WINED3DDEVTYPE_HAL = 1, + WINED3DDEVTYPE_REF = 2, + WINED3DDEVTYPE_SW = 3, + + WINED3DDEVTYPE_FORCE_DWORD = 0xffffffff +} WINED3DDEVTYPE; + typedef enum _WINED3DDEGREETYPE { WINED3DDEGREE_LINEAR = 1, WINED3DDEGREE_QUADRATIC = 2, @@ -572,10 +581,10 @@ #define WINED3DGETDATA_FLUSH (1 << 0) typedef struct _WINED3DDEVICE_CREATION_PARAMETERS { - UINT AdapterOrdinal; - D3DDEVTYPE DeviceType; - HWND hFocusWindow; - DWORD BehaviorFlags; + UINT AdapterOrdinal; + WINED3DDEVTYPE DeviceType; + HWND hFocusWindow; + DWORD BehaviorFlags; } WINED3DDEVICE_CREATION_PARAMETERS; typedef struct _WINED3DDEVINFO_BANDWIDTHTIMINGS { @@ -685,7 +694,7 @@ } WINED3DPSHADERCAPS2_0; typedef struct _WINED3DCAPS { - D3DDEVTYPE *DeviceType; + WINED3DDEVTYPE *DeviceType; UINT *AdapterOrdinal; DWORD *Caps;