Defines an operations and memory access barrier on a resource. More...
#include <barrier_vk.h>
Public Attributes | |
| vk::CommandBuffer | cmd_buffer = {} |
| vk::ImageLayout | new_layout = vk::ImageLayout::eUndefined |
| vk::PipelineStageFlags | src_stage = vk::PipelineStageFlagBits::eNone |
| vk::AccessFlags | src_access = vk::AccessFlagBits::eNone |
| vk::PipelineStageFlags | dst_stage = vk::PipelineStageFlagBits::eNone |
| vk::AccessFlags | dst_access = vk::AccessFlagBits::eNone |
| uint32_t | base_mip_level = 0 |
| The base mip level to apply the barrier to in the subresource range. More... | |
Defines an operations and memory access barrier on a resource.
For further reading, see
https://www.khronos.org/events/vulkan-how-to-use-synchronisation-validation-across-multiple-queues-and-command-buffers
and the Vulkan spec. The docs for the various member of this
class are based on verbiage in the spec.
A useful mnemonic for building a mental model of how to add
these barriers is to build a sentence like so; "All commands
before this barrier may continue till they encounter a <src
access> in the <src pipeline stage>. And, all commands after
this barrier may proceed till <dst access> in the <dst pipeline
stage>."
Definition at line 27 of file barrier_vk.h.
| uint32_t impeller::BarrierVK::base_mip_level = 0 |
The base mip level to apply the barrier to in the subresource range.
Definition at line 52 of file barrier_vk.h.
Referenced by impeller::TextureSourceVK::SetLayout().
| vk::CommandBuffer impeller::BarrierVK::cmd_buffer = {} |
Definition at line 28 of file barrier_vk.h.
Referenced by impeller::TextureSourceVK::SetLayout().
| vk::AccessFlags impeller::BarrierVK::dst_access = vk::AccessFlagBits::eNone |
Definition at line 49 of file barrier_vk.h.
Referenced by impeller::TextureSourceVK::SetLayout().
| vk::PipelineStageFlags impeller::BarrierVK::dst_stage = vk::PipelineStageFlagBits::eNone |
Definition at line 44 of file barrier_vk.h.
Referenced by impeller::TextureSourceVK::SetLayout().
| vk::ImageLayout impeller::BarrierVK::new_layout = vk::ImageLayout::eUndefined |
Definition at line 29 of file barrier_vk.h.
Referenced by impeller::TextureSourceVK::SetLayout().
| vk::AccessFlags impeller::BarrierVK::src_access = vk::AccessFlagBits::eNone |
Definition at line 39 of file barrier_vk.h.
Referenced by impeller::TextureSourceVK::SetLayout().
| vk::PipelineStageFlags impeller::BarrierVK::src_stage = vk::PipelineStageFlagBits::eNone |
Definition at line 34 of file barrier_vk.h.
Referenced by impeller::TextureSourceVK::SetLayout().