Monado OpenXR Runtime
vk_cmd.h File Reference

Command buffer helpers. More...

#include "vk/vk_helpers.h"
Include dependency graph for vk_cmd.h:

Go to the source code of this file.

Data Structures

struct  vk_cmd_first_mip_image
 A similar struct to VkImageSubresourceRange and VkImageSubresourceLayers expect for this it's implied that it's only the first mip-level and only one array layer used for the operation. More...
 
struct  vk_cmd_copy_image_info
 Argument struct for vk_cmd_copy_image_locked. More...
 
struct  vk_cmd_blit_image_info
 Argument struct for vk_cmd_blit_image_locked. More...
 
struct  vk_cmd_blit_images_side_by_side_info
 Argument struct for vk_cmd_blit_images_side_by_side_locked. More...
 

Functions

XRT_CHECK_RESULT VkResult vk_cmd_create_cmd_buffer_locked (struct vk_bundle *vk, VkCommandPool pool, VkCommandBuffer *out_cmd_buffer)
 Create a command buffer, the pool must be locked or ensured that only this thread is accessing it. More...
 
XRT_CHECK_RESULT VkResult vk_cmd_create_and_begin_cmd_buffer_locked (struct vk_bundle *vk, VkCommandPool pool, VkCommandBufferUsageFlags flags, VkCommandBuffer *out_cmd_buffer)
 Create and begin a command buffer, the pool must be locked or ensured that only this thread is accessing it. More...
 
XRT_CHECK_RESULT VkResult vk_cmd_submit_locked (struct vk_bundle *vk, uint32_t count, const VkSubmitInfo *infos, VkFence fence)
 Very small helper to submit a command buffer, the _locked suffix refers to the command pool not the queue, the queue lock will be taken during the queue submit call, then released. More...
 
XRT_CHECK_RESULT VkResult vk_cmd_end_submit_wait_and_free_cmd_buffer_locked (struct vk_bundle *vk, VkCommandPool pool, VkCommandBuffer cmd_buffer)
 A do everything command buffer submission function, the _locked suffix refers to the command pool not the queue, the queue lock will be taken during the queue submit call, then released. More...
 
void vk_cmd_copy_image_locked (struct vk_bundle *vk, VkCommandBuffer cmd_buffer, const struct vk_cmd_copy_image_info *info)
 Performs a copy of a image into a destination image, also does needed barrier operation needed to get images ready for transfer operations. More...
 
void vk_cmd_blit_image_locked (struct vk_bundle *vk, VkCommandBuffer cmd_buffer, const struct vk_cmd_blit_image_info *info)
 Performs a blit of a image into a destination image, also does needed barrier operation needed to get images ready for transfer operations. More...
 
void vk_cmd_blit_images_side_by_side_locked (struct vk_bundle *vk, VkCommandBuffer cmd_buffer, const struct vk_cmd_blit_images_side_by_side_info *info)
 Performs a blit of two images to side by side on a destination image, also does needed barrier operation needed to get images ready for transfer operations. More...
 

Detailed Description