gl_shader_disk_cache: Add file and move BaseBindings declaration
This commit is contained in:
		
							parent
							
								
									c2c5260fd7
								
							
						
					
					
						commit
						145c3ac89e
					
				| @ -44,6 +44,8 @@ add_library(video_core STATIC | ||||
|     renderer_opengl/gl_shader_cache.h | ||||
|     renderer_opengl/gl_shader_decompiler.cpp | ||||
|     renderer_opengl/gl_shader_decompiler.h | ||||
|     renderer_opengl/gl_shader_disk_cache.cpp | ||||
|     renderer_opengl/gl_shader_disk_cache.h | ||||
|     renderer_opengl/gl_shader_gen.cpp | ||||
|     renderer_opengl/gl_shader_gen.h | ||||
|     renderer_opengl/gl_shader_manager.cpp | ||||
|  | ||||
| @ -16,6 +16,7 @@ | ||||
| #include "video_core/rasterizer_cache.h" | ||||
| #include "video_core/renderer_opengl/gl_resource_manager.h" | ||||
| #include "video_core/renderer_opengl/gl_shader_decompiler.h" | ||||
| #include "video_core/renderer_opengl/gl_shader_disk_cache.h" | ||||
| #include "video_core/renderer_opengl/gl_shader_gen.h" | ||||
| 
 | ||||
| namespace OpenGL { | ||||
| @ -26,16 +27,6 @@ class RasterizerOpenGL; | ||||
| using Shader = std::shared_ptr<CachedShader>; | ||||
| using Maxwell = Tegra::Engines::Maxwell3D::Regs; | ||||
| 
 | ||||
| struct BaseBindings { | ||||
|     u32 cbuf{}; | ||||
|     u32 gmem{}; | ||||
|     u32 sampler{}; | ||||
| 
 | ||||
|     bool operator<(const BaseBindings& rhs) const { | ||||
|         return std::tie(cbuf, gmem, sampler) < std::tie(rhs.cbuf, rhs.gmem, rhs.sampler); | ||||
|     } | ||||
| }; | ||||
| 
 | ||||
| class CachedShader final : public RasterizerCacheObject { | ||||
| public: | ||||
|     CachedShader(VAddr addr, Maxwell::ShaderProgram program_type); | ||||
|  | ||||
							
								
								
									
										14
									
								
								src/video_core/renderer_opengl/gl_shader_disk_cache.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								src/video_core/renderer_opengl/gl_shader_disk_cache.cpp
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,14 @@ | ||||
| // Copyright 2019 yuzu Emulator Project
 | ||||
| // Licensed under GPLv2 or any later version
 | ||||
| // Refer to the license.txt file included.
 | ||||
| 
 | ||||
| #pragma once | ||||
| 
 | ||||
| #include "video_core/renderer_opengl/gl_shader_disk_cache.h" | ||||
| 
 | ||||
| namespace OpenGL { | ||||
| 
 | ||||
| // Making sure sizes doesn't change by accident
 | ||||
| static_assert(sizeof(BaseBindings) == 12); | ||||
| 
 | ||||
| } // namespace OpenGL
 | ||||
							
								
								
									
										41
									
								
								src/video_core/renderer_opengl/gl_shader_disk_cache.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								src/video_core/renderer_opengl/gl_shader_disk_cache.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,41 @@ | ||||
| // Copyright 2019 yuzu Emulator Project
 | ||||
| // Licensed under GPLv2 or any later version
 | ||||
| // Refer to the license.txt file included.
 | ||||
| 
 | ||||
| #pragma once | ||||
| 
 | ||||
| #include <tuple> | ||||
| 
 | ||||
| #include "common/common_types.h" | ||||
| #include "video_core/engines/maxwell_3d.h" | ||||
| 
 | ||||
| namespace OpenGL { | ||||
| 
 | ||||
| using ProgramCode = std::vector<u64>; | ||||
| using Maxwell = Tegra::Engines::Maxwell3D::Regs; | ||||
| 
 | ||||
| struct BaseBindings { | ||||
| private: | ||||
|     auto Tie() const { | ||||
|         return std::tie(cbuf, gmem, sampler); | ||||
|     } | ||||
| 
 | ||||
| public: | ||||
|     u32 cbuf{}; | ||||
|     u32 gmem{}; | ||||
|     u32 sampler{}; | ||||
| 
 | ||||
|     bool operator<(const BaseBindings& rhs) const { | ||||
|         return Tie() < rhs.Tie(); | ||||
|     } | ||||
| 
 | ||||
|     bool operator==(const BaseBindings& rhs) const { | ||||
|         return Tie() == rhs.Tie(); | ||||
|     } | ||||
| 
 | ||||
|     bool operator!=(const BaseBindings& rhs) const { | ||||
|         return !this->operator==(rhs); | ||||
|     } | ||||
| }; | ||||
| 
 | ||||
| } // namespace OpenGL
 | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 ReinUsesLisp
						ReinUsesLisp