1
0
mirror of https://github.com/EduApps-CDG/OpenDX synced 2024-12-30 09:45:37 +01:00

[d3d11] Implement ID3D11DeviceContext4

This commit is contained in:
Philip Rebohle 2019-09-16 13:17:00 +02:00
parent 0599a82dee
commit f9d9307a28
No known key found for this signature in database
GPG Key ID: C8CC613427A31C99
6 changed files with 51 additions and 2 deletions

View File

@ -56,7 +56,8 @@ namespace dxvk {
|| riid == __uuidof(ID3D11DeviceContext) || riid == __uuidof(ID3D11DeviceContext)
|| riid == __uuidof(ID3D11DeviceContext1) || riid == __uuidof(ID3D11DeviceContext1)
|| riid == __uuidof(ID3D11DeviceContext2) || riid == __uuidof(ID3D11DeviceContext2)
|| riid == __uuidof(ID3D11DeviceContext3)) { || riid == __uuidof(ID3D11DeviceContext3)
|| riid == __uuidof(ID3D11DeviceContext4)) {
*ppvObject = ref(this); *ppvObject = ref(this);
return S_OK; return S_OK;
} }

View File

@ -17,7 +17,7 @@ namespace dxvk {
class D3D11Device; class D3D11Device;
class D3D11DeviceContext : public D3D11DeviceChild<ID3D11DeviceContext3> { class D3D11DeviceContext : public D3D11DeviceChild<ID3D11DeviceContext4> {
friend class D3D11DeviceContextExt; friend class D3D11DeviceContextExt;
public: public:

View File

@ -46,6 +46,22 @@ namespace dxvk {
} }
HRESULT STDMETHODCALLTYPE D3D11DeferredContext::Signal(
ID3D11Fence* pFence,
UINT64 Value) {
Logger::err("D3D11: Signal called on a deferred context");
return DXGI_ERROR_INVALID_CALL;
}
HRESULT STDMETHODCALLTYPE D3D11DeferredContext::Wait(
ID3D11Fence* pFence,
UINT64 Value) {
Logger::err("D3D11: Wait called on a deferred context");
return DXGI_ERROR_INVALID_CALL;
}
void STDMETHODCALLTYPE D3D11DeferredContext::ExecuteCommandList( void STDMETHODCALLTYPE D3D11DeferredContext::ExecuteCommandList(
ID3D11CommandList* pCommandList, ID3D11CommandList* pCommandList,
BOOL RestoreContextState) { BOOL RestoreContextState) {

View File

@ -46,6 +46,14 @@ namespace dxvk {
D3D11_CONTEXT_TYPE ContextType, D3D11_CONTEXT_TYPE ContextType,
HANDLE hEvent); HANDLE hEvent);
HRESULT STDMETHODCALLTYPE Signal(
ID3D11Fence* pFence,
UINT64 Value);
HRESULT STDMETHODCALLTYPE Wait(
ID3D11Fence* pFence,
UINT64 Value);
void STDMETHODCALLTYPE ExecuteCommandList( void STDMETHODCALLTYPE ExecuteCommandList(
ID3D11CommandList* pCommandList, ID3D11CommandList* pCommandList,
BOOL RestoreContextState); BOOL RestoreContextState);

View File

@ -140,6 +140,22 @@ namespace dxvk {
} }
HRESULT STDMETHODCALLTYPE D3D11ImmediateContext::Signal(
ID3D11Fence* pFence,
UINT64 Value) {
Logger::err("D3D11ImmediateContext::Signal: Not implemented");
return E_NOTIMPL;
}
HRESULT STDMETHODCALLTYPE D3D11ImmediateContext::Wait(
ID3D11Fence* pFence,
UINT64 Value) {
Logger::err("D3D11ImmediateContext::Wait: Not implemented");
return E_NOTIMPL;
}
void STDMETHODCALLTYPE D3D11ImmediateContext::ExecuteCommandList( void STDMETHODCALLTYPE D3D11ImmediateContext::ExecuteCommandList(
ID3D11CommandList* pCommandList, ID3D11CommandList* pCommandList,
BOOL RestoreContextState) { BOOL RestoreContextState) {

View File

@ -40,6 +40,14 @@ namespace dxvk {
D3D11_CONTEXT_TYPE ContextType, D3D11_CONTEXT_TYPE ContextType,
HANDLE hEvent); HANDLE hEvent);
HRESULT STDMETHODCALLTYPE Signal(
ID3D11Fence* pFence,
UINT64 Value);
HRESULT STDMETHODCALLTYPE Wait(
ID3D11Fence* pFence,
UINT64 Value);
void STDMETHODCALLTYPE ExecuteCommandList( void STDMETHODCALLTYPE ExecuteCommandList(
ID3D11CommandList* pCommandList, ID3D11CommandList* pCommandList,
BOOL RestoreContextState); BOOL RestoreContextState);