Blender V4.3
blender::gpu::render_graph::VKCommandBufferInterface Class Referenceabstract

#include <vk_command_buffer_wrapper.hh>

Inherited by blender::gpu::render_graph::CommandBufferLog, and blender::gpu::render_graph::VKCommandBufferWrapper.

Public Member Functions

 VKCommandBufferInterface ()
 
virtual ~VKCommandBufferInterface ()=default
 
virtual void begin_recording ()=0
 
virtual void end_recording ()=0
 
virtual void submit_with_cpu_synchronization (VkFence vk_fence=VK_NULL_HANDLE)=0
 
virtual void wait_for_cpu_synchronization (VkFence vk_fence=VK_NULL_HANDLE)=0
 
virtual void bind_pipeline (VkPipelineBindPoint pipeline_bind_point, VkPipeline pipeline)=0
 
virtual void bind_descriptor_sets (VkPipelineBindPoint pipeline_bind_point, VkPipelineLayout layout, uint32_t first_set, uint32_t descriptor_set_count, const VkDescriptorSet *p_descriptor_sets, uint32_t dynamic_offset_count, const uint32_t *p_dynamic_offsets)=0
 
virtual void bind_index_buffer (VkBuffer buffer, VkDeviceSize offset, VkIndexType index_type)=0
 
virtual void bind_vertex_buffers (uint32_t first_binding, uint32_t binding_count, const VkBuffer *p_buffers, const VkDeviceSize *p_offsets)=0
 
virtual void draw (uint32_t vertex_count, uint32_t instance_count, uint32_t first_vertex, uint32_t first_instance)=0
 
virtual void draw_indexed (uint32_t index_count, uint32_t instance_count, uint32_t first_index, int32_t vertex_offset, uint32_t first_instance)=0
 
virtual void draw_indirect (VkBuffer buffer, VkDeviceSize offset, uint32_t draw_count, uint32_t stride)=0
 
virtual void draw_indexed_indirect (VkBuffer buffer, VkDeviceSize offset, uint32_t draw_count, uint32_t stride)=0
 
virtual void dispatch (uint32_t group_count_x, uint32_t group_count_y, uint32_t group_count_z)=0
 
virtual void dispatch_indirect (VkBuffer buffer, VkDeviceSize offset)=0
 
virtual void update_buffer (VkBuffer dst_buffer, VkDeviceSize dst_offset, VkDeviceSize data_size, const void *p_data)=0
 
virtual void copy_buffer (VkBuffer src_buffer, VkBuffer dst_buffer, uint32_t region_count, const VkBufferCopy *p_regions)=0
 
virtual void copy_image (VkImage src_image, VkImageLayout src_image_layout, VkImage dst_image, VkImageLayout dst_image_layout, uint32_t region_count, const VkImageCopy *p_regions)=0
 
virtual void blit_image (VkImage src_image, VkImageLayout src_image_layout, VkImage dst_image, VkImageLayout dst_image_layout, uint32_t region_count, const VkImageBlit *p_regions, VkFilter filter)=0
 
virtual void copy_buffer_to_image (VkBuffer src_buffer, VkImage dst_image, VkImageLayout dst_image_layout, uint32_t region_count, const VkBufferImageCopy *p_regions)=0
 
virtual void copy_image_to_buffer (VkImage src_image, VkImageLayout src_image_layout, VkBuffer dst_buffer, uint32_t region_count, const VkBufferImageCopy *p_regions)=0
 
virtual void fill_buffer (VkBuffer dst_buffer, VkDeviceSize dst_offset, VkDeviceSize size, uint32_t data)=0
 
virtual void clear_color_image (VkImage image, VkImageLayout image_layout, const VkClearColorValue *p_color, uint32_t range_count, const VkImageSubresourceRange *p_ranges)=0
 
virtual void clear_depth_stencil_image (VkImage image, VkImageLayout image_layout, const VkClearDepthStencilValue *p_depth_stencil, uint32_t range_count, const VkImageSubresourceRange *p_ranges)=0
 
virtual void clear_attachments (uint32_t attachment_count, const VkClearAttachment *p_attachments, uint32_t rect_count, const VkClearRect *p_rects)=0
 
virtual void pipeline_barrier (VkPipelineStageFlags src_stage_mask, VkPipelineStageFlags dst_stage_mask, VkDependencyFlags dependency_flags, uint32_t memory_barrier_count, const VkMemoryBarrier *p_memory_barriers, uint32_t buffer_memory_barrier_count, const VkBufferMemoryBarrier *p_buffer_memory_barriers, uint32_t image_memory_barrier_count, const VkImageMemoryBarrier *p_image_memory_barriers)=0
 
virtual void push_constants (VkPipelineLayout layout, VkShaderStageFlags stage_flags, uint32_t offset, uint32_t size, const void *p_values)=0
 
virtual void begin_query (VkQueryPool vk_query_pool, uint32_t query_index, VkQueryControlFlags vk_query_control_flags)=0
 
virtual void end_query (VkQueryPool vk_query_pool, uint32_t query_index)=0
 
virtual void reset_query_pool (VkQueryPool vk_query_pool, uint32_t first_query, uint32_t query_count)=0
 
virtual void begin_rendering (const VkRenderingInfo *p_rendering_info)=0
 
virtual void end_rendering ()=0
 
virtual void begin_debug_utils_label (const VkDebugUtilsLabelEXT *vk_debug_utils_label)=0
 
virtual void end_debug_utils_label ()=0
 

Detailed Description

Definition at line 14 of file vk_command_buffer_wrapper.hh.

Constructor & Destructor Documentation

◆ VKCommandBufferInterface()

blender::gpu::render_graph::VKCommandBufferInterface::VKCommandBufferInterface ( )
inline

Definition at line 16 of file vk_command_buffer_wrapper.hh.

◆ ~VKCommandBufferInterface()

virtual blender::gpu::render_graph::VKCommandBufferInterface::~VKCommandBufferInterface ( )
virtualdefault

Member Function Documentation

◆ begin_debug_utils_label()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::begin_debug_utils_label ( const VkDebugUtilsLabelEXT * vk_debug_utils_label)
pure virtual

◆ begin_query()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::begin_query ( VkQueryPool vk_query_pool,
uint32_t query_index,
VkQueryControlFlags vk_query_control_flags )
pure virtual

◆ begin_recording()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::begin_recording ( )
pure virtual

◆ begin_rendering()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::begin_rendering ( const VkRenderingInfo * p_rendering_info)
pure virtual

◆ bind_descriptor_sets()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::bind_descriptor_sets ( VkPipelineBindPoint pipeline_bind_point,
VkPipelineLayout layout,
uint32_t first_set,
uint32_t descriptor_set_count,
const VkDescriptorSet * p_descriptor_sets,
uint32_t dynamic_offset_count,
const uint32_t * p_dynamic_offsets )
pure virtual

◆ bind_index_buffer()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::bind_index_buffer ( VkBuffer buffer,
VkDeviceSize offset,
VkIndexType index_type )
pure virtual

◆ bind_pipeline()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::bind_pipeline ( VkPipelineBindPoint pipeline_bind_point,
VkPipeline pipeline )
pure virtual

◆ bind_vertex_buffers()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::bind_vertex_buffers ( uint32_t first_binding,
uint32_t binding_count,
const VkBuffer * p_buffers,
const VkDeviceSize * p_offsets )
pure virtual

◆ blit_image()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::blit_image ( VkImage src_image,
VkImageLayout src_image_layout,
VkImage dst_image,
VkImageLayout dst_image_layout,
uint32_t region_count,
const VkImageBlit * p_regions,
VkFilter filter )
pure virtual

◆ clear_attachments()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::clear_attachments ( uint32_t attachment_count,
const VkClearAttachment * p_attachments,
uint32_t rect_count,
const VkClearRect * p_rects )
pure virtual

◆ clear_color_image()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::clear_color_image ( VkImage image,
VkImageLayout image_layout,
const VkClearColorValue * p_color,
uint32_t range_count,
const VkImageSubresourceRange * p_ranges )
pure virtual

◆ clear_depth_stencil_image()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::clear_depth_stencil_image ( VkImage image,
VkImageLayout image_layout,
const VkClearDepthStencilValue * p_depth_stencil,
uint32_t range_count,
const VkImageSubresourceRange * p_ranges )
pure virtual

◆ copy_buffer()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::copy_buffer ( VkBuffer src_buffer,
VkBuffer dst_buffer,
uint32_t region_count,
const VkBufferCopy * p_regions )
pure virtual

◆ copy_buffer_to_image()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::copy_buffer_to_image ( VkBuffer src_buffer,
VkImage dst_image,
VkImageLayout dst_image_layout,
uint32_t region_count,
const VkBufferImageCopy * p_regions )
pure virtual

◆ copy_image()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::copy_image ( VkImage src_image,
VkImageLayout src_image_layout,
VkImage dst_image,
VkImageLayout dst_image_layout,
uint32_t region_count,
const VkImageCopy * p_regions )
pure virtual

◆ copy_image_to_buffer()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::copy_image_to_buffer ( VkImage src_image,
VkImageLayout src_image_layout,
VkBuffer dst_buffer,
uint32_t region_count,
const VkBufferImageCopy * p_regions )
pure virtual

◆ dispatch()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::dispatch ( uint32_t group_count_x,
uint32_t group_count_y,
uint32_t group_count_z )
pure virtual

◆ dispatch_indirect()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::dispatch_indirect ( VkBuffer buffer,
VkDeviceSize offset )
pure virtual

◆ draw()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::draw ( uint32_t vertex_count,
uint32_t instance_count,
uint32_t first_vertex,
uint32_t first_instance )
pure virtual

◆ draw_indexed()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::draw_indexed ( uint32_t index_count,
uint32_t instance_count,
uint32_t first_index,
int32_t vertex_offset,
uint32_t first_instance )
pure virtual

◆ draw_indexed_indirect()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::draw_indexed_indirect ( VkBuffer buffer,
VkDeviceSize offset,
uint32_t draw_count,
uint32_t stride )
pure virtual

◆ draw_indirect()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::draw_indirect ( VkBuffer buffer,
VkDeviceSize offset,
uint32_t draw_count,
uint32_t stride )
pure virtual

◆ end_debug_utils_label()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::end_debug_utils_label ( )
pure virtual

◆ end_query()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::end_query ( VkQueryPool vk_query_pool,
uint32_t query_index )
pure virtual

◆ end_recording()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::end_recording ( )
pure virtual

◆ end_rendering()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::end_rendering ( )
pure virtual

◆ fill_buffer()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::fill_buffer ( VkBuffer dst_buffer,
VkDeviceSize dst_offset,
VkDeviceSize size,
uint32_t data )
pure virtual

◆ pipeline_barrier()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::pipeline_barrier ( VkPipelineStageFlags src_stage_mask,
VkPipelineStageFlags dst_stage_mask,
VkDependencyFlags dependency_flags,
uint32_t memory_barrier_count,
const VkMemoryBarrier * p_memory_barriers,
uint32_t buffer_memory_barrier_count,
const VkBufferMemoryBarrier * p_buffer_memory_barriers,
uint32_t image_memory_barrier_count,
const VkImageMemoryBarrier * p_image_memory_barriers )
pure virtual

◆ push_constants()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::push_constants ( VkPipelineLayout layout,
VkShaderStageFlags stage_flags,
uint32_t offset,
uint32_t size,
const void * p_values )
pure virtual

◆ reset_query_pool()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::reset_query_pool ( VkQueryPool vk_query_pool,
uint32_t first_query,
uint32_t query_count )
pure virtual

◆ submit_with_cpu_synchronization()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::submit_with_cpu_synchronization ( VkFence vk_fence = VK_NULL_HANDLE)
pure virtual

◆ update_buffer()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::update_buffer ( VkBuffer dst_buffer,
VkDeviceSize dst_offset,
VkDeviceSize data_size,
const void * p_data )
pure virtual

◆ wait_for_cpu_synchronization()

virtual void blender::gpu::render_graph::VKCommandBufferInterface::wait_for_cpu_synchronization ( VkFence vk_fence = VK_NULL_HANDLE)
pure virtual

The documentation for this class was generated from the following file: