Files
Seele/src/Engine/Graphics/Vulkan/Pipeline.h
T

41 lines
1.1 KiB
C++
Raw Normal View History

2020-05-05 01:51:13 +02:00
#pragma once
2023-10-26 18:37:29 +02:00
#include "Enums.h"
2023-11-15 17:42:57 +01:00
#include "Graphics/Pipeline.h"
2020-05-05 01:51:13 +02:00
2024-06-09 12:20:04 +02:00
namespace Seele {
namespace Vulkan {
class VertexInput : public Gfx::VertexInput {
public:
VertexInput(VertexInputStateCreateInfo createInfo);
virtual ~VertexInput();
2024-06-09 12:20:04 +02:00
private:
};
2021-04-01 16:40:14 +02:00
DECLARE_REF(PipelineLayout)
DECLARE_REF(Graphics)
2024-06-09 12:20:04 +02:00
class GraphicsPipeline : public Gfx::GraphicsPipeline {
public:
2024-04-23 08:11:44 +02:00
GraphicsPipeline(PGraphics graphics, VkPipeline handle, Gfx::PPipelineLayout pipelineLayout);
2020-05-05 01:51:13 +02:00
virtual ~GraphicsPipeline();
void bind(VkCommandBuffer handle);
VkPipelineLayout getLayout() const;
2024-06-09 12:20:04 +02:00
private:
2020-05-05 01:51:13 +02:00
PGraphics graphics;
2021-04-01 16:40:14 +02:00
VkPipeline pipeline;
2020-05-05 01:51:13 +02:00
};
2021-04-01 16:40:14 +02:00
DEFINE_REF(GraphicsPipeline)
2024-06-09 12:20:04 +02:00
class ComputePipeline : public Gfx::ComputePipeline {
public:
2024-04-23 08:11:44 +02:00
ComputePipeline(PGraphics graphics, VkPipeline handle, Gfx::PPipelineLayout pipelineLayout);
2021-05-06 17:02:10 +02:00
virtual ~ComputePipeline();
void bind(VkCommandBuffer handle);
VkPipelineLayout getLayout() const;
2024-06-09 12:20:04 +02:00
private:
2021-05-06 17:02:10 +02:00
PGraphics graphics;
VkPipeline pipeline;
};
DEFINE_REF(ComputePipeline)
2020-05-05 01:51:13 +02:00
} // namespace Vulkan
} // namespace Seele