Package org.lwjgl.vulkan
Class VkSubpassDependency2
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkSubpassDependency2
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
- Direct Known Subclasses:
VkSubpassDependency2KHR
public class VkSubpassDependency2 extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying a subpass dependency.Description
Parameters defined by this structure with the same name as those in
VkSubpassDependencyhave the identical effect to those parameters.viewOffsethas the same effect for the described subpass dependency asVkRenderPassMultiviewCreateInfo::pViewOffsetshas on each corresponding subpass dependency.If a
VkMemoryBarrier2is included in thepNextchain,srcStageMask,dstStageMask,srcAccessMask, anddstAccessMaskparameters are ignored. The synchronization and access scopes instead are defined by the parameters ofVkMemoryBarrier2.Valid Usage
- If the geometry shaders feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_GEOMETRY_SHADER_BIT - If the tessellation shaders feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BITorPIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT - If the conditional rendering feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT - If the fragment density map feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT - If the transform feedback feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT - If the mesh shaders feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_MESH_SHADER_BIT_NV - If the task shaders feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_TASK_SHADER_BIT_NV - If the shading rate image feature is not enabled,
srcStageMaskmust not containPIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV - If the
synchronization2feature is not enabled,srcStageMaskmust not be 0
- If the geometry shaders feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_GEOMETRY_SHADER_BIT - If the tessellation shaders feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BITorPIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT - If the conditional rendering feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT - If the fragment density map feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT - If the transform feedback feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT - If the mesh shaders feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_MESH_SHADER_BIT_NV - If the task shaders feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_TASK_SHADER_BIT_NV - If the shading rate image feature is not enabled,
dstStageMaskmust not containPIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV - If the
synchronization2feature is not enabled,dstStageMaskmust not be 0 srcSubpassmust be less than or equal todstSubpass, unless one of them isSUBPASS_EXTERNAL, to avoid cyclic dependencies and ensure a valid execution ordersrcSubpassanddstSubpassmust not both be equal toSUBPASS_EXTERNAL- If
srcSubpassis equal todstSubpassand not all of the stages insrcStageMaskanddstStageMaskare framebuffer-space stages, the logically latest pipeline stage insrcStageMaskmust be logically earlier than or equal to the logically earliest pipeline stage indstStageMask - Any access flag included in
srcAccessMaskmust be supported by one of the pipeline stages insrcStageMask, as specified in the table of supported access types - Any access flag included in
dstAccessMaskmust be supported by one of the pipeline stages indstStageMask, as specified in the table of supported access types - If
dependencyFlagsincludesDEPENDENCY_VIEW_LOCAL_BIT,srcSubpassmust not be equal toSUBPASS_EXTERNAL - If
dependencyFlagsincludesDEPENDENCY_VIEW_LOCAL_BIT,dstSubpassmust not be equal toSUBPASS_EXTERNAL - If
srcSubpassequalsdstSubpass, andsrcStageMaskanddstStageMaskboth include a framebuffer-space stage, thendependencyFlagsmust includeDEPENDENCY_BY_REGION_BIT - If
viewOffsetis not equal to 0,srcSubpassmust not be equal todstSubpass - If
dependencyFlagsdoes not includeDEPENDENCY_VIEW_LOCAL_BIT,viewOffsetmust be 0
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_SUBPASS_DEPENDENCY_2pNextmust beNULLor a pointer to a valid instance ofVkMemoryBarrier2- The
sTypevalue of each struct in thepNextchain must be unique srcStageMaskmust be a valid combination ofVkPipelineStageFlagBitsvaluesdstStageMaskmust be a valid combination ofVkPipelineStageFlagBitsvaluessrcAccessMaskmust be a valid combination ofVkAccessFlagBitsvaluesdstAccessMaskmust be a valid combination ofVkAccessFlagBitsvaluesdependencyFlagsmust be a valid combination ofVkDependencyFlagBitsvalues
See Also
Layout
struct VkSubpassDependency2 { VkStructureTypesType(); void const *pNext(); uint32_tsrcSubpass(); uint32_tdstSubpass(); VkPipelineStageFlagssrcStageMask(); VkPipelineStageFlagsdstStageMask(); VkAccessFlagssrcAccessMask(); VkAccessFlagsdstAccessMask(); VkDependencyFlagsdependencyFlags(); int32_tviewOffset(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkSubpassDependency2.BufferAn array ofVkSubpassDependency2structs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intDEPENDENCYFLAGS
DSTACCESSMASK
DSTSTAGEMASK
DSTSUBPASS
PNEXTThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSRCACCESSMASK
SRCSTAGEMASK
SRCSUBPASS
STYPE
VIEWOFFSETThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkSubpassDependency2(java.nio.ByteBuffer container)Creates aVkSubpassDependency2instance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkSubpassDependency2calloc()Returns a newVkSubpassDependency2instance allocated withmemCalloc.static VkSubpassDependency2.Buffercalloc(int capacity)Returns a newVkSubpassDependency2.Bufferinstance allocated withmemCalloc.static VkSubpassDependency2.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkSubpassDependency2.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkSubpassDependency2calloc(org.lwjgl.system.MemoryStack stack)Returns a newVkSubpassDependency2instance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkSubpassDependency2create()Returns a newVkSubpassDependency2instance allocated withBufferUtils.static VkSubpassDependency2.Buffercreate(int capacity)Returns a newVkSubpassDependency2.Bufferinstance allocated withBufferUtils.static VkSubpassDependency2create(long address)Returns a newVkSubpassDependency2instance for the specified memory address.static VkSubpassDependency2.Buffercreate(long address, int capacity)Create aVkSubpassDependency2.Bufferinstance at the specified memory.static VkSubpassDependency2createSafe(long address)static VkSubpassDependency2.BuffercreateSafe(long address, int capacity)intdependencyFlags()a bitmask ofVkDependencyFlagBits.VkSubpassDependency2dependencyFlags(int value)Sets the specified value to thedependencyFlags()field.intdstAccessMask()a bitmask ofVkAccessFlagBitsspecifying a destination access mask.VkSubpassDependency2dstAccessMask(int value)Sets the specified value to thedstAccessMask()field.intdstStageMask()a bitmask ofVkPipelineStageFlagBitsspecifying the destination stage maskVkSubpassDependency2dstStageMask(int value)Sets the specified value to thedstStageMask()field.intdstSubpass()the subpass index of the second subpass in the dependency, orSUBPASS_EXTERNAL.VkSubpassDependency2dstSubpass(int value)Sets the specified value to thedstSubpass()field.static VkSubpassDependency2malloc()Returns a newVkSubpassDependency2instance allocated withmemAlloc.static VkSubpassDependency2.Buffermalloc(int capacity)Returns a newVkSubpassDependency2.Bufferinstance allocated withmemAlloc.static VkSubpassDependency2.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkSubpassDependency2.Bufferinstance allocated on the specifiedMemoryStack.static VkSubpassDependency2malloc(org.lwjgl.system.MemoryStack stack)Returns a newVkSubpassDependency2instance allocated on the specifiedMemoryStack.static intndependencyFlags(long struct)Unsafe version ofdependencyFlags().static voidndependencyFlags(long struct, int value)Unsafe version ofdependencyFlags.static intndstAccessMask(long struct)Unsafe version ofdstAccessMask().static voidndstAccessMask(long struct, int value)Unsafe version ofdstAccessMask.static intndstStageMask(long struct)Unsafe version ofdstStageMask().static voidndstStageMask(long struct, int value)Unsafe version ofdstStageMask.static intndstSubpass(long struct)Unsafe version ofdstSubpass().static voidndstSubpass(long struct, int value)Unsafe version ofdstSubpass.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static intnsrcAccessMask(long struct)Unsafe version ofsrcAccessMask().static voidnsrcAccessMask(long struct, int value)Unsafe version ofsrcAccessMask.static intnsrcStageMask(long struct)Unsafe version ofsrcStageMask().static voidnsrcStageMask(long struct, int value)Unsafe version ofsrcStageMask.static intnsrcSubpass(long struct)Unsafe version ofsrcSubpass().static voidnsrcSubpass(long struct, int value)Unsafe version ofsrcSubpass.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.static intnviewOffset(long struct)Unsafe version ofviewOffset().static voidnviewOffset(long struct, int value)Unsafe version ofviewOffset.longpNext()NULLor a pointer to a structure extending this structure.VkSubpassDependency2pNext(long value)Sets the specified value to thepNext()field.VkSubpassDependency2pNext(VkMemoryBarrier2 value)Prepends the specifiedVkMemoryBarrier2value to thepNextchain.VkSubpassDependency2pNext(VkMemoryBarrier2KHR value)Prepends the specifiedVkMemoryBarrier2KHRvalue to thepNextchain.VkSubpassDependency2set(int sType, long pNext, int srcSubpass, int dstSubpass, int srcStageMask, int dstStageMask, int srcAccessMask, int dstAccessMask, int dependencyFlags, int viewOffset)Initializes this struct with the specified values.VkSubpassDependency2set(VkSubpassDependency2 src)Copies the specified struct data to this struct.intsizeof()intsrcAccessMask()a bitmask ofVkAccessFlagBitsspecifying a source access mask.VkSubpassDependency2srcAccessMask(int value)Sets the specified value to thesrcAccessMask()field.intsrcStageMask()a bitmask ofVkPipelineStageFlagBitsspecifying the source stage mask.VkSubpassDependency2srcStageMask(int value)Sets the specified value to thesrcStageMask()field.intsrcSubpass()the subpass index of the first subpass in the dependency, orSUBPASS_EXTERNAL.VkSubpassDependency2srcSubpass(int value)Sets the specified value to thesrcSubpass()field.intsType()the type of this structure.VkSubpassDependency2sType(int value)Sets the specified value to thesType()field.VkSubpassDependency2sType$Default()Sets theSTRUCTURE_TYPE_SUBPASS_DEPENDENCY_2value to thesType()field.intviewOffset()controls which views in the source subpass the views in the destination subpass depend on.VkSubpassDependency2viewOffset(int value)Sets the specified value to theviewOffset()field.
-
-
-
Constructor Detail
-
VkSubpassDependency2
public VkSubpassDependency2(java.nio.ByteBuffer container)
Creates aVkSubpassDependency2instance 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.
-
srcSubpass
public int srcSubpass()
the subpass index of the first subpass in the dependency, orSUBPASS_EXTERNAL.
-
dstSubpass
public int dstSubpass()
the subpass index of the second subpass in the dependency, orSUBPASS_EXTERNAL.
-
srcStageMask
public int srcStageMask()
a bitmask ofVkPipelineStageFlagBitsspecifying the source stage mask.
-
dstStageMask
public int dstStageMask()
a bitmask ofVkPipelineStageFlagBitsspecifying the destination stage mask
-
srcAccessMask
public int srcAccessMask()
a bitmask ofVkAccessFlagBitsspecifying a source access mask.
-
dstAccessMask
public int dstAccessMask()
a bitmask ofVkAccessFlagBitsspecifying a destination access mask.
-
dependencyFlags
public int dependencyFlags()
a bitmask ofVkDependencyFlagBits.
-
viewOffset
public int viewOffset()
controls which views in the source subpass the views in the destination subpass depend on.
-
sType
public VkSubpassDependency2 sType(int value)
Sets the specified value to thesType()field.
-
sType$Default
public VkSubpassDependency2 sType$Default()
Sets theSTRUCTURE_TYPE_SUBPASS_DEPENDENCY_2value to thesType()field.
-
pNext
public VkSubpassDependency2 pNext(long value)
Sets the specified value to thepNext()field.
-
pNext
public VkSubpassDependency2 pNext(VkMemoryBarrier2 value)
Prepends the specifiedVkMemoryBarrier2value to thepNextchain.
-
pNext
public VkSubpassDependency2 pNext(VkMemoryBarrier2KHR value)
Prepends the specifiedVkMemoryBarrier2KHRvalue to thepNextchain.
-
srcSubpass
public VkSubpassDependency2 srcSubpass(int value)
Sets the specified value to thesrcSubpass()field.
-
dstSubpass
public VkSubpassDependency2 dstSubpass(int value)
Sets the specified value to thedstSubpass()field.
-
srcStageMask
public VkSubpassDependency2 srcStageMask(int value)
Sets the specified value to thesrcStageMask()field.
-
dstStageMask
public VkSubpassDependency2 dstStageMask(int value)
Sets the specified value to thedstStageMask()field.
-
srcAccessMask
public VkSubpassDependency2 srcAccessMask(int value)
Sets the specified value to thesrcAccessMask()field.
-
dstAccessMask
public VkSubpassDependency2 dstAccessMask(int value)
Sets the specified value to thedstAccessMask()field.
-
dependencyFlags
public VkSubpassDependency2 dependencyFlags(int value)
Sets the specified value to thedependencyFlags()field.
-
viewOffset
public VkSubpassDependency2 viewOffset(int value)
Sets the specified value to theviewOffset()field.
-
set
public VkSubpassDependency2 set(int sType, long pNext, int srcSubpass, int dstSubpass, int srcStageMask, int dstStageMask, int srcAccessMask, int dstAccessMask, int dependencyFlags, int viewOffset)
Initializes this struct with the specified values.
-
set
public VkSubpassDependency2 set(VkSubpassDependency2 src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkSubpassDependency2 malloc()
Returns a newVkSubpassDependency2instance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkSubpassDependency2 calloc()
Returns a newVkSubpassDependency2instance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkSubpassDependency2 create()
Returns a newVkSubpassDependency2instance allocated withBufferUtils.
-
create
public static VkSubpassDependency2 create(long address)
Returns a newVkSubpassDependency2instance for the specified memory address.
-
createSafe
@Nullable public static VkSubpassDependency2 createSafe(long address)
-
malloc
public static VkSubpassDependency2.Buffer malloc(int capacity)
Returns a newVkSubpassDependency2.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkSubpassDependency2.Buffer calloc(int capacity)
Returns a newVkSubpassDependency2.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkSubpassDependency2.Buffer create(int capacity)
Returns a newVkSubpassDependency2.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkSubpassDependency2.Buffer create(long address, int capacity)
Create aVkSubpassDependency2.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkSubpassDependency2.Buffer createSafe(long address, int capacity)
-
malloc
public static VkSubpassDependency2 malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkSubpassDependency2instance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkSubpassDependency2 calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkSubpassDependency2instance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkSubpassDependency2.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkSubpassDependency2.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkSubpassDependency2.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkSubpassDependency2.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().
-
nsrcSubpass
public static int nsrcSubpass(long struct)
Unsafe version ofsrcSubpass().
-
ndstSubpass
public static int ndstSubpass(long struct)
Unsafe version ofdstSubpass().
-
nsrcStageMask
public static int nsrcStageMask(long struct)
Unsafe version ofsrcStageMask().
-
ndstStageMask
public static int ndstStageMask(long struct)
Unsafe version ofdstStageMask().
-
nsrcAccessMask
public static int nsrcAccessMask(long struct)
Unsafe version ofsrcAccessMask().
-
ndstAccessMask
public static int ndstAccessMask(long struct)
Unsafe version ofdstAccessMask().
-
ndependencyFlags
public static int ndependencyFlags(long struct)
Unsafe version ofdependencyFlags().
-
nviewOffset
public static int nviewOffset(long struct)
Unsafe version ofviewOffset().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
nsrcSubpass
public static void nsrcSubpass(long struct, int value)Unsafe version ofsrcSubpass.
-
ndstSubpass
public static void ndstSubpass(long struct, int value)Unsafe version ofdstSubpass.
-
nsrcStageMask
public static void nsrcStageMask(long struct, int value)Unsafe version ofsrcStageMask.
-
ndstStageMask
public static void ndstStageMask(long struct, int value)Unsafe version ofdstStageMask.
-
nsrcAccessMask
public static void nsrcAccessMask(long struct, int value)Unsafe version ofsrcAccessMask.
-
ndstAccessMask
public static void ndstAccessMask(long struct, int value)Unsafe version ofdstAccessMask.
-
ndependencyFlags
public static void ndependencyFlags(long struct, int value)Unsafe version ofdependencyFlags.
-
nviewOffset
public static void nviewOffset(long struct, int value)Unsafe version ofviewOffset.
-
-