diff options
| author | Mathew Maidment <mathew1800@gmail.com> | 2015-12-21 01:57:37 -0500 |
|---|---|---|
| committer | Mathew Maidment <mathew1800@gmail.com> | 2015-12-21 01:57:37 -0500 |
| commit | 365a326798853676bad3c83274744000a47cfa41 (patch) | |
| tree | acf56e852bc06711f07382821f9d115fea060b00 /Source/Core/VideoBackends/OGL/PerfQuery.cpp | |
| parent | 1fbab188adafaf46e252837153cbfa3242a8d3c7 (diff) | |
| parent | f2951828335654d0993ead998b3c547f903501dd (diff) | |
Merge pull request #3369 from lioncash/unique
VideoBackends: Simplify initialization and deinitialization of resources
Diffstat (limited to 'Source/Core/VideoBackends/OGL/PerfQuery.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/OGL/PerfQuery.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/Source/Core/VideoBackends/OGL/PerfQuery.cpp b/Source/Core/VideoBackends/OGL/PerfQuery.cpp index a3e9fde0dc..770a082782 100644 --- a/Source/Core/VideoBackends/OGL/PerfQuery.cpp +++ b/Source/Core/VideoBackends/OGL/PerfQuery.cpp @@ -2,6 +2,8 @@ // Licensed under GPLv2+ // Refer to the license.txt file included. +#include <memory> + #include "Common/GL/GLInterfaceBase.h" #include "Common/GL/GLUtil.h" @@ -10,15 +12,16 @@ namespace OGL { -PerfQueryBase* GetPerfQuery() +std::unique_ptr<PerfQueryBase> GetPerfQuery() { if (GLInterface->GetMode() == GLInterfaceMode::MODE_OPENGLES3 && GLExtensions::Supports("GL_NV_occlusion_query_samples")) - return new PerfQueryGLESNV(); - else if (GLInterface->GetMode() == GLInterfaceMode::MODE_OPENGLES3) - return new PerfQueryGL(GL_ANY_SAMPLES_PASSED); - else - return new PerfQueryGL(GL_SAMPLES_PASSED); + return std::make_unique<PerfQueryGLESNV>(); + + if (GLInterface->GetMode() == GLInterfaceMode::MODE_OPENGLES3) + return std::make_unique<PerfQueryGL>(GL_ANY_SAMPLES_PASSED); + + return std::make_unique<PerfQueryGL>(GL_SAMPLES_PASSED); } PerfQuery::PerfQuery() |
