Crafter.Graphics/Crafter.Graphics-VulkanElementFromPipeline.cppm
2025-04-26 23:05:11 +02:00

22 lines
749 B
C++

module;
#include <cstdint>
#include <vulkan/vulkan.h>
export module Crafter.Graphics:VulkanElementFromPipeline;
import Crafter.Component;
import :VulkanPipeline;
import :VulkanElement;
namespace Crafter {
export template<typename Pipeline>
class VulkanElementFromPipeline : public VulkanElement {
public:
VulkanElementFromPipeline() : VulkanElement(Pipeline::pipelineLayout, Pipeline::pipeline) {
Pipeline::GetDescriptorSet(&descriptorSet[0]);
}
VulkanElementFromPipeline(std::uint32_t sizeX, std::uint32_t sizeY, std::uint32_t sizeZ) : VulkanElement(Pipeline::pipelineLayout, Pipeline::pipeline, sizeX, sizeY, sizeZ) {
Pipeline::GetDescriptorSet(&descriptorSet[0]);
}
};
}