|
|
@ -10,7 +10,6 @@ template<typename TFeature> class UpscalerGraphicsDevice: public Upscaler |
|
|
public: |
|
|
public: |
|
|
void Shutdown() override |
|
|
void Shutdown() override |
|
|
{ |
|
|
{ |
|
|
// Called by AMDUP_ShutdownAPI, destroys all features, cleans up internal resources |
|
|
|
|
|
size_t numFeatures = 0; |
|
|
size_t numFeatures = 0; |
|
|
{ |
|
|
{ |
|
|
std::lock_guard<std::mutex> lock(m_Mutex); |
|
|
std::lock_guard<std::mutex> lock(m_Mutex); |
|
|
@ -37,7 +36,6 @@ public: |
|
|
{ |
|
|
{ |
|
|
std::lock_guard<std::mutex> lock(m_Mutex); |
|
|
std::lock_guard<std::mutex> lock(m_Mutex); |
|
|
|
|
|
|
|
|
// Called by FSR3PluginEvent::eInit event |
|
|
|
|
|
if (initData->featureSlot < 0 || initData->featureSlot >= m_Features.size()) |
|
|
if (initData->featureSlot < 0 || initData->featureSlot >= m_Features.size()) |
|
|
return false; |
|
|
return false; |
|
|
|
|
|
|
|
|
@ -47,7 +45,6 @@ public: |
|
|
|
|
|
|
|
|
void DestroyFeature(uint32_t featureSlot) override |
|
|
void DestroyFeature(uint32_t featureSlot) override |
|
|
{ |
|
|
{ |
|
|
// Called by FSR3PluginEvent::eDestroyFeature event and Shutdown |
|
|
|
|
|
uint64_t dispatchFrameValue = 0; |
|
|
uint64_t dispatchFrameValue = 0; |
|
|
{ |
|
|
{ |
|
|
// We need to lock the features list while we're accessing it, but we also can't hold the lock while blocking the main/render thread at the same time. |
|
|
// We need to lock the features list while we're accessing it, but we also can't hold the lock while blocking the main/render thread at the same time. |
|
|
@ -96,7 +93,6 @@ public: |
|
|
{ |
|
|
{ |
|
|
std::lock_guard<std::mutex> lock(m_Mutex); |
|
|
std::lock_guard<std::mutex> lock(m_Mutex); |
|
|
|
|
|
|
|
|
// Called by FSR3PluginEvent::eExecute event |
|
|
|
|
|
if (execData->featureSlot < 0 || execData->featureSlot >= m_Features.size()) |
|
|
if (execData->featureSlot < 0 || execData->featureSlot >= m_Features.size()) |
|
|
return; |
|
|
return; |
|
|
|
|
|
|
|
|
@ -111,7 +107,6 @@ public: |
|
|
{ |
|
|
{ |
|
|
std::lock_guard<std::mutex> lock(m_Mutex); |
|
|
std::lock_guard<std::mutex> lock(m_Mutex); |
|
|
|
|
|
|
|
|
// Called by FSR3PluginEvent::ePostExecute event |
|
|
|
|
|
if (execData->featureSlot < 0 || execData->featureSlot >= m_Features.size()) |
|
|
if (execData->featureSlot < 0 || execData->featureSlot >= m_Features.size()) |
|
|
return; |
|
|
return; |
|
|
|
|
|
|
|
|
|