15 #include <vsg/state/PipelineLayout.h>
16 #include <vsg/state/ShaderStage.h>
17 #include <vsg/state/StateCommand.h>
31 void read(
Input& input)
override;
32 void write(
Output& output)
const override;
42 void release(uint32_t deviceID) { _implementation[deviceID] = {}; }
43 void release() { _implementation.clear(); }
45 VkPipeline vk(uint32_t deviceID)
const {
return _implementation[deviceID]->_pipeline; }
48 virtual ~ComputePipeline();
71 void read(
Input& input)
override;
72 void write(
Output& output)
const override;
80 void compile(
Context& context)
override;
BindComputePipeline state command encapsulates the vkCmdBindPipeline call for a ComputePipeline.
Definition: ComputePipeline.h:65
ref_ptr< ComputePipeline > pipeline
pipeline to pass in the vkCmdBindPipeline call;
Definition: ComputePipeline.h:75
int compare(const Object &rhs_object) const override
compare two objects, return -1 if this object is less than rhs, return 0 if it's equal,...
CommandBuffer encapsulates VkCommandBuffer.
Definition: CommandBuffer.h:27
ComputePipeline encapsulates compute VkPipeline and the VkComputePipelineCreateInfo settings used to ...
Definition: ComputePipeline.h:24
int compare(const Object &rhs_object) const override
compare two objects, return -1 if this object is less than rhs, return 0 if it's equal,...
ref_ptr< PipelineLayout > layout
VkComputePipelineCreateInfo settings.
Definition: ComputePipeline.h:35
Device encapsulates VkDevice, a logical handle to the PhysicalDevice with capabilities specified duri...
Definition: Device.h:37
PipelineLayout encapsulates VkPipelineLayout and the VkPipelineLayoutCreateInfo settings used to set ...
Definition: PipelineLayout.h:27
ShaderStage encapsulates VkPipelineShaderStageCreateInfo settings passed when setting up GraphicsPipe...
Definition: ShaderStage.h:24
Definition: ComputePipeline.h:51
vk_buffer that manages a single logical device supported.
Definition: vk_buffer.h:28