Package org.lwjgl.vulkan
Class VkDependencyInfo
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkDependencyInfo>
org.lwjgl.vulkan.VkDependencyInfo
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
- Direct Known Subclasses:
VkDependencyInfoKHR
public class VkDependencyInfo
extends org.lwjgl.system.Struct<VkDependencyInfo>
implements org.lwjgl.system.NativeResource
Structure specifying dependency information for a synchronization command.
Description
This structure defines a set of memory dependencies, as well as queue family ownership transfer operations and image layout transitions.
Each member of pMemoryBarriers, pBufferMemoryBarriers, and pImageMemoryBarriers defines a separate memory dependency.
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_DEPENDENCY_INFOpNextmust beNULLdependencyFlagsmust be a valid combination ofVkDependencyFlagBitsvalues- If
memoryBarrierCountis not 0,pMemoryBarriersmust be a valid pointer to an array ofmemoryBarrierCountvalidVkMemoryBarrier2structures - If
bufferMemoryBarrierCountis not 0,pBufferMemoryBarriersmust be a valid pointer to an array ofbufferMemoryBarrierCountvalidVkBufferMemoryBarrier2structures - If
imageMemoryBarrierCountis not 0,pImageMemoryBarriersmust be a valid pointer to an array ofimageMemoryBarrierCountvalidVkImageMemoryBarrier2structures
See Also
VkBufferMemoryBarrier2, VkImageMemoryBarrier2, VkMemoryBarrier2, CmdPipelineBarrier2, CmdPipelineBarrier2KHR, CmdSetEvent2, CmdSetEvent2KHR, CmdWaitEvents2, CmdWaitEvents2KHR
Layout
struct VkDependencyInfo {
VkStructureType sType();
void const * pNext();
VkDependencyFlags dependencyFlags();
uint32_t memoryBarrierCount();
VkMemoryBarrier2 const * pMemoryBarriers();
uint32_t bufferMemoryBarrierCount();
VkBufferMemoryBarrier2 const * pBufferMemoryBarriers();
uint32_t imageMemoryBarrierCount();
VkImageMemoryBarrier2 const * pImageMemoryBarriers();
}-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionVkDependencyInfo(ByteBuffer container) Creates aVkDependencyInfoinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionintthe length of thepBufferMemoryBarriersarray.static VkDependencyInfocalloc()Returns a newVkDependencyInfoinstance allocated withmemCalloc.static VkDependencyInfo.Buffercalloc(int capacity) Returns a newVkDependencyInfo.Bufferinstance allocated withmemCalloc.static VkDependencyInfo.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkDependencyInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkDependencyInfocalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkDependencyInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkDependencyInfocreate()Returns a newVkDependencyInfoinstance allocated withBufferUtils.static VkDependencyInfo.Buffercreate(int capacity) Returns a newVkDependencyInfo.Bufferinstance allocated withBufferUtils.static VkDependencyInfocreate(long address) Returns a newVkDependencyInfoinstance for the specified memory address.static VkDependencyInfo.Buffercreate(long address, int capacity) Create aVkDependencyInfo.Bufferinstance at the specified memory.static @Nullable VkDependencyInfocreateSafe(long address) static @Nullable VkDependencyInfo.BuffercreateSafe(long address, int capacity) inta bitmask ofVkDependencyFlagBitsspecifying how execution and memory dependencies are formed.dependencyFlags(int value) Sets the specified value to thedependencyFlags()field.intthe length of thepImageMemoryBarriersarray.static VkDependencyInfomalloc()Returns a newVkDependencyInfoinstance allocated withmemAlloc.static VkDependencyInfo.Buffermalloc(int capacity) Returns a newVkDependencyInfo.Bufferinstance allocated withmemAlloc.static VkDependencyInfo.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkDependencyInfo.Bufferinstance allocated on the specifiedMemoryStack.static VkDependencyInfomalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkDependencyInfoinstance allocated on the specifiedMemoryStack.intthe length of thepMemoryBarriersarray.static intnbufferMemoryBarrierCount(long struct) Unsafe version ofbufferMemoryBarrierCount().static voidnbufferMemoryBarrierCount(long struct, int value) Sets the specified value to thebufferMemoryBarrierCountfield of the specifiedstruct.static intndependencyFlags(long struct) Unsafe version ofdependencyFlags().static voidndependencyFlags(long struct, int value) Unsafe version ofdependencyFlags.static intnimageMemoryBarrierCount(long struct) Unsafe version ofimageMemoryBarrierCount().static voidnimageMemoryBarrierCount(long struct, int value) Sets the specified value to theimageMemoryBarrierCountfield of the specifiedstruct.static intnmemoryBarrierCount(long struct) Unsafe version ofmemoryBarrierCount().static voidnmemoryBarrierCount(long struct, int value) Sets the specified value to thememoryBarrierCountfield of the specifiedstruct.static @Nullable VkBufferMemoryBarrier2.BuffernpBufferMemoryBarriers(long struct) Unsafe version ofpBufferMemoryBarriers().static voidnpBufferMemoryBarriers(long struct, @Nullable VkBufferMemoryBarrier2.Buffer value) Unsafe version ofpBufferMemoryBarriers.static @Nullable VkImageMemoryBarrier2.BuffernpImageMemoryBarriers(long struct) Unsafe version ofpImageMemoryBarriers().static voidnpImageMemoryBarriers(long struct, @Nullable VkImageMemoryBarrier2.Buffer value) Unsafe version ofpImageMemoryBarriers.static @Nullable VkMemoryBarrier2.BuffernpMemoryBarriers(long struct) Unsafe version ofpMemoryBarriers().static voidnpMemoryBarriers(long struct, @Nullable VkMemoryBarrier2.Buffer value) Unsafe version ofpMemoryBarriers.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static intnsType(long struct) Unsafe version ofsType().static voidnsType(long struct, int value) Unsafe version ofsType.@Nullable VkBufferMemoryBarrier2.Buffera pointer to an array ofVkBufferMemoryBarrier2structures defining memory dependencies between buffer ranges.pBufferMemoryBarriers(@Nullable VkBufferMemoryBarrier2.Buffer value) Sets the address of the specifiedVkBufferMemoryBarrier2.Bufferto thepBufferMemoryBarriers()field.@Nullable VkImageMemoryBarrier2.Buffera pointer to an array ofVkImageMemoryBarrier2structures defining memory dependencies between image subresources.pImageMemoryBarriers(@Nullable VkImageMemoryBarrier2.Buffer value) Sets the address of the specifiedVkImageMemoryBarrier2.Bufferto thepImageMemoryBarriers()field.@Nullable VkMemoryBarrier2.Buffera pointer to an array ofVkMemoryBarrier2structures defining memory dependencies between any memory accesses.pMemoryBarriers(@Nullable VkMemoryBarrier2.Buffer value) Sets the address of the specifiedVkMemoryBarrier2.Bufferto thepMemoryBarriers()field.longpNext()NULLor a pointer to a structure extending this structure.pNext(long value) Sets the specified value to thepNext()field.set(int sType, long pNext, int dependencyFlags, @Nullable VkMemoryBarrier2.Buffer pMemoryBarriers, @Nullable VkBufferMemoryBarrier2.Buffer pBufferMemoryBarriers, @Nullable VkImageMemoryBarrier2.Buffer pImageMemoryBarriers) Initializes this struct with the specified values.set(VkDependencyInfo src) Copies the specified struct data to this struct.intsizeof()intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_DEPENDENCY_INFOvalue to thesType()field.static voidvalidate(long struct) Validates pointer members that should not beNULL.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
STYPE
public static final int STYPEThe struct member offsets. -
PNEXT
public static final int PNEXTThe struct member offsets. -
DEPENDENCYFLAGS
public static final int DEPENDENCYFLAGSThe struct member offsets. -
MEMORYBARRIERCOUNT
public static final int MEMORYBARRIERCOUNTThe struct member offsets. -
PMEMORYBARRIERS
public static final int PMEMORYBARRIERSThe struct member offsets. -
BUFFERMEMORYBARRIERCOUNT
public static final int BUFFERMEMORYBARRIERCOUNTThe struct member offsets. -
PBUFFERMEMORYBARRIERS
public static final int PBUFFERMEMORYBARRIERSThe struct member offsets. -
IMAGEMEMORYBARRIERCOUNT
public static final int IMAGEMEMORYBARRIERCOUNTThe struct member offsets. -
PIMAGEMEMORYBARRIERS
public static final int PIMAGEMEMORYBARRIERSThe struct member offsets.
-
-
Constructor Details
-
VkDependencyInfo
Creates aVkDependencyInfoinstance 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 Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<VkDependencyInfo>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
dependencyFlags
public int dependencyFlags()a bitmask ofVkDependencyFlagBitsspecifying how execution and memory dependencies are formed. -
memoryBarrierCount
public int memoryBarrierCount()the length of thepMemoryBarriersarray. -
pMemoryBarriers
a pointer to an array ofVkMemoryBarrier2structures defining memory dependencies between any memory accesses. -
bufferMemoryBarrierCount
public int bufferMemoryBarrierCount()the length of thepBufferMemoryBarriersarray. -
pBufferMemoryBarriers
a pointer to an array ofVkBufferMemoryBarrier2structures defining memory dependencies between buffer ranges. -
imageMemoryBarrierCount
public int imageMemoryBarrierCount()the length of thepImageMemoryBarriersarray. -
pImageMemoryBarriers
a pointer to an array ofVkImageMemoryBarrier2structures defining memory dependencies between image subresources. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_DEPENDENCY_INFOvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
dependencyFlags
Sets the specified value to thedependencyFlags()field. -
pMemoryBarriers
Sets the address of the specifiedVkMemoryBarrier2.Bufferto thepMemoryBarriers()field. -
pBufferMemoryBarriers
Sets the address of the specifiedVkBufferMemoryBarrier2.Bufferto thepBufferMemoryBarriers()field. -
pImageMemoryBarriers
Sets the address of the specifiedVkImageMemoryBarrier2.Bufferto thepImageMemoryBarriers()field. -
set
public VkDependencyInfo set(int sType, long pNext, int dependencyFlags, @Nullable VkMemoryBarrier2.Buffer pMemoryBarriers, @Nullable VkBufferMemoryBarrier2.Buffer pBufferMemoryBarriers, @Nullable VkImageMemoryBarrier2.Buffer pImageMemoryBarriers) Initializes this struct with the specified values. -
set
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newVkDependencyInfoinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkDependencyInfoinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkDependencyInfoinstance allocated withBufferUtils. -
create
Returns a newVkDependencyInfoinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkDependencyInfo.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkDependencyInfo.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkDependencyInfo.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkDependencyInfo.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
-
malloc
Returns a newVkDependencyInfoinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkDependencyInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
Returns a newVkDependencyInfo.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
Returns a newVkDependencyInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nsType
public static int nsType(long struct) Unsafe version ofsType(). -
npNext
public static long npNext(long struct) Unsafe version ofpNext(). -
ndependencyFlags
public static int ndependencyFlags(long struct) Unsafe version ofdependencyFlags(). -
nmemoryBarrierCount
public static int nmemoryBarrierCount(long struct) Unsafe version ofmemoryBarrierCount(). -
npMemoryBarriers
Unsafe version ofpMemoryBarriers(). -
nbufferMemoryBarrierCount
public static int nbufferMemoryBarrierCount(long struct) Unsafe version ofbufferMemoryBarrierCount(). -
npBufferMemoryBarriers
Unsafe version ofpBufferMemoryBarriers(). -
nimageMemoryBarrierCount
public static int nimageMemoryBarrierCount(long struct) Unsafe version ofimageMemoryBarrierCount(). -
npImageMemoryBarriers
Unsafe version ofpImageMemoryBarriers(). -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext. -
ndependencyFlags
public static void ndependencyFlags(long struct, int value) Unsafe version ofdependencyFlags. -
nmemoryBarrierCount
public static void nmemoryBarrierCount(long struct, int value) Sets the specified value to thememoryBarrierCountfield of the specifiedstruct. -
npMemoryBarriers
Unsafe version ofpMemoryBarriers. -
nbufferMemoryBarrierCount
public static void nbufferMemoryBarrierCount(long struct, int value) Sets the specified value to thebufferMemoryBarrierCountfield of the specifiedstruct. -
npBufferMemoryBarriers
public static void npBufferMemoryBarriers(long struct, @Nullable VkBufferMemoryBarrier2.Buffer value) Unsafe version ofpBufferMemoryBarriers. -
nimageMemoryBarrierCount
public static void nimageMemoryBarrierCount(long struct, int value) Sets the specified value to theimageMemoryBarrierCountfield of the specifiedstruct. -
npImageMemoryBarriers
Unsafe version ofpImageMemoryBarriers. -
validate
public static void validate(long struct) Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-