Class VkWriteDescriptorSet
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkWriteDescriptorSet
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,org.lwjgl.system.NativeResource
,org.lwjgl.system.Pointer
public class VkWriteDescriptorSet extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResource
Structure specifying the parameters of a descriptor set write operation.Description
Only one of
pImageInfo
,pBufferInfo
, orpTexelBufferView
members is used according to the descriptor type specified in thedescriptorType
member of the containingVkWriteDescriptorSet
structure, or none of them in casedescriptorType
isDESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT
, in which case the source data for the descriptor writes is taken from the instance ofVkWriteDescriptorSetInlineUniformBlockEXT
in thepNext
chain ofVkWriteDescriptorSet
, or ifdescriptorType
isDESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV
, in which case the source data for the descriptor writes is taken from the instance ofVkWriteDescriptorSetAccelerationStructureNV
in thepNext
chain ofVkWriteDescriptorSet
, as specified below.If the
dstBinding
has fewer thandescriptorCount
array elements remaining starting fromdstArrayElement
, then the remainder will be used to update the subsequent binding -dstBinding+1
starting at array element zero. If a binding has adescriptorCount
of zero, it is skipped. This behavior applies recursively, with the update affecting consecutive bindings as needed to update alldescriptorCount
descriptors.Note
The same behavior applies to bindings with a descriptor type of
DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT
wheredescriptorCount
specifies the number of bytes to update whiledstArrayElement
specifies the starting byte offset, thus in this case if thedstBinding
has a smaller byte size than the sum ofdstArrayElement
anddescriptorCount
, then the remainder will be used to update the subsequent binding -dstBinding+1
starting at offset zero. This falls out as a special case of the above rule.Valid Usage
dstBinding
must be less than or equal to the maximum value ofbinding
of allVkDescriptorSetLayoutBinding
structures specified whendstSet
’s descriptor set layout was createddstBinding
must be a binding with a non-zerodescriptorCount
- All consecutive bindings updated via a single
VkWriteDescriptorSet
structure, except those with adescriptorCount
of zero, must have identicaldescriptorType
andstageFlags
. - All consecutive bindings updated via a single
VkWriteDescriptorSet
structure, except those with adescriptorCount
of zero, must all either use immutable samplers or must all not use immutable samplers. descriptorType
must match the type ofdstBinding
withindstSet
dstSet
must be a validVkDescriptorSet
handle- The sum of
dstArrayElement
anddescriptorCount
must be less than or equal to the number of array elements in the descriptor set binding specified bydstBinding
, and all applicable consecutive bindings, as described by consecutive binding updates - If
descriptorType
isDESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT
,dstArrayElement
must be an integer multiple of 4 - If
descriptorType
isDESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT
,descriptorCount
must be an integer multiple of 4 - If
descriptorType
isDESCRIPTOR_TYPE_SAMPLER
,DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER
,DESCRIPTOR_TYPE_SAMPLED_IMAGE
,DESCRIPTOR_TYPE_STORAGE_IMAGE
, orDESCRIPTOR_TYPE_INPUT_ATTACHMENT
,pImageInfo
must be a valid pointer to an array ofdescriptorCount
validVkDescriptorImageInfo
structures - If
descriptorType
isDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER
orDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER
,pTexelBufferView
must be a valid pointer to an array ofdescriptorCount
validVkBufferView
handles - If
descriptorType
isDESCRIPTOR_TYPE_UNIFORM_BUFFER
,DESCRIPTOR_TYPE_STORAGE_BUFFER
,DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC
, orDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
,pBufferInfo
must be a valid pointer to an array ofdescriptorCount
validVkDescriptorBufferInfo
structures - If
descriptorType
isDESCRIPTOR_TYPE_SAMPLER
orDESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER
, anddstSet
was not allocated with a layout that included immutable samplers fordstBinding
withdescriptorType
, thesampler
member of each element ofpImageInfo
must be a validVkSampler
object - If
descriptorType
isDESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER
,DESCRIPTOR_TYPE_SAMPLED_IMAGE
,DESCRIPTOR_TYPE_STORAGE_IMAGE
, orDESCRIPTOR_TYPE_INPUT_ATTACHMENT
, theimageView
andimageLayout
members of each element ofpImageInfo
must be a validVkImageView
andVkImageLayout
, respectively - If
descriptorType
isDESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT
, thepNext
chain must include aVkWriteDescriptorSetInlineUniformBlockEXT
structure whosedataSize
member equalsdescriptorCount
- If
descriptorType
isDESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV
, thepNext
chain must include aVkWriteDescriptorSetAccelerationStructureNV
structure whoseaccelerationStructureCount
member equalsdescriptorCount
- If
descriptorType
isDESCRIPTOR_TYPE_SAMPLED_IMAGE
, then theimageView
member of eachpImageInfo
element must have been created without aVkSamplerYcbcrConversionInfo
structure in itspNext
chain - If
descriptorType
isDESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER
, and if any element ofpImageInfo
has aimageView
member that was created with aVkSamplerYcbcrConversionInfo
structure in itspNext
chain, thendstSet
must have been allocated with a layout that included immutable samplers fordstBinding
, and the corresponding immutable sampler must have been created with an identically definedVkSamplerYcbcrConversionInfo
object - If
descriptorType
isDESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER
, anddstSet
was allocated with a layout that included immutable samplers fordstBinding
, then theimageView
member of each element ofpImageInfo
which corresponds to an immutable sampler that enables sampler Y’CBCR conversion must have been created with aVkSamplerYcbcrConversionInfo
structure in itspNext
chain with an identically definedVkSamplerYcbcrConversionInfo
to the corresponding immutable sampler - If
descriptorType
isDESCRIPTOR_TYPE_STORAGE_IMAGE
, for each descriptor that will be accessed via load or store operations theimageLayout
member for corresponding elements ofpImageInfo
must beIMAGE_LAYOUT_GENERAL
- If
descriptorType
isDESCRIPTOR_TYPE_UNIFORM_BUFFER
orDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC
, theoffset
member of each element ofpBufferInfo
must be a multiple ofVkPhysicalDeviceLimits
::minUniformBufferOffsetAlignment
- If
descriptorType
isDESCRIPTOR_TYPE_STORAGE_BUFFER
orDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
, theoffset
member of each element ofpBufferInfo
must be a multiple ofVkPhysicalDeviceLimits
::minStorageBufferOffsetAlignment
- If
descriptorType
isDESCRIPTOR_TYPE_UNIFORM_BUFFER
,DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC
,DESCRIPTOR_TYPE_STORAGE_BUFFER
, orDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
, and thebuffer
member of any element ofpBufferInfo
is the handle of a non-sparse buffer, then that buffer must be bound completely and contiguously to a singleVkDeviceMemory
object - If
descriptorType
isDESCRIPTOR_TYPE_UNIFORM_BUFFER
orDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC
, thebuffer
member of each element ofpBufferInfo
must have been created withBUFFER_USAGE_UNIFORM_BUFFER_BIT
set - If
descriptorType
isDESCRIPTOR_TYPE_STORAGE_BUFFER
orDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
, thebuffer
member of each element ofpBufferInfo
must have been created withBUFFER_USAGE_STORAGE_BUFFER_BIT
set - If
descriptorType
isDESCRIPTOR_TYPE_UNIFORM_BUFFER
orDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC
, therange
member of each element ofpBufferInfo
, or the effective range ifrange
isWHOLE_SIZE
, must be less than or equal toVkPhysicalDeviceLimits
::maxUniformBufferRange
- If
descriptorType
isDESCRIPTOR_TYPE_STORAGE_BUFFER
orDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
, therange
member of each element ofpBufferInfo
, or the effective range ifrange
isWHOLE_SIZE
, must be less than or equal toVkPhysicalDeviceLimits
::maxStorageBufferRange
- If
descriptorType
isDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER
, theVkBuffer
that each element ofpTexelBufferView
was created from must have been created withBUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT
set - If
descriptorType
isDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER
, theVkBuffer
that each element ofpTexelBufferView
was created from must have been created withBUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT
set - If
descriptorType
isDESCRIPTOR_TYPE_STORAGE_IMAGE
orDESCRIPTOR_TYPE_INPUT_ATTACHMENT
, theimageView
member of each element ofpImageInfo
must have been created with the identity swizzle - If
descriptorType
isDESCRIPTOR_TYPE_SAMPLED_IMAGE
orDESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER
, theimageView
member of each element ofpImageInfo
must have been created withIMAGE_USAGE_SAMPLED_BIT
set - If
descriptorType
isDESCRIPTOR_TYPE_SAMPLED_IMAGE
orDESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER
, theimageLayout
member of each element ofpImageInfo
must be a member of the list given in Sampled Image or Combined Image Sampler, corresponding to its type - If
descriptorType
isDESCRIPTOR_TYPE_INPUT_ATTACHMENT
, theimageView
member of each element ofpImageInfo
must have been created withIMAGE_USAGE_INPUT_ATTACHMENT_BIT
set - If
descriptorType
isDESCRIPTOR_TYPE_STORAGE_IMAGE
, theimageView
member of each element ofpImageInfo
must have been created withIMAGE_USAGE_STORAGE_BIT
set - All consecutive bindings updated via a single
VkWriteDescriptorSet
structure, except those with adescriptorCount
of zero, must have identicalVkDescriptorBindingFlagBitsEXT
. - If
descriptorType
isDESCRIPTOR_TYPE_SAMPLER
, thendstSet
must not have been allocated with a layout that included immutable samplers fordstBinding
Valid Usage (Implicit)
sType
must beSTRUCTURE_TYPE_WRITE_DESCRIPTOR_SET
- Each
pNext
member of any structure (including this one) in thepNext
chain must be eitherNULL
or a pointer to a valid instance ofVkWriteDescriptorSetAccelerationStructureNV
orVkWriteDescriptorSetInlineUniformBlockEXT
- Each
sType
member in thepNext
chain must be unique descriptorType
must be a validVkDescriptorType
valuedescriptorCount
must be greater than 0- Both of
dstSet
, and the elements ofpTexelBufferView
that are valid handles must have been created, allocated, or retrieved from the sameVkDevice
See Also
VkDescriptorBufferInfo
,VkDescriptorImageInfo
,CmdPushDescriptorSetKHR
,UpdateDescriptorSets
Member documentation
sType
– the type of this structure.pNext
–NULL
or a pointer to an extension-specific structure.dstSet
– the destination descriptor set to update.dstBinding
– the descriptor binding within that set.dstArrayElement
– the starting element in that array. If the descriptor binding identified bydstSet
anddstBinding
has a descriptor type ofDESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT
thendstArrayElement
specifies the starting byte offset within the binding.descriptorCount
– the number of descriptors to update (the number of elements inpImageInfo
,pBufferInfo
, orpTexelBufferView
, or a value matching thedataSize
member of an instance ofVkWriteDescriptorSetInlineUniformBlockEXT
in thepNext
chain , or a value matching theaccelerationStructureCount
of an instance ofVkWriteDescriptorSetAccelerationStructureNV
in thepNext
chain ). If the descriptor binding identified bydstSet
anddstBinding
has a descriptor type ofDESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT
thendescriptorCount
specifies the number of bytes to update.descriptorType
– aVkDescriptorType
specifying the type of each descriptor inpImageInfo
,pBufferInfo
, orpTexelBufferView
, as described below. It must be the same type as that specified inVkDescriptorSetLayoutBinding
fordstSet
atdstBinding
. The type of the descriptor also controls which array the descriptors are taken from.pImageInfo
– points to an array ofVkDescriptorImageInfo
structures or is ignored, as described below.pBufferInfo
– points to an array ofVkDescriptorBufferInfo
structures or is ignored, as described below.pTexelBufferView
– points to an array ofVkBufferView
handles as described in the Buffer Views section or is ignored, as described below.
Layout
struct VkWriteDescriptorSet { VkStructureType sType; void const * pNext; VkDescriptorSet dstSet; uint32_t dstBinding; uint32_t dstArrayElement; uint32_t descriptorCount; VkDescriptorType descriptorType;
VkDescriptorImageInfo
const * pImageInfo;VkDescriptorBufferInfo
const * pBufferInfo; VkBufferView const * pTexelBufferView; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VkWriteDescriptorSet.Buffer
An array ofVkWriteDescriptorSet
structs.
-
Field Summary
Fields Modifier and Type Field Description static int
ALIGNOF
The struct alignment in bytes.static int
DESCRIPTORCOUNT
DESCRIPTORTYPE
DSTARRAYELEMENT
DSTBINDING
DSTSET
PBUFFERINFO
PIMAGEINFO
PNEXT
PTEXELBUFFERVIEWThe struct member offsets.static int
SIZEOF
The struct size in bytes.static int
STYPE
The struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkWriteDescriptorSet(java.nio.ByteBuffer container)
Creates aVkWriteDescriptorSet
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkWriteDescriptorSet
calloc()
Returns a newVkWriteDescriptorSet
instance allocated withmemCalloc
.static VkWriteDescriptorSet.Buffer
calloc(int capacity)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated withmemCalloc
.static VkWriteDescriptorSet
callocStack()
Returns a newVkWriteDescriptorSet
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkWriteDescriptorSet.Buffer
callocStack(int capacity)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkWriteDescriptorSet.Buffer
callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkWriteDescriptorSet
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkWriteDescriptorSet
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkWriteDescriptorSet
create()
Returns a newVkWriteDescriptorSet
instance allocated withBufferUtils
.static VkWriteDescriptorSet.Buffer
create(int capacity)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated withBufferUtils
.static VkWriteDescriptorSet
create(long address)
Returns a newVkWriteDescriptorSet
instance for the specified memory address.static VkWriteDescriptorSet.Buffer
create(long address, int capacity)
Create aVkWriteDescriptorSet.Buffer
instance at the specified memory.static VkWriteDescriptorSet
createSafe(long address)
static VkWriteDescriptorSet.Buffer
createSafe(long address, int capacity)
int
descriptorCount()
Returns the value of thedescriptorCount
field.VkWriteDescriptorSet
descriptorCount(int value)
Sets the specified value to thedescriptorCount
field.int
descriptorType()
Returns the value of thedescriptorType
field.VkWriteDescriptorSet
descriptorType(int value)
Sets the specified value to thedescriptorType
field.int
dstArrayElement()
Returns the value of thedstArrayElement
field.VkWriteDescriptorSet
dstArrayElement(int value)
Sets the specified value to thedstArrayElement
field.int
dstBinding()
Returns the value of thedstBinding
field.VkWriteDescriptorSet
dstBinding(int value)
Sets the specified value to thedstBinding
field.long
dstSet()
Returns the value of thedstSet
field.VkWriteDescriptorSet
dstSet(long value)
Sets the specified value to thedstSet
field.static VkWriteDescriptorSet
malloc()
Returns a newVkWriteDescriptorSet
instance allocated withmemAlloc
.static VkWriteDescriptorSet.Buffer
malloc(int capacity)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated withmemAlloc
.static VkWriteDescriptorSet
mallocStack()
Returns a newVkWriteDescriptorSet
instance allocated on the thread-localMemoryStack
.static VkWriteDescriptorSet.Buffer
mallocStack(int capacity)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated on the thread-localMemoryStack
.static VkWriteDescriptorSet.Buffer
mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated on the specifiedMemoryStack
.static VkWriteDescriptorSet
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkWriteDescriptorSet
instance allocated on the specifiedMemoryStack
.static int
ndescriptorCount(long struct)
Unsafe version ofdescriptorCount()
.static void
ndescriptorCount(long struct, int value)
Sets the specified value to thedescriptorCount
field of the specifiedstruct
.static int
ndescriptorType(long struct)
Unsafe version ofdescriptorType()
.static void
ndescriptorType(long struct, int value)
Unsafe version ofdescriptorType
.static int
ndstArrayElement(long struct)
Unsafe version ofdstArrayElement()
.static void
ndstArrayElement(long struct, int value)
Unsafe version ofdstArrayElement
.static int
ndstBinding(long struct)
Unsafe version ofdstBinding()
.static void
ndstBinding(long struct, int value)
Unsafe version ofdstBinding
.static long
ndstSet(long struct)
Unsafe version ofdstSet()
.static void
ndstSet(long struct, long value)
Unsafe version ofdstSet
.static VkDescriptorBufferInfo.Buffer
npBufferInfo(long struct)
Unsafe version ofpBufferInfo()
.static void
npBufferInfo(long struct, VkDescriptorBufferInfo.Buffer value)
Unsafe version ofpBufferInfo
.static VkDescriptorImageInfo.Buffer
npImageInfo(long struct)
Unsafe version ofpImageInfo()
.static void
npImageInfo(long struct, VkDescriptorImageInfo.Buffer value)
Unsafe version ofpImageInfo
.static long
npNext(long struct)
Unsafe version ofpNext()
.static void
npNext(long struct, long value)
Unsafe version ofpNext
.static java.nio.LongBuffer
npTexelBufferView(long struct)
Unsafe version ofpTexelBufferView
.static void
npTexelBufferView(long struct, java.nio.LongBuffer value)
Unsafe version ofpTexelBufferView
.static int
nsType(long struct)
Unsafe version ofsType()
.static void
nsType(long struct, int value)
Unsafe version ofsType
.VkDescriptorBufferInfo.Buffer
pBufferInfo()
Returns aVkDescriptorBufferInfo.Buffer
view of the struct array pointed to by thepBufferInfo
field.VkWriteDescriptorSet
pBufferInfo(VkDescriptorBufferInfo.Buffer value)
Sets the address of the specifiedVkDescriptorBufferInfo.Buffer
to thepBufferInfo
field.VkDescriptorImageInfo.Buffer
pImageInfo()
Returns aVkDescriptorImageInfo.Buffer
view of the struct array pointed to by thepImageInfo
field.VkWriteDescriptorSet
pImageInfo(VkDescriptorImageInfo.Buffer value)
Sets the address of the specifiedVkDescriptorImageInfo.Buffer
to thepImageInfo
field.long
pNext()
Returns the value of thepNext
field.VkWriteDescriptorSet
pNext(long value)
Sets the specified value to thepNext
field.java.nio.LongBuffer
pTexelBufferView()
Returns aLongBuffer
view of the data pointed to by thepTexelBufferView
field.VkWriteDescriptorSet
pTexelBufferView(java.nio.LongBuffer value)
Sets the address of the specifiedLongBuffer
to thepTexelBufferView
field.VkWriteDescriptorSet
set(int sType, long pNext, long dstSet, int dstBinding, int dstArrayElement, int descriptorCount, int descriptorType, VkDescriptorImageInfo.Buffer pImageInfo, VkDescriptorBufferInfo.Buffer pBufferInfo, java.nio.LongBuffer pTexelBufferView)
Initializes this struct with the specified values.VkWriteDescriptorSet
set(VkWriteDescriptorSet src)
Copies the specified struct data to this struct.int
sizeof()
int
sType()
Returns the value of thesType
field.VkWriteDescriptorSet
sType(int value)
Sets the specified value to thesType
field.
-
-
-
Constructor Detail
-
VkWriteDescriptorSet
public VkWriteDescriptorSet(java.nio.ByteBuffer container)
Creates aVkWriteDescriptorSet
instance at the current position of the specifiedByteBuffer
container. 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:
sizeof
in classorg.lwjgl.system.Struct
-
sType
public int sType()
Returns the value of thesType
field.
-
pNext
public long pNext()
Returns the value of thepNext
field.
-
dstSet
public long dstSet()
Returns the value of thedstSet
field.
-
dstBinding
public int dstBinding()
Returns the value of thedstBinding
field.
-
dstArrayElement
public int dstArrayElement()
Returns the value of thedstArrayElement
field.
-
descriptorCount
public int descriptorCount()
Returns the value of thedescriptorCount
field.
-
descriptorType
public int descriptorType()
Returns the value of thedescriptorType
field.
-
pImageInfo
@Nullable public VkDescriptorImageInfo.Buffer pImageInfo()
Returns aVkDescriptorImageInfo.Buffer
view of the struct array pointed to by thepImageInfo
field.
-
pBufferInfo
@Nullable public VkDescriptorBufferInfo.Buffer pBufferInfo()
Returns aVkDescriptorBufferInfo.Buffer
view of the struct array pointed to by thepBufferInfo
field.
-
pTexelBufferView
@Nullable public java.nio.LongBuffer pTexelBufferView()
Returns aLongBuffer
view of the data pointed to by thepTexelBufferView
field.
-
sType
public VkWriteDescriptorSet sType(int value)
Sets the specified value to thesType
field.
-
pNext
public VkWriteDescriptorSet pNext(long value)
Sets the specified value to thepNext
field.
-
dstSet
public VkWriteDescriptorSet dstSet(long value)
Sets the specified value to thedstSet
field.
-
dstBinding
public VkWriteDescriptorSet dstBinding(int value)
Sets the specified value to thedstBinding
field.
-
dstArrayElement
public VkWriteDescriptorSet dstArrayElement(int value)
Sets the specified value to thedstArrayElement
field.
-
descriptorCount
public VkWriteDescriptorSet descriptorCount(int value)
Sets the specified value to thedescriptorCount
field.
-
descriptorType
public VkWriteDescriptorSet descriptorType(int value)
Sets the specified value to thedescriptorType
field.
-
pImageInfo
public VkWriteDescriptorSet pImageInfo(@Nullable VkDescriptorImageInfo.Buffer value)
Sets the address of the specifiedVkDescriptorImageInfo.Buffer
to thepImageInfo
field.
-
pBufferInfo
public VkWriteDescriptorSet pBufferInfo(@Nullable VkDescriptorBufferInfo.Buffer value)
Sets the address of the specifiedVkDescriptorBufferInfo.Buffer
to thepBufferInfo
field.
-
pTexelBufferView
public VkWriteDescriptorSet pTexelBufferView(@Nullable java.nio.LongBuffer value)
Sets the address of the specifiedLongBuffer
to thepTexelBufferView
field.
-
set
public VkWriteDescriptorSet set(int sType, long pNext, long dstSet, int dstBinding, int dstArrayElement, int descriptorCount, int descriptorType, @Nullable VkDescriptorImageInfo.Buffer pImageInfo, @Nullable VkDescriptorBufferInfo.Buffer pBufferInfo, @Nullable java.nio.LongBuffer pTexelBufferView)
Initializes this struct with the specified values.
-
set
public VkWriteDescriptorSet set(VkWriteDescriptorSet src)
Copies the specified struct data to this struct.- Parameters:
src
- the source struct- Returns:
- this struct
-
malloc
public static VkWriteDescriptorSet malloc()
Returns a newVkWriteDescriptorSet
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static VkWriteDescriptorSet calloc()
Returns a newVkWriteDescriptorSet
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static VkWriteDescriptorSet create()
Returns a newVkWriteDescriptorSet
instance allocated withBufferUtils
.
-
create
public static VkWriteDescriptorSet create(long address)
Returns a newVkWriteDescriptorSet
instance for the specified memory address.
-
createSafe
@Nullable public static VkWriteDescriptorSet createSafe(long address)
-
malloc
public static VkWriteDescriptorSet.Buffer malloc(int capacity)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static VkWriteDescriptorSet.Buffer calloc(int capacity)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static VkWriteDescriptorSet.Buffer create(int capacity)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static VkWriteDescriptorSet.Buffer create(long address, int capacity)
Create aVkWriteDescriptorSet.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
createSafe
@Nullable public static VkWriteDescriptorSet.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkWriteDescriptorSet mallocStack()
Returns a newVkWriteDescriptorSet
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static VkWriteDescriptorSet callocStack()
Returns a newVkWriteDescriptorSet
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static VkWriteDescriptorSet mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkWriteDescriptorSet
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static VkWriteDescriptorSet callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkWriteDescriptorSet
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
mallocStack
public static VkWriteDescriptorSet.Buffer mallocStack(int capacity)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static VkWriteDescriptorSet.Buffer callocStack(int capacity)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacity
-
mallocStack
public static VkWriteDescriptorSet.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
callocStack
public static VkWriteDescriptorSet.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkWriteDescriptorSet.Buffer
instance allocated on the specifiedMemoryStack
and 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()
.
-
ndstSet
public static long ndstSet(long struct)
Unsafe version ofdstSet()
.
-
ndstBinding
public static int ndstBinding(long struct)
Unsafe version ofdstBinding()
.
-
ndstArrayElement
public static int ndstArrayElement(long struct)
Unsafe version ofdstArrayElement()
.
-
ndescriptorCount
public static int ndescriptorCount(long struct)
Unsafe version ofdescriptorCount()
.
-
ndescriptorType
public static int ndescriptorType(long struct)
Unsafe version ofdescriptorType()
.
-
npImageInfo
@Nullable public static VkDescriptorImageInfo.Buffer npImageInfo(long struct)
Unsafe version ofpImageInfo()
.
-
npBufferInfo
@Nullable public static VkDescriptorBufferInfo.Buffer npBufferInfo(long struct)
Unsafe version ofpBufferInfo()
.
-
npTexelBufferView
@Nullable public static java.nio.LongBuffer npTexelBufferView(long struct)
Unsafe version ofpTexelBufferView
.
-
nsType
public static void nsType(long struct, int value)
Unsafe version ofsType
.
-
npNext
public static void npNext(long struct, long value)
Unsafe version ofpNext
.
-
ndstSet
public static void ndstSet(long struct, long value)
Unsafe version ofdstSet
.
-
ndstBinding
public static void ndstBinding(long struct, int value)
Unsafe version ofdstBinding
.
-
ndstArrayElement
public static void ndstArrayElement(long struct, int value)
Unsafe version ofdstArrayElement
.
-
ndescriptorCount
public static void ndescriptorCount(long struct, int value)
Sets the specified value to thedescriptorCount
field of the specifiedstruct
.
-
ndescriptorType
public static void ndescriptorType(long struct, int value)
Unsafe version ofdescriptorType
.
-
npImageInfo
public static void npImageInfo(long struct, @Nullable VkDescriptorImageInfo.Buffer value)
Unsafe version ofpImageInfo
.
-
npBufferInfo
public static void npBufferInfo(long struct, @Nullable VkDescriptorBufferInfo.Buffer value)
Unsafe version ofpBufferInfo
.
-
npTexelBufferView
public static void npTexelBufferView(long struct, @Nullable java.nio.LongBuffer value)
Unsafe version ofpTexelBufferView
.
-
-