Package org.lwjgl.vulkan
Class VkMemoryBarrier2
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkMemoryBarrier2
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
- Direct Known Subclasses:
VkMemoryBarrier2KHR
public class VkMemoryBarrier2 extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying a global memory barrier.Description
This structure defines a memory dependency affecting all device memory.
The first synchronization scope and access scope described by this structure include only operations and memory accesses specified by
srcStageMaskandsrcAccessMask.The second synchronization scope and access scope described by this structure include only operations and memory accesses specified by
dstStageMaskanddstAccessMask.Valid Usage
- If the geometry shaders feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_2_GEOMETRY_SHADER_BIT - If the tessellation shaders feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BITorPIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT - If the conditional rendering feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT - If the fragment density map feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT - If the transform feedback feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT - If the mesh shaders feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_2_MESH_SHADER_BIT_NV - If the task shaders feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_2_TASK_SHADER_BIT_NV - If the shading rate image feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV - If the subpass shading feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI - If the invocation mask image feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI - If
srcAccessMaskincludesACCESS_2_INDIRECT_COMMAND_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_DRAW_INDIRECT_BIT,PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_INDEX_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_INDEX_INPUT_BIT,PIPELINE_STAGE_2_VERTEX_INPUT_BIT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_VERTEX_ATTRIBUTE_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT,PIPELINE_STAGE_2_VERTEX_INPUT_BIT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_INPUT_ATTACHMENT_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_FRAGMENT_SHADER_BIT,PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_UNIFORM_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
srcAccessMaskincludesACCESS_2_SHADER_SAMPLED_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
srcAccessMaskincludesACCESS_2_SHADER_STORAGE_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
srcAccessMaskincludesACCESS_2_SHADER_STORAGE_WRITE_BIT,srcStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
srcAccessMaskincludesACCESS_2_SHADER_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT,PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
srcAccessMaskincludesACCESS_2_SHADER_WRITE_BIT,srcStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
srcAccessMaskincludesACCESS_2_COLOR_ATTACHMENT_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BITPIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_COLOR_ATTACHMENT_WRITE_BIT,srcStageMaskmust includePIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BITPIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT,PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT,srcStageMaskmust includePIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT,PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_TRANSFER_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_COPY_BIT,PIPELINE_STAGE_2_BLIT_BIT,PIPELINE_STAGE_2_RESOLVE_BIT,PIPELINE_STAGE_2_ALL_TRANSFER_BIT,PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_TRANSFER_WRITE_BIT,srcStageMaskmust includePIPELINE_STAGE_2_COPY_BIT,PIPELINE_STAGE_2_BLIT_BIT,PIPELINE_STAGE_2_RESOLVE_BIT,PIPELINE_STAGE_2_CLEAR_BIT,PIPELINE_STAGE_2_ALL_TRANSFER_BIT,PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_HOST_READ_BIT,srcStageMaskmust includePIPELINE_STAGE_2_HOST_BIT - If
srcAccessMaskincludesACCESS_2_HOST_WRITE_BIT,srcStageMaskmust includePIPELINE_STAGE_2_HOST_BIT - If
srcAccessMaskincludesACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT,srcStageMaskmust includePIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,srcStageMaskmust includePIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT,srcStageMaskmust includePIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT,srcStageMaskmust includePIPELINE_STAGE_2_DRAW_INDIRECT_BIT,PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT,srcStageMaskmust includePIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV,srcStageMaskmust includePIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI,srcStageMaskmust includePIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI - If
srcAccessMaskincludesACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV,srcStageMaskmust includePIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NVorPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV,srcStageMaskmust includePIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NVorPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT,srcStageMaskmust includePIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BITPIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
srcAccessMaskincludesACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,srcStageMaskmust includePIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
srcAccessMaskincludesACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,srcStageMaskmust includePIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHRorPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
rayQueryis not enabled andsrcAccessMaskincludesACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,srcStageMaskmust not include any of theVK_PIPELINE_STAGE_*_SHADER_BITstages exceptPIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR - If
srcAccessMaskincludesACCESS_2_VIDEO_DECODE_READ_BIT_KHR,srcStageMaskmust includePIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR - If
srcAccessMaskincludesACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR,srcStageMaskmust includePIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR - If
srcAccessMaskincludesACCESS_2_VIDEO_ENCODE_READ_BIT_KHR,srcStageMaskmust includePIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR - If
srcAccessMaskincludesACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR,srcStageMaskmust includePIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR
- If the geometry shaders feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_2_GEOMETRY_SHADER_BIT - If the tessellation shaders feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BITorPIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT - If the conditional rendering feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT - If the fragment density map feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT - If the transform feedback feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT - If the mesh shaders feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_2_MESH_SHADER_BIT_NV - If the task shaders feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_2_TASK_SHADER_BIT_NV - If the shading rate image feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV - If the subpass shading feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI - If the invocation mask image feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI - If
dstAccessMaskincludesACCESS_2_INDIRECT_COMMAND_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_DRAW_INDIRECT_BIT,PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_INDEX_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_INDEX_INPUT_BIT,PIPELINE_STAGE_2_VERTEX_INPUT_BIT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_VERTEX_ATTRIBUTE_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT,PIPELINE_STAGE_2_VERTEX_INPUT_BIT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_INPUT_ATTACHMENT_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_FRAGMENT_SHADER_BIT,PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_UNIFORM_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
dstAccessMaskincludesACCESS_2_SHADER_SAMPLED_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
dstAccessMaskincludesACCESS_2_SHADER_STORAGE_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
dstAccessMaskincludesACCESS_2_SHADER_STORAGE_WRITE_BIT,dstStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
dstAccessMaskincludesACCESS_2_SHADER_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT,PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
dstAccessMaskincludesACCESS_2_SHADER_WRITE_BIT,dstStageMaskmust includePIPELINE_STAGE_2_ALL_GRAPHICS_BIT,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
dstAccessMaskincludesACCESS_2_COLOR_ATTACHMENT_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BITPIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_COLOR_ATTACHMENT_WRITE_BIT,dstStageMaskmust includePIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BITPIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT,PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT,dstStageMaskmust includePIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT,PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_TRANSFER_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_COPY_BIT,PIPELINE_STAGE_2_BLIT_BIT,PIPELINE_STAGE_2_RESOLVE_BIT,PIPELINE_STAGE_2_ALL_TRANSFER_BIT,PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_TRANSFER_WRITE_BIT,dstStageMaskmust includePIPELINE_STAGE_2_COPY_BIT,PIPELINE_STAGE_2_BLIT_BIT,PIPELINE_STAGE_2_RESOLVE_BIT,PIPELINE_STAGE_2_CLEAR_BIT,PIPELINE_STAGE_2_ALL_TRANSFER_BIT,PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_HOST_READ_BIT,dstStageMaskmust includePIPELINE_STAGE_2_HOST_BIT - If
dstAccessMaskincludesACCESS_2_HOST_WRITE_BIT,dstStageMaskmust includePIPELINE_STAGE_2_HOST_BIT - If
dstAccessMaskincludesACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT,dstStageMaskmust includePIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,dstStageMaskmust includePIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT,dstStageMaskmust includePIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT,dstStageMaskmust includePIPELINE_STAGE_2_DRAW_INDIRECT_BIT,PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT,dstStageMaskmust includePIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV,dstStageMaskmust includePIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV,PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI,dstStageMaskmust includePIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI - If
dstAccessMaskincludesACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV,dstStageMaskmust includePIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NVorPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV,dstStageMaskmust includePIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NVorPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT,dstStageMaskmust includePIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BITPIPELINE_STAGE_2_ALL_GRAPHICS_BIT, orPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
dstAccessMaskincludesACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,dstStageMaskmust includePIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,PIPELINE_STAGE_2_ALL_COMMANDS_BIT, or one of theVK_PIPELINE_STAGE_*_SHADER_BITstages - If
dstAccessMaskincludesACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,dstStageMaskmust includePIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHRorPIPELINE_STAGE_2_ALL_COMMANDS_BIT - If
rayQueryis not enabled anddstAccessMaskincludesACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,dstStageMaskmust not include any of theVK_PIPELINE_STAGE_*_SHADER_BITstages exceptPIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR - If
dstAccessMaskincludesACCESS_2_VIDEO_DECODE_READ_BIT_KHR,dstStageMaskmust includePIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR - If
dstAccessMaskincludesACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR,dstStageMaskmust includePIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR - If
dstAccessMaskincludesACCESS_2_VIDEO_ENCODE_READ_BIT_KHR,dstStageMaskmust includePIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR - If
dstAccessMaskincludesACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR,dstStageMaskmust includePIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_MEMORY_BARRIER_2srcStageMaskmust be a valid combination ofVkPipelineStageFlagBits2valuessrcAccessMaskmust be a valid combination ofVkAccessFlagBits2valuesdstStageMaskmust be a valid combination ofVkPipelineStageFlagBits2valuesdstAccessMaskmust be a valid combination ofVkAccessFlagBits2values
See Also
Layout
struct VkMemoryBarrier2 { VkStructureTypesType(); void const *pNext(); VkPipelineStageFlags2srcStageMask(); VkAccessFlags2srcAccessMask(); VkPipelineStageFlags2dstStageMask(); VkAccessFlags2dstAccessMask(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkMemoryBarrier2.BufferAn array ofVkMemoryBarrier2structs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intDSTACCESSMASK
DSTSTAGEMASK
PNEXTThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSRCACCESSMASK
SRCSTAGEMASK
STYPEThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkMemoryBarrier2(java.nio.ByteBuffer container)Creates aVkMemoryBarrier2instance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkMemoryBarrier2calloc()Returns a newVkMemoryBarrier2instance allocated withmemCalloc.static VkMemoryBarrier2.Buffercalloc(int capacity)Returns a newVkMemoryBarrier2.Bufferinstance allocated withmemCalloc.static VkMemoryBarrier2.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkMemoryBarrier2.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkMemoryBarrier2calloc(org.lwjgl.system.MemoryStack stack)Returns a newVkMemoryBarrier2instance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkMemoryBarrier2create()Returns a newVkMemoryBarrier2instance allocated withBufferUtils.static VkMemoryBarrier2.Buffercreate(int capacity)Returns a newVkMemoryBarrier2.Bufferinstance allocated withBufferUtils.static VkMemoryBarrier2create(long address)Returns a newVkMemoryBarrier2instance for the specified memory address.static VkMemoryBarrier2.Buffercreate(long address, int capacity)Create aVkMemoryBarrier2.Bufferinstance at the specified memory.static VkMemoryBarrier2createSafe(long address)static VkMemoryBarrier2.BuffercreateSafe(long address, int capacity)longdstAccessMask()aVkAccessFlags2mask of access flags to be included in the second access scope.VkMemoryBarrier2dstAccessMask(long value)Sets the specified value to thedstAccessMask()field.longdstStageMask()aVkPipelineStageFlags2mask of pipeline stages to be included in the second synchronization scope.VkMemoryBarrier2dstStageMask(long value)Sets the specified value to thedstStageMask()field.static VkMemoryBarrier2malloc()Returns a newVkMemoryBarrier2instance allocated withmemAlloc.static VkMemoryBarrier2.Buffermalloc(int capacity)Returns a newVkMemoryBarrier2.Bufferinstance allocated withmemAlloc.static VkMemoryBarrier2.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkMemoryBarrier2.Bufferinstance allocated on the specifiedMemoryStack.static VkMemoryBarrier2malloc(org.lwjgl.system.MemoryStack stack)Returns a newVkMemoryBarrier2instance allocated on the specifiedMemoryStack.static longndstAccessMask(long struct)Unsafe version ofdstAccessMask().static voidndstAccessMask(long struct, long value)Unsafe version ofdstAccessMask.static longndstStageMask(long struct)Unsafe version ofdstStageMask().static voidndstStageMask(long struct, long value)Unsafe version ofdstStageMask.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static longnsrcAccessMask(long struct)Unsafe version ofsrcAccessMask().static voidnsrcAccessMask(long struct, long value)Unsafe version ofsrcAccessMask.static longnsrcStageMask(long struct)Unsafe version ofsrcStageMask().static voidnsrcStageMask(long struct, long value)Unsafe version ofsrcStageMask.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.longpNext()NULLor a pointer to a structure extending this structure.VkMemoryBarrier2pNext(long value)Sets the specified value to thepNext()field.VkMemoryBarrier2set(int sType, long pNext, long srcStageMask, long srcAccessMask, long dstStageMask, long dstAccessMask)Initializes this struct with the specified values.VkMemoryBarrier2set(VkMemoryBarrier2 src)Copies the specified struct data to this struct.intsizeof()longsrcAccessMask()aVkAccessFlags2mask of access flags to be included in the first access scope.VkMemoryBarrier2srcAccessMask(long value)Sets the specified value to thesrcAccessMask()field.longsrcStageMask()aVkPipelineStageFlags2mask of pipeline stages to be included in the first synchronization scope.VkMemoryBarrier2srcStageMask(long value)Sets the specified value to thesrcStageMask()field.intsType()the type of this structure.VkMemoryBarrier2sType(int value)Sets the specified value to thesType()field.VkMemoryBarrier2sType$Default()Sets theSTRUCTURE_TYPE_MEMORY_BARRIER_2value to thesType()field.
-
-
-
Constructor Detail
-
VkMemoryBarrier2
public VkMemoryBarrier2(java.nio.ByteBuffer container)
Creates aVkMemoryBarrier2instance at the current position of the specifiedByteBuffercontainer. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Detail
-
sizeof
public int sizeof()
- Specified by:
sizeofin classorg.lwjgl.system.Struct
-
sType
public int sType()
the type of this structure.
-
pNext
public long pNext()
NULLor a pointer to a structure extending this structure.
-
srcStageMask
public long srcStageMask()
aVkPipelineStageFlags2mask of pipeline stages to be included in the first synchronization scope.
-
srcAccessMask
public long srcAccessMask()
aVkAccessFlags2mask of access flags to be included in the first access scope.
-
dstStageMask
public long dstStageMask()
aVkPipelineStageFlags2mask of pipeline stages to be included in the second synchronization scope.
-
dstAccessMask
public long dstAccessMask()
aVkAccessFlags2mask of access flags to be included in the second access scope.
-
sType
public VkMemoryBarrier2 sType(int value)
Sets the specified value to thesType()field.
-
sType$Default
public VkMemoryBarrier2 sType$Default()
Sets theSTRUCTURE_TYPE_MEMORY_BARRIER_2value to thesType()field.
-
pNext
public VkMemoryBarrier2 pNext(long value)
Sets the specified value to thepNext()field.
-
srcStageMask
public VkMemoryBarrier2 srcStageMask(long value)
Sets the specified value to thesrcStageMask()field.
-
srcAccessMask
public VkMemoryBarrier2 srcAccessMask(long value)
Sets the specified value to thesrcAccessMask()field.
-
dstStageMask
public VkMemoryBarrier2 dstStageMask(long value)
Sets the specified value to thedstStageMask()field.
-
dstAccessMask
public VkMemoryBarrier2 dstAccessMask(long value)
Sets the specified value to thedstAccessMask()field.
-
set
public VkMemoryBarrier2 set(int sType, long pNext, long srcStageMask, long srcAccessMask, long dstStageMask, long dstAccessMask)
Initializes this struct with the specified values.
-
set
public VkMemoryBarrier2 set(VkMemoryBarrier2 src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkMemoryBarrier2 malloc()
Returns a newVkMemoryBarrier2instance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkMemoryBarrier2 calloc()
Returns a newVkMemoryBarrier2instance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkMemoryBarrier2 create()
Returns a newVkMemoryBarrier2instance allocated withBufferUtils.
-
create
public static VkMemoryBarrier2 create(long address)
Returns a newVkMemoryBarrier2instance for the specified memory address.
-
createSafe
@Nullable public static VkMemoryBarrier2 createSafe(long address)
-
malloc
public static VkMemoryBarrier2.Buffer malloc(int capacity)
Returns a newVkMemoryBarrier2.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkMemoryBarrier2.Buffer calloc(int capacity)
Returns a newVkMemoryBarrier2.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkMemoryBarrier2.Buffer create(int capacity)
Returns a newVkMemoryBarrier2.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkMemoryBarrier2.Buffer create(long address, int capacity)
Create aVkMemoryBarrier2.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkMemoryBarrier2.Buffer createSafe(long address, int capacity)
-
malloc
public static VkMemoryBarrier2 malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryBarrier2instance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkMemoryBarrier2 calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryBarrier2instance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkMemoryBarrier2.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryBarrier2.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkMemoryBarrier2.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkMemoryBarrier2.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
nsType
public static int nsType(long struct)
Unsafe version ofsType().
-
npNext
public static long npNext(long struct)
Unsafe version ofpNext().
-
nsrcStageMask
public static long nsrcStageMask(long struct)
Unsafe version ofsrcStageMask().
-
nsrcAccessMask
public static long nsrcAccessMask(long struct)
Unsafe version ofsrcAccessMask().
-
ndstStageMask
public static long ndstStageMask(long struct)
Unsafe version ofdstStageMask().
-
ndstAccessMask
public static long ndstAccessMask(long struct)
Unsafe version ofdstAccessMask().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
nsrcStageMask
public static void nsrcStageMask(long struct, long value)Unsafe version ofsrcStageMask.
-
nsrcAccessMask
public static void nsrcAccessMask(long struct, long value)Unsafe version ofsrcAccessMask.
-
ndstStageMask
public static void ndstStageMask(long struct, long value)Unsafe version ofdstStageMask.
-
ndstAccessMask
public static void ndstAccessMask(long struct, long value)Unsafe version ofdstAccessMask.
-
-