Package org.lwjgl.vulkan
Class VkDescriptorUpdateTemplateCreateInfo
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkDescriptorUpdateTemplateCreateInfo
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
- Direct Known Subclasses:
VkDescriptorUpdateTemplateCreateInfoKHR
public class VkDescriptorUpdateTemplateCreateInfo extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying parameters of a newly created descriptor update template.Valid Usage
- If
templateTypeisDESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,descriptorSetLayoutmust be a validVkDescriptorSetLayouthandle - If
templateTypeisDESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR,pipelineBindPointmust be a validVkPipelineBindPointvalue - If
templateTypeisDESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR,pipelineLayoutmust be a validVkPipelineLayouthandle - If
templateTypeisDESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR,setmust be the unique set number in the pipeline layout that uses a descriptor set layout that was created withDESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFOpNextmust beNULLflagsmust be 0pDescriptorUpdateEntriesmust be a valid pointer to an array ofdescriptorUpdateEntryCountvalidVkDescriptorUpdateTemplateEntrystructurestemplateTypemust be a validVkDescriptorUpdateTemplateTypevalue- If
descriptorSetLayoutis notNULL_HANDLE,descriptorSetLayoutmust be a validVkDescriptorSetLayouthandle descriptorUpdateEntryCountmust be greater than 0- Both of
descriptorSetLayout, andpipelineLayoutthat are valid handles must have been created, allocated, or retrieved from the sameVkDevice
See Also
VkDescriptorUpdateTemplateEntry,CreateDescriptorUpdateTemplate,CreateDescriptorUpdateTemplateKHRMember documentation
sType– the type of this structure.pNext–NULLor a pointer to an extension-specific structure.flags– reserved for future use.descriptorUpdateEntryCount– the number of elements in thepDescriptorUpdateEntriesarray.pDescriptorUpdateEntries– a pointer to an array ofVkDescriptorUpdateTemplateEntrystructures describing the descriptors to be updated by the descriptor update template.templateType– Specifies the type of the descriptor update template. If set toDESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SETit can only be used to update descriptor sets with a fixeddescriptorSetLayout. If set toDESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHRit can only be used to push descriptor sets using the providedpipelineBindPoint,pipelineLayout, andsetnumber.descriptorSetLayout– the descriptor set layout the parameter update template will be used with. All descriptor sets which are going to be updated through the newly created descriptor update template must be created with this layout.descriptorSetLayoutis the descriptor set layout used to build the descriptor update template. All descriptor sets which are going to be updated through the newly created descriptor update template must be created with a layout that matches (is the same as, or defined identically to) this layout. This parameter is ignored iftemplateTypeis notDESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET.pipelineBindPoint– aVkPipelineBindPointindicating whether the descriptors will be used by graphics pipelines or compute pipelines. This parameter is ignored iftemplateTypeis notDESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHRpipelineLayout– aVkPipelineLayoutobject used to program the bindings. This parameter is ignored iftemplateTypeis notDESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHRset– the set number of the descriptor set in the pipeline layout that will be updated. This parameter is ignored iftemplateTypeis notDESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR
Layout
struct VkDescriptorUpdateTemplateCreateInfo { VkStructureType sType; void const * pNext; VkDescriptorUpdateTemplateCreateFlags flags; uint32_t descriptorUpdateEntryCount;VkDescriptorUpdateTemplateEntryconst * pDescriptorUpdateEntries; VkDescriptorUpdateTemplateType templateType; VkDescriptorSetLayout descriptorSetLayout; VkPipelineBindPoint pipelineBindPoint; VkPipelineLayout pipelineLayout; uint32_t set; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkDescriptorUpdateTemplateCreateInfo.BufferAn array ofVkDescriptorUpdateTemplateCreateInfostructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intDESCRIPTORSETLAYOUT
DESCRIPTORUPDATEENTRYCOUNT
FLAGS
PDESCRIPTORUPDATEENTRIES
PIPELINEBINDPOINT
PIPELINELAYOUT
PNEXT
SETThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSTYPE
TEMPLATETYPEThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkDescriptorUpdateTemplateCreateInfo(java.nio.ByteBuffer container)Creates aVkDescriptorUpdateTemplateCreateInfoinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkDescriptorUpdateTemplateCreateInfocalloc()Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated withmemCalloc.static VkDescriptorUpdateTemplateCreateInfo.Buffercalloc(int capacity)Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated withmemCalloc.static VkDescriptorUpdateTemplateCreateInfocallocStack()Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkDescriptorUpdateTemplateCreateInfo.BuffercallocStack(int capacity)Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkDescriptorUpdateTemplateCreateInfo.BuffercallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkDescriptorUpdateTemplateCreateInfocallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkDescriptorUpdateTemplateCreateInfocreate()Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated withBufferUtils.static VkDescriptorUpdateTemplateCreateInfo.Buffercreate(int capacity)Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated withBufferUtils.static VkDescriptorUpdateTemplateCreateInfocreate(long address)Returns a newVkDescriptorUpdateTemplateCreateInfoinstance for the specified memory address.static VkDescriptorUpdateTemplateCreateInfo.Buffercreate(long address, int capacity)Create aVkDescriptorUpdateTemplateCreateInfo.Bufferinstance at the specified memory.static VkDescriptorUpdateTemplateCreateInfocreateSafe(long address)static VkDescriptorUpdateTemplateCreateInfo.BuffercreateSafe(long address, int capacity)longdescriptorSetLayout()Returns the value of thedescriptorSetLayoutfield.VkDescriptorUpdateTemplateCreateInfodescriptorSetLayout(long value)Sets the specified value to thedescriptorSetLayoutfield.intdescriptorUpdateEntryCount()Returns the value of thedescriptorUpdateEntryCountfield.intflags()Returns the value of theflagsfield.VkDescriptorUpdateTemplateCreateInfoflags(int value)Sets the specified value to theflagsfield.static VkDescriptorUpdateTemplateCreateInfomalloc()Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated withmemAlloc.static VkDescriptorUpdateTemplateCreateInfo.Buffermalloc(int capacity)Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated withmemAlloc.static VkDescriptorUpdateTemplateCreateInfomallocStack()Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated on the thread-localMemoryStack.static VkDescriptorUpdateTemplateCreateInfo.BuffermallocStack(int capacity)Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated on the thread-localMemoryStack.static VkDescriptorUpdateTemplateCreateInfo.BuffermallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated on the specifiedMemoryStack.static VkDescriptorUpdateTemplateCreateInfomallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated on the specifiedMemoryStack.static longndescriptorSetLayout(long struct)Unsafe version ofdescriptorSetLayout().static voidndescriptorSetLayout(long struct, long value)Unsafe version ofdescriptorSetLayout.static intndescriptorUpdateEntryCount(long struct)Unsafe version ofdescriptorUpdateEntryCount().static voidndescriptorUpdateEntryCount(long struct, int value)Sets the specified value to thedescriptorUpdateEntryCountfield of the specifiedstruct.static intnflags(long struct)Unsafe version offlags().static voidnflags(long struct, int value)Unsafe version offlags.static VkDescriptorUpdateTemplateEntry.BuffernpDescriptorUpdateEntries(long struct)Unsafe version ofpDescriptorUpdateEntries().static voidnpDescriptorUpdateEntries(long struct, VkDescriptorUpdateTemplateEntry.Buffer value)Unsafe version ofpDescriptorUpdateEntries.static intnpipelineBindPoint(long struct)Unsafe version ofpipelineBindPoint().static voidnpipelineBindPoint(long struct, int value)Unsafe version ofpipelineBindPoint.static longnpipelineLayout(long struct)Unsafe version ofpipelineLayout().static voidnpipelineLayout(long struct, long value)Unsafe version ofpipelineLayout.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static intnset(long struct)Unsafe version ofset().static voidnset(long struct, int value)Unsafe version ofset.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.static intntemplateType(long struct)Unsafe version oftemplateType().static voidntemplateType(long struct, int value)Unsafe version oftemplateType.VkDescriptorUpdateTemplateEntry.BufferpDescriptorUpdateEntries()Returns aVkDescriptorUpdateTemplateEntry.Bufferview of the struct array pointed to by thepDescriptorUpdateEntriesfield.VkDescriptorUpdateTemplateCreateInfopDescriptorUpdateEntries(VkDescriptorUpdateTemplateEntry.Buffer value)Sets the address of the specifiedVkDescriptorUpdateTemplateEntry.Bufferto thepDescriptorUpdateEntriesfield.intpipelineBindPoint()Returns the value of thepipelineBindPointfield.VkDescriptorUpdateTemplateCreateInfopipelineBindPoint(int value)Sets the specified value to thepipelineBindPointfield.longpipelineLayout()Returns the value of thepipelineLayoutfield.VkDescriptorUpdateTemplateCreateInfopipelineLayout(long value)Sets the specified value to thepipelineLayoutfield.longpNext()Returns the value of thepNextfield.VkDescriptorUpdateTemplateCreateInfopNext(long value)Sets the specified value to thepNextfield.intset()Returns the value of thesetfield.VkDescriptorUpdateTemplateCreateInfoset(int value)Sets the specified value to thesetfield.VkDescriptorUpdateTemplateCreateInfoset(int sType, long pNext, int flags, VkDescriptorUpdateTemplateEntry.Buffer pDescriptorUpdateEntries, int templateType, long descriptorSetLayout, int pipelineBindPoint, long pipelineLayout, int set)Initializes this struct with the specified values.VkDescriptorUpdateTemplateCreateInfoset(VkDescriptorUpdateTemplateCreateInfo src)Copies the specified struct data to this struct.intsizeof()intsType()Returns the value of thesTypefield.VkDescriptorUpdateTemplateCreateInfosType(int value)Sets the specified value to thesTypefield.inttemplateType()Returns the value of thetemplateTypefield.VkDescriptorUpdateTemplateCreateInfotemplateType(int value)Sets the specified value to thetemplateTypefield.static voidvalidate(long struct)Validates pointer members that should not beNULL.static voidvalidate(long array, int count)Callsvalidate(long)for each struct contained in the specified struct array.
-
-
-
Constructor Detail
-
VkDescriptorUpdateTemplateCreateInfo
public VkDescriptorUpdateTemplateCreateInfo(java.nio.ByteBuffer container)
Creates aVkDescriptorUpdateTemplateCreateInfoinstance 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()
Returns the value of thesTypefield.
-
pNext
public long pNext()
Returns the value of thepNextfield.
-
flags
public int flags()
Returns the value of theflagsfield.
-
descriptorUpdateEntryCount
public int descriptorUpdateEntryCount()
Returns the value of thedescriptorUpdateEntryCountfield.
-
pDescriptorUpdateEntries
public VkDescriptorUpdateTemplateEntry.Buffer pDescriptorUpdateEntries()
Returns aVkDescriptorUpdateTemplateEntry.Bufferview of the struct array pointed to by thepDescriptorUpdateEntriesfield.
-
templateType
public int templateType()
Returns the value of thetemplateTypefield.
-
descriptorSetLayout
public long descriptorSetLayout()
Returns the value of thedescriptorSetLayoutfield.
-
pipelineBindPoint
public int pipelineBindPoint()
Returns the value of thepipelineBindPointfield.
-
pipelineLayout
public long pipelineLayout()
Returns the value of thepipelineLayoutfield.
-
set
public int set()
Returns the value of thesetfield.
-
sType
public VkDescriptorUpdateTemplateCreateInfo sType(int value)
Sets the specified value to thesTypefield.
-
pNext
public VkDescriptorUpdateTemplateCreateInfo pNext(long value)
Sets the specified value to thepNextfield.
-
flags
public VkDescriptorUpdateTemplateCreateInfo flags(int value)
Sets the specified value to theflagsfield.
-
pDescriptorUpdateEntries
public VkDescriptorUpdateTemplateCreateInfo pDescriptorUpdateEntries(VkDescriptorUpdateTemplateEntry.Buffer value)
Sets the address of the specifiedVkDescriptorUpdateTemplateEntry.Bufferto thepDescriptorUpdateEntriesfield.
-
templateType
public VkDescriptorUpdateTemplateCreateInfo templateType(int value)
Sets the specified value to thetemplateTypefield.
-
descriptorSetLayout
public VkDescriptorUpdateTemplateCreateInfo descriptorSetLayout(long value)
Sets the specified value to thedescriptorSetLayoutfield.
-
pipelineBindPoint
public VkDescriptorUpdateTemplateCreateInfo pipelineBindPoint(int value)
Sets the specified value to thepipelineBindPointfield.
-
pipelineLayout
public VkDescriptorUpdateTemplateCreateInfo pipelineLayout(long value)
Sets the specified value to thepipelineLayoutfield.
-
set
public VkDescriptorUpdateTemplateCreateInfo set(int value)
Sets the specified value to thesetfield.
-
set
public VkDescriptorUpdateTemplateCreateInfo set(int sType, long pNext, int flags, VkDescriptorUpdateTemplateEntry.Buffer pDescriptorUpdateEntries, int templateType, long descriptorSetLayout, int pipelineBindPoint, long pipelineLayout, int set)
Initializes this struct with the specified values.
-
set
public VkDescriptorUpdateTemplateCreateInfo set(VkDescriptorUpdateTemplateCreateInfo src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkDescriptorUpdateTemplateCreateInfo malloc()
Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkDescriptorUpdateTemplateCreateInfo calloc()
Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkDescriptorUpdateTemplateCreateInfo create()
Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated withBufferUtils.
-
create
public static VkDescriptorUpdateTemplateCreateInfo create(long address)
Returns a newVkDescriptorUpdateTemplateCreateInfoinstance for the specified memory address.
-
createSafe
@Nullable public static VkDescriptorUpdateTemplateCreateInfo createSafe(long address)
-
malloc
public static VkDescriptorUpdateTemplateCreateInfo.Buffer malloc(int capacity)
Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkDescriptorUpdateTemplateCreateInfo.Buffer calloc(int capacity)
Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkDescriptorUpdateTemplateCreateInfo.Buffer create(int capacity)
Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkDescriptorUpdateTemplateCreateInfo.Buffer create(long address, int capacity)
Create aVkDescriptorUpdateTemplateCreateInfo.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkDescriptorUpdateTemplateCreateInfo.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkDescriptorUpdateTemplateCreateInfo mallocStack()
Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated on the thread-localMemoryStack.
-
callocStack
public static VkDescriptorUpdateTemplateCreateInfo callocStack()
Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.
-
mallocStack
public static VkDescriptorUpdateTemplateCreateInfo mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
callocStack
public static VkDescriptorUpdateTemplateCreateInfo callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorUpdateTemplateCreateInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
mallocStack
public static VkDescriptorUpdateTemplateCreateInfo.Buffer mallocStack(int capacity)
Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated on the thread-localMemoryStack.- Parameters:
capacity- the buffer capacity
-
callocStack
public static VkDescriptorUpdateTemplateCreateInfo.Buffer callocStack(int capacity)
Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacity
-
mallocStack
public static VkDescriptorUpdateTemplateCreateInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorUpdateTemplateCreateInfo.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
callocStack
public static VkDescriptorUpdateTemplateCreateInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorUpdateTemplateCreateInfo.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().
-
nflags
public static int nflags(long struct)
Unsafe version offlags().
-
ndescriptorUpdateEntryCount
public static int ndescriptorUpdateEntryCount(long struct)
Unsafe version ofdescriptorUpdateEntryCount().
-
npDescriptorUpdateEntries
public static VkDescriptorUpdateTemplateEntry.Buffer npDescriptorUpdateEntries(long struct)
Unsafe version ofpDescriptorUpdateEntries().
-
ntemplateType
public static int ntemplateType(long struct)
Unsafe version oftemplateType().
-
ndescriptorSetLayout
public static long ndescriptorSetLayout(long struct)
Unsafe version ofdescriptorSetLayout().
-
npipelineBindPoint
public static int npipelineBindPoint(long struct)
Unsafe version ofpipelineBindPoint().
-
npipelineLayout
public static long npipelineLayout(long struct)
Unsafe version ofpipelineLayout().
-
nset
public static int nset(long struct)
Unsafe version ofset().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
nflags
public static void nflags(long struct, int value)Unsafe version offlags.
-
ndescriptorUpdateEntryCount
public static void ndescriptorUpdateEntryCount(long struct, int value)Sets the specified value to thedescriptorUpdateEntryCountfield of the specifiedstruct.
-
npDescriptorUpdateEntries
public static void npDescriptorUpdateEntries(long struct, VkDescriptorUpdateTemplateEntry.Buffer value)Unsafe version ofpDescriptorUpdateEntries.
-
ntemplateType
public static void ntemplateType(long struct, int value)Unsafe version oftemplateType.
-
ndescriptorSetLayout
public static void ndescriptorSetLayout(long struct, long value)Unsafe version ofdescriptorSetLayout.
-
npipelineBindPoint
public static void npipelineBindPoint(long struct, int value)Unsafe version ofpipelineBindPoint.
-
npipelineLayout
public static void npipelineLayout(long struct, long value)Unsafe version ofpipelineLayout.
-
nset
public static void nset(long struct, int value)Unsafe version ofset.
-
validate
public static void validate(long struct)
Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-
validate
public static void validate(long array, int count)Callsvalidate(long)for each struct contained in the specified struct array.- Parameters:
array- the struct array to validatecount- the number of structs inarray
-
-