add define for localMutex and disable it for now

This commit is contained in:
cdozdil
2024-12-21 22:42:12 +03:00
parent ac8921d35f
commit 192cd25cb3
2 changed files with 16 additions and 4 deletions
+10 -3
View File
@@ -116,7 +116,9 @@ HRESULT WrappedIDXGISwapChain4::ResizeBuffers(UINT BufferCount, UINT Width, UINT
{
LOG_DEBUG("");
#ifdef USE_LOCAL_MUTEX
std::lock_guard<std::mutex> lock(_localMutex);
#endif
#ifdef USE_MUTEX_FOR_FFX
LOG_TRACE("Waiting mutex");
@@ -225,7 +227,6 @@ HRESULT WrappedIDXGISwapChain4::ResizeBuffers(UINT BufferCount, UINT Width, UINT
HRESULT STDMETHODCALLTYPE WrappedIDXGISwapChain4::GetContainingOutput(IDXGIOutput** ppOutput)
{
//std::lock_guard<std::mutex> lock(_localMutex);
return m_pReal->GetContainingOutput(ppOutput);
}
@@ -234,7 +235,9 @@ HRESULT WrappedIDXGISwapChain4::ResizeBuffers1(UINT BufferCount, UINT Width, UIN
{
LOG_DEBUG("");
#ifdef USE_LOCAL_MUTEX
std::lock_guard<std::mutex> lock(_localMutex);
#endif
#ifdef USE_MUTEX_FOR_FFX
LOG_TRACE("Waiting mutex");
@@ -368,7 +371,9 @@ HRESULT WrappedIDXGISwapChain4::SetFullscreenState(BOOL Fullscreen, IDXGIOutput*
//}
{
#ifdef USE_LOCAL_MUTEX
std::lock_guard<std::mutex> lock(_localMutex);
#endif
#ifdef USE_MUTEX_FOR_FFX
LOG_TRACE("Waiting mutex");
@@ -423,13 +428,11 @@ HRESULT WrappedIDXGISwapChain4::SetFullscreenState(BOOL Fullscreen, IDXGIOutput*
HRESULT WrappedIDXGISwapChain4::GetFullscreenState(BOOL* pFullscreen, IDXGIOutput** ppTarget)
{
//std::lock_guard<std::mutex> lock(_localMutex);
return m_pReal->GetFullscreenState(pFullscreen, ppTarget);
}
HRESULT WrappedIDXGISwapChain4::GetBuffer(UINT Buffer, REFIID riid, void** ppSurface)
{
//std::lock_guard<std::mutex> lock(_localMutex);
return m_pReal->GetBuffer(Buffer, riid, ppSurface);
}
@@ -443,7 +446,9 @@ HRESULT WrappedIDXGISwapChain4::Present(UINT SyncInterval, UINT Flags)
if (m_pReal == nullptr)
return DXGI_ERROR_DEVICE_REMOVED;
#ifdef USE_LOCAL_MUTEX
std::lock_guard<std::mutex> lock(_localMutex);
#endif
HRESULT result;
@@ -460,7 +465,9 @@ HRESULT WrappedIDXGISwapChain4::Present1(UINT SyncInterval, UINT Flags, const DX
if (m_pReal1 == nullptr)
return DXGI_ERROR_DEVICE_REMOVED;
#ifdef USE_LOCAL_MUTEX
std::lock_guard<std::mutex> lock(_localMutex);
#endif
HRESULT result;
+6 -1
View File
@@ -1,9 +1,12 @@
//#pragma once
#pragma once
#include "../pch.h"
#include "dxgi1_6.h"
#include "d3d12.h"
//#define USE_LOCAL_MUTEX
typedef HRESULT(*PFN_SC_Present)(IDXGISwapChain*, UINT, UINT, const DXGI_PRESENT_PARAMETERS*, IUnknown*, HWND);
typedef void(*PFN_SC_Clean)(bool, HWND);
typedef void(*PFN_SC_Release)(HWND);
@@ -260,7 +263,9 @@ struct DECLSPEC_UUID("3af622a3-82d0-49cd-994f-cce05122c222") WrappedIDXGISwapCha
PFN_SC_Release ReleaseTrig = nullptr;
HWND Handle = nullptr;
#ifdef USE_LOCAL_MUTEX
std::mutex _localMutex;
#endif
int id = 0;
};