mirror of
				https://git.suyu.dev/suyu/suyu.git
				synced 2025-10-30 22:36:46 +08:00 
			
		
		
		
	vk_resource_manager: Add VKResource interface
VKResource is an interface that gets signaled by a fence when it is free to be reused.
This commit is contained in:
		
							parent
							
								
									fcc3aa0bbf
								
							
						
					
					
						commit
						33a4cebc22
					
				| @ -105,7 +105,9 @@ if (ENABLE_VULKAN) | ||||
|     target_sources(video_core PRIVATE | ||||
|         renderer_vulkan/declarations.h | ||||
|         renderer_vulkan/vk_device.cpp | ||||
|         renderer_vulkan/vk_device.h) | ||||
|         renderer_vulkan/vk_device.h | ||||
|         renderer_vulkan/vk_resource_manager.cpp | ||||
|         renderer_vulkan/vk_resource_manager.h) | ||||
| 
 | ||||
|     target_include_directories(video_core PRIVATE ../../externals/Vulkan-Headers/include) | ||||
|     target_compile_definitions(video_core PRIVATE HAS_VULKAN) | ||||
|  | ||||
							
								
								
									
										14
									
								
								src/video_core/renderer_vulkan/vk_resource_manager.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								src/video_core/renderer_vulkan/vk_resource_manager.cpp
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,14 @@ | ||||
| // Copyright 2018 yuzu Emulator Project
 | ||||
| // Licensed under GPLv2 or any later version
 | ||||
| // Refer to the license.txt file included.
 | ||||
| 
 | ||||
| #include "video_core/renderer_vulkan/declarations.h" | ||||
| #include "video_core/renderer_vulkan/vk_resource_manager.h" | ||||
| 
 | ||||
| namespace Vulkan { | ||||
| 
 | ||||
| VKResource::VKResource() = default; | ||||
| 
 | ||||
| VKResource::~VKResource() = default; | ||||
| 
 | ||||
| } // namespace Vulkan
 | ||||
							
								
								
									
										26
									
								
								src/video_core/renderer_vulkan/vk_resource_manager.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								src/video_core/renderer_vulkan/vk_resource_manager.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,26 @@ | ||||
| // Copyright 2018 yuzu Emulator Project
 | ||||
| // Licensed under GPLv2 or any later version
 | ||||
| // Refer to the license.txt file included.
 | ||||
| 
 | ||||
| #pragma once | ||||
| 
 | ||||
| #include "video_core/renderer_vulkan/declarations.h" | ||||
| 
 | ||||
| namespace Vulkan { | ||||
| 
 | ||||
| class VKFence; | ||||
| 
 | ||||
| /// Interface for a Vulkan resource
 | ||||
| class VKResource { | ||||
| public: | ||||
|     explicit VKResource(); | ||||
|     virtual ~VKResource(); | ||||
| 
 | ||||
|     /**
 | ||||
|      * Signals the object that an owning fence has been signaled. | ||||
|      * @param signaling_fence Fence that signals its usage end. | ||||
|      */ | ||||
|     virtual void OnFenceRemoval(VKFence* signaling_fence) = 0; | ||||
| }; | ||||
| 
 | ||||
| } // namespace Vulkan
 | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user