diff options
| author | 2021-01-05 04:09:39 -0300 | |
|---|---|---|
| committer | 2021-02-13 02:16:19 -0300 | |
| commit | 75ccd9959ca7aa78b71fbb800ed2127d8613e9dc (patch) | |
| tree | 3b9b5c0779cff69ef135bb3394ae70a0d3a9804d /src/video_core/engines | |
| parent | tests/buffer_base: Add cached CPU writes tests (diff) | |
| download | yuzu-75ccd9959ca7aa78b71fbb800ed2127d8613e9dc.tar.gz yuzu-75ccd9959ca7aa78b71fbb800ed2127d8613e9dc.tar.xz yuzu-75ccd9959ca7aa78b71fbb800ed2127d8613e9dc.zip | |
gpu: Report renderer errors with exceptions
Instead of using a two step initialization to report errors, initialize
the GPU renderer and rasterizer on the constructor and report errors
through std::runtime_error.
Diffstat (limited to 'src/video_core/engines')
| -rw-r--r-- | src/video_core/engines/fermi_2d.cpp | 4 | ||||
| -rw-r--r-- | src/video_core/engines/fermi_2d.h | 2 | ||||
| -rw-r--r-- | src/video_core/engines/kepler_compute.cpp | 4 | ||||
| -rw-r--r-- | src/video_core/engines/kepler_compute.h | 2 | ||||
| -rw-r--r-- | src/video_core/engines/maxwell_3d.cpp | 4 | ||||
| -rw-r--r-- | src/video_core/engines/maxwell_3d.h | 2 |
6 files changed, 9 insertions, 9 deletions
diff --git a/src/video_core/engines/fermi_2d.cpp b/src/video_core/engines/fermi_2d.cpp index a01d334ad..0f640fdae 100644 --- a/src/video_core/engines/fermi_2d.cpp +++ b/src/video_core/engines/fermi_2d.cpp | |||
| @@ -18,8 +18,8 @@ Fermi2D::Fermi2D() { | |||
| 18 | 18 | ||
| 19 | Fermi2D::~Fermi2D() = default; | 19 | Fermi2D::~Fermi2D() = default; |
| 20 | 20 | ||
| 21 | void Fermi2D::BindRasterizer(VideoCore::RasterizerInterface& rasterizer_) { | 21 | void Fermi2D::BindRasterizer(VideoCore::RasterizerInterface* rasterizer_) { |
| 22 | rasterizer = &rasterizer_; | 22 | rasterizer = rasterizer_; |
| 23 | } | 23 | } |
| 24 | 24 | ||
| 25 | void Fermi2D::CallMethod(u32 method, u32 method_argument, bool is_last_call) { | 25 | void Fermi2D::CallMethod(u32 method, u32 method_argument, bool is_last_call) { |
diff --git a/src/video_core/engines/fermi_2d.h b/src/video_core/engines/fermi_2d.h index 0de3280a2..c808a577d 100644 --- a/src/video_core/engines/fermi_2d.h +++ b/src/video_core/engines/fermi_2d.h | |||
| @@ -38,7 +38,7 @@ public: | |||
| 38 | ~Fermi2D(); | 38 | ~Fermi2D(); |
| 39 | 39 | ||
| 40 | /// Binds a rasterizer to this engine. | 40 | /// Binds a rasterizer to this engine. |
| 41 | void BindRasterizer(VideoCore::RasterizerInterface& rasterizer); | 41 | void BindRasterizer(VideoCore::RasterizerInterface* rasterizer); |
| 42 | 42 | ||
| 43 | /// Write the value to the register identified by method. | 43 | /// Write the value to the register identified by method. |
| 44 | void CallMethod(u32 method, u32 method_argument, bool is_last_call) override; | 44 | void CallMethod(u32 method, u32 method_argument, bool is_last_call) override; |
diff --git a/src/video_core/engines/kepler_compute.cpp b/src/video_core/engines/kepler_compute.cpp index ba387506e..ed29fc7ac 100644 --- a/src/video_core/engines/kepler_compute.cpp +++ b/src/video_core/engines/kepler_compute.cpp | |||
| @@ -21,8 +21,8 @@ KeplerCompute::KeplerCompute(Core::System& system_, MemoryManager& memory_manage | |||
| 21 | 21 | ||
| 22 | KeplerCompute::~KeplerCompute() = default; | 22 | KeplerCompute::~KeplerCompute() = default; |
| 23 | 23 | ||
| 24 | void KeplerCompute::BindRasterizer(VideoCore::RasterizerInterface& rasterizer_) { | 24 | void KeplerCompute::BindRasterizer(VideoCore::RasterizerInterface* rasterizer_) { |
| 25 | rasterizer = &rasterizer_; | 25 | rasterizer = rasterizer_; |
| 26 | } | 26 | } |
| 27 | 27 | ||
| 28 | void KeplerCompute::CallMethod(u32 method, u32 method_argument, bool is_last_call) { | 28 | void KeplerCompute::CallMethod(u32 method, u32 method_argument, bool is_last_call) { |
diff --git a/src/video_core/engines/kepler_compute.h b/src/video_core/engines/kepler_compute.h index 9f0a7b76d..7c40cba38 100644 --- a/src/video_core/engines/kepler_compute.h +++ b/src/video_core/engines/kepler_compute.h | |||
| @@ -46,7 +46,7 @@ public: | |||
| 46 | ~KeplerCompute(); | 46 | ~KeplerCompute(); |
| 47 | 47 | ||
| 48 | /// Binds a rasterizer to this engine. | 48 | /// Binds a rasterizer to this engine. |
| 49 | void BindRasterizer(VideoCore::RasterizerInterface& rasterizer); | 49 | void BindRasterizer(VideoCore::RasterizerInterface* rasterizer); |
| 50 | 50 | ||
| 51 | static constexpr std::size_t NumConstBuffers = 8; | 51 | static constexpr std::size_t NumConstBuffers = 8; |
| 52 | 52 | ||
diff --git a/src/video_core/engines/maxwell_3d.cpp b/src/video_core/engines/maxwell_3d.cpp index 116ad1722..d6ba9da5c 100644 --- a/src/video_core/engines/maxwell_3d.cpp +++ b/src/video_core/engines/maxwell_3d.cpp | |||
| @@ -30,8 +30,8 @@ Maxwell3D::Maxwell3D(Core::System& system_, MemoryManager& memory_manager_) | |||
| 30 | 30 | ||
| 31 | Maxwell3D::~Maxwell3D() = default; | 31 | Maxwell3D::~Maxwell3D() = default; |
| 32 | 32 | ||
| 33 | void Maxwell3D::BindRasterizer(VideoCore::RasterizerInterface& rasterizer_) { | 33 | void Maxwell3D::BindRasterizer(VideoCore::RasterizerInterface* rasterizer_) { |
| 34 | rasterizer = &rasterizer_; | 34 | rasterizer = rasterizer_; |
| 35 | } | 35 | } |
| 36 | 36 | ||
| 37 | void Maxwell3D::InitializeRegisterDefaults() { | 37 | void Maxwell3D::InitializeRegisterDefaults() { |
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h index 002d1b3f9..cc94d2678 100644 --- a/src/video_core/engines/maxwell_3d.h +++ b/src/video_core/engines/maxwell_3d.h | |||
| @@ -55,7 +55,7 @@ public: | |||
| 55 | ~Maxwell3D(); | 55 | ~Maxwell3D(); |
| 56 | 56 | ||
| 57 | /// Binds a rasterizer to this engine. | 57 | /// Binds a rasterizer to this engine. |
| 58 | void BindRasterizer(VideoCore::RasterizerInterface& rasterizer); | 58 | void BindRasterizer(VideoCore::RasterizerInterface* rasterizer); |
| 59 | 59 | ||
| 60 | /// Register structure of the Maxwell3D engine. | 60 | /// Register structure of the Maxwell3D engine. |
| 61 | /// TODO(Subv): This structure will need to be made bigger as more registers are discovered. | 61 | /// TODO(Subv): This structure will need to be made bigger as more registers are discovered. |