36 lines
		
	
	
	
		
			589 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
	
		
			589 B
		
	
	
	
		
			C++
		
	
	
	
	
	
#pragma once
 | 
						|
 | 
						|
#include <memory/pointer_types/null_on_move.hpp>
 | 
						|
#include <renderer/vk/context/context.hpp>
 | 
						|
 | 
						|
namespace lt::renderer::vk {
 | 
						|
 | 
						|
class Pipeline
 | 
						|
{
 | 
						|
public:
 | 
						|
	struct CreateInfo
 | 
						|
	{
 | 
						|
		Ref<Context> context;
 | 
						|
	};
 | 
						|
 | 
						|
	Pipeline(CreateInfo info);
 | 
						|
 | 
						|
	~Pipeline();
 | 
						|
 | 
						|
	Pipeline(Pipeline &&) = default;
 | 
						|
 | 
						|
	Pipeline(const Pipeline &) = delete;
 | 
						|
 | 
						|
	auto operator=(Pipeline &&) -> Pipeline & = default;
 | 
						|
 | 
						|
	auto operator=(const Pipeline &) -> Pipeline & = delete;
 | 
						|
 | 
						|
private:
 | 
						|
	VkPipeline m_pipeline = {};
 | 
						|
 | 
						|
	VkPipelineLayout m_pipeline_layout = {};
 | 
						|
 | 
						|
	Ref<Context> m_context;
 | 
						|
};
 | 
						|
 | 
						|
}; // namespace lt::renderer::vk
 |