mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-03-14 22:29:15 +01:00
[dxgi] Implement IDXGIOutput5
This commit is contained in:
parent
3e8a6ec463
commit
5cb7f26bb7
@ -56,7 +56,8 @@ namespace dxvk {
|
|||||||
|| riid == __uuidof(IDXGIOutput1)
|
|| riid == __uuidof(IDXGIOutput1)
|
||||||
|| riid == __uuidof(IDXGIOutput2)
|
|| riid == __uuidof(IDXGIOutput2)
|
||||||
|| riid == __uuidof(IDXGIOutput3)
|
|| riid == __uuidof(IDXGIOutput3)
|
||||||
|| riid == __uuidof(IDXGIOutput4)) {
|
|| riid == __uuidof(IDXGIOutput4)
|
||||||
|
|| riid == __uuidof(IDXGIOutput5)) {
|
||||||
*ppvObject = ref(this);
|
*ppvObject = ref(this);
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
@ -416,12 +417,28 @@ namespace dxvk {
|
|||||||
HRESULT STDMETHODCALLTYPE DxgiOutput::DuplicateOutput(
|
HRESULT STDMETHODCALLTYPE DxgiOutput::DuplicateOutput(
|
||||||
IUnknown* pDevice,
|
IUnknown* pDevice,
|
||||||
IDXGIOutputDuplication** ppOutputDuplication) {
|
IDXGIOutputDuplication** ppOutputDuplication) {
|
||||||
|
return DuplicateOutput1(pDevice, 0, 0, nullptr, ppOutputDuplication);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
HRESULT STDMETHODCALLTYPE DxgiOutput::DuplicateOutput1(
|
||||||
|
IUnknown* pDevice,
|
||||||
|
UINT Flags,
|
||||||
|
UINT SupportedFormatsCount,
|
||||||
|
const DXGI_FORMAT* pSupportedFormats,
|
||||||
|
IDXGIOutputDuplication** ppOutputDuplication) {
|
||||||
|
InitReturnPtr(ppOutputDuplication);
|
||||||
|
|
||||||
|
if (!pDevice)
|
||||||
|
return E_INVALIDARG;
|
||||||
|
|
||||||
static bool s_errorShown = false;
|
static bool s_errorShown = false;
|
||||||
|
|
||||||
if (!std::exchange(s_errorShown, true))
|
if (!std::exchange(s_errorShown, true))
|
||||||
Logger::warn("DxgiOutput::DuplicateOutput: Stub");
|
Logger::err("DxgiOutput::DuplicateOutput1: Not implemented");
|
||||||
|
|
||||||
return E_NOTIMPL;
|
// At least return a valid error code
|
||||||
|
return DXGI_ERROR_UNSUPPORTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ namespace dxvk {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class DxgiOutput : public DxgiObject<IDXGIOutput4> {
|
class DxgiOutput : public DxgiObject<IDXGIOutput5> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
@ -101,6 +101,13 @@ namespace dxvk {
|
|||||||
IUnknown* pDevice,
|
IUnknown* pDevice,
|
||||||
IDXGIOutputDuplication** ppOutputDuplication) final;
|
IDXGIOutputDuplication** ppOutputDuplication) final;
|
||||||
|
|
||||||
|
HRESULT STDMETHODCALLTYPE DuplicateOutput1(
|
||||||
|
IUnknown* pDevice,
|
||||||
|
UINT Flags,
|
||||||
|
UINT SupportedFormatsCount,
|
||||||
|
const DXGI_FORMAT* pSupportedFormats,
|
||||||
|
IDXGIOutputDuplication** ppOutputDuplication) final;
|
||||||
|
|
||||||
BOOL STDMETHODCALLTYPE SupportsOverlays() final;
|
BOOL STDMETHODCALLTYPE SupportsOverlays() final;
|
||||||
|
|
||||||
HRESULT STDMETHODCALLTYPE CheckOverlaySupport(
|
HRESULT STDMETHODCALLTYPE CheckOverlaySupport(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user