Hymn to Beauty
C++ 3D Engine
VulkanComputePipeline.hpp
Go to the documentation of this file.
1#pragma once
2
3#include "../Interface/ComputePipeline.hpp"
4
5#include <vulkan/vulkan.h>
6
7namespace Video {
8
9class ShaderProgram;
10class VulkanShaderProgram;
11
14 public:
16
20 explicit VulkanComputePipeline(VkDevice device, const ShaderProgram* shaderProgram);
21
24
26
29 VkPipeline GetPipeline() const;
30
32
35 VkPipelineLayout GetPipelineLayout() const;
36
38
42
43 private:
44 VulkanComputePipeline(const VulkanComputePipeline& other) = delete;
45
46 VkDevice device;
47 VkPipelineLayout pipelineLayout;
48 VkPipeline pipeline;
49 const VulkanShaderProgram* vulkanShaderProgram;
50};
51
52}
A compute pipeline.
Definition: ComputePipeline.hpp:11
A shader program.
Definition: ShaderProgram.hpp:11
Vulkan implementation of ComputePipeline.
Definition: VulkanComputePipeline.hpp:13
VkPipeline GetPipeline() const
Get the Vulkan pipeline.
Definition: VulkanComputePipeline.cpp:62
const VulkanShaderProgram * GetShaderProgram() const
Get the Vulkan shader program.
Definition: VulkanComputePipeline.cpp:70
~VulkanComputePipeline() final
Destructor.
Definition: VulkanComputePipeline.cpp:57
VulkanComputePipeline(VkDevice device, const ShaderProgram *shaderProgram)
Create new Vulkan compute pipeline.
Definition: VulkanComputePipeline.cpp:12
VkPipelineLayout GetPipelineLayout() const
Get the Vulkan pipeline layout.
Definition: VulkanComputePipeline.cpp:66
Vulkan implementation of ShaderProgram.
Definition: VulkanShaderProgram.hpp:16
Definition: Editor.hpp:18