Flutter Impeller
impeller::BarrierVK Struct Reference

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
 

Detailed Description

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 28 of file barrier_vk.h.

Member Data Documentation

◆ cmd_buffer

◆ dst_access

◆ dst_stage

vk::PipelineStageFlags impeller::BarrierVK::dst_stage = vk::PipelineStageFlagBits::eNone

◆ new_layout

◆ src_access

◆ src_stage

vk::PipelineStageFlags impeller::BarrierVK::src_stage = vk::PipelineStageFlagBits::eNone

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