summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/const_buffer_locker.h
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2020-02-26 20:13:47 +0100
committerReinUsesLisp <reinuseslisp@airmail.cc>2020-03-09 22:40:06 +0100
commitbd8b9bbcee93549f323352f227ff44d0e79e0ad4 (patch)
tree5c68e7ab171db3f3d31bf27cd573c54a918f0708 /src/video_core/shader/const_buffer_locker.h
parentMerge pull request #3301 from ReinUsesLisp/state-tracker (diff)
downloadyuzu-bd8b9bbcee93549f323352f227ff44d0e79e0ad4.tar
yuzu-bd8b9bbcee93549f323352f227ff44d0e79e0ad4.tar.gz
yuzu-bd8b9bbcee93549f323352f227ff44d0e79e0ad4.tar.bz2
yuzu-bd8b9bbcee93549f323352f227ff44d0e79e0ad4.tar.lz
yuzu-bd8b9bbcee93549f323352f227ff44d0e79e0ad4.tar.xz
yuzu-bd8b9bbcee93549f323352f227ff44d0e79e0ad4.tar.zst
yuzu-bd8b9bbcee93549f323352f227ff44d0e79e0ad4.zip
Diffstat (limited to 'src/video_core/shader/const_buffer_locker.h')
-rw-r--r--src/video_core/shader/const_buffer_locker.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/video_core/shader/const_buffer_locker.h b/src/video_core/shader/const_buffer_locker.h
index d3ea11087..7c6f7bbdd 100644
--- a/src/video_core/shader/const_buffer_locker.h
+++ b/src/video_core/shader/const_buffer_locker.h
@@ -26,7 +26,8 @@ using BindlessSamplerMap =
*/
class ConstBufferLocker {
public:
- explicit ConstBufferLocker(Tegra::Engines::ShaderType shader_stage);
+ explicit ConstBufferLocker(Tegra::Engines::ShaderType shader_stage,
+ VideoCore::GuestDriverProfile stored_guest_driver_profile);
explicit ConstBufferLocker(Tegra::Engines::ShaderType shader_stage,
Tegra::Engines::ConstBufferEngineInterface& engine);
@@ -83,15 +84,13 @@ public:
}
/// Obtains access to the guest driver's profile.
- VideoCore::GuestDriverProfile* AccessGuestDriverProfile() const {
- if (engine) {
- return &engine->AccessGuestDriverProfile();
- }
- return nullptr;
+ VideoCore::GuestDriverProfile& AccessGuestDriverProfile() {
+ return engine ? engine->AccessGuestDriverProfile() : stored_guest_driver_profile;
}
private:
const Tegra::Engines::ShaderType stage;
+ VideoCore::GuestDriverProfile stored_guest_driver_profile;
Tegra::Engines::ConstBufferEngineInterface* engine = nullptr;
KeyMap keys;
BoundSamplerMap bound_samplers;