D3D11: Make stateman a unique_ptr

This commit is contained in:
Stenzek 2019-03-29 19:55:00 +10:00
parent 3b86c93285
commit d0d010f854
3 changed files with 5 additions and 5 deletions

View File

@ -156,14 +156,13 @@ bool Create(u32 adapter_index, bool enable_debug_layer)
g_Config.backend_info.bSupportsGSInstancing = shader_model_5_supported;
g_Config.backend_info.bSupportsSSAA = shader_model_5_supported;
stateman = new StateManager();
stateman = std::make_unique<StateManager>();
return true;
}
void Destroy()
{
delete stateman;
stateman = nullptr;
stateman.reset();
context->ClearState();
context->Flush();

View File

@ -20,7 +20,7 @@ namespace DX11
{
namespace D3D
{
StateManager* stateman;
std::unique_ptr<StateManager> stateman;
StateManager::StateManager() = default;
StateManager::~StateManager() = default;

View File

@ -6,6 +6,7 @@
#include <array>
#include <cstddef>
#include <memory>
#include <mutex>
#include <unordered_map>
@ -296,7 +297,7 @@ private:
ID3D11ComputeShader* m_compute_shader = nullptr;
};
extern StateManager* stateman;
extern std::unique_ptr<StateManager> stateman;
} // namespace D3D