Package org.lwjgl.vulkan
Class VkDescriptorSetAllocateInfo
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkDescriptorSetAllocateInfo>
org.lwjgl.vulkan.VkDescriptorSetAllocateInfo
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkDescriptorSetAllocateInfo
extends org.lwjgl.system.Struct<VkDescriptorSetAllocateInfo>
implements org.lwjgl.system.NativeResource
Structure specifying the allocation parameters for descriptor sets.
Valid Usage
- If the
VK_KHR_maintenance1extension is not enabled andVkPhysicalDeviceProperties::apiVersionis less than Vulkan 1.1,descriptorSetCountmust not be greater than the number of sets that are currently available for allocation indescriptorPool - If the
VK_KHR_maintenance1extension is not enabled andVkPhysicalDeviceProperties::apiVersionis less than Vulkan 1.1,descriptorPoolmust have enough free descriptor capacity remaining to allocate the descriptor sets of the specified layouts - Each element of
pSetLayoutsmust not have been created withDESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BITset - If any element of
pSetLayoutswas created with theDESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set,descriptorPoolmust have been created with theDESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BITflag set - If
pSetLayouts[i] was created with an element ofpBindingFlagsthat includesDESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT, andVkDescriptorSetVariableDescriptorCountAllocateInfois included in thepNextchain, andVkDescriptorSetVariableDescriptorCountAllocateInfo::descriptorSetCountis not zero, thenVkDescriptorSetVariableDescriptorCountAllocateInfo::pDescriptorCounts[i] must be less than or equal toVkDescriptorSetLayoutBinding::descriptorCountfor the corresponding binding used to createpSetLayouts[i] - If any element of
pSetLayoutswas created with theDESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXTbit set,descriptorPoolmust have been created with theDESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXTflag set - Each element of
pSetLayoutsmust not have been created with theDESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXTbit set
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFOpNextmust beNULLor a pointer to a valid instance ofVkDescriptorSetVariableDescriptorCountAllocateInfo- The
sTypevalue of each struct in thepNextchain must be unique descriptorPoolmust be a validVkDescriptorPoolhandlepSetLayoutsmust be a valid pointer to an array ofdescriptorSetCountvalidVkDescriptorSetLayouthandlesdescriptorSetCountmust be greater than 0- Both of
descriptorPool, and the elements ofpSetLayoutsmust have been created, allocated, or retrieved from the sameVkDevice
See Also
Layout
struct VkDescriptorSetAllocateInfo {
VkStructureType sType();
void const * pNext();
VkDescriptorPool descriptorPool();
uint32_t descriptorSetCount();
VkDescriptorSetLayout const * pSetLayouts();
}-
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 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
ConstructorsConstructorDescriptionVkDescriptorSetAllocateInfo(ByteBuffer container) Creates aVkDescriptorSetAllocateInfoinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionstatic VkDescriptorSetAllocateInfocalloc()Returns a newVkDescriptorSetAllocateInfoinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkDescriptorSetAllocateInfo.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkDescriptorSetAllocateInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkDescriptorSetAllocateInfocalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkDescriptorSetAllocateInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkDescriptorSetAllocateInfoDeprecated.callocStack(int capacity) Deprecated.callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.static VkDescriptorSetAllocateInfocallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.static VkDescriptorSetAllocateInfocreate()Returns a newVkDescriptorSetAllocateInfoinstance allocated withBufferUtils.create(int capacity) Returns a newVkDescriptorSetAllocateInfo.Bufferinstance allocated withBufferUtils.static VkDescriptorSetAllocateInfocreate(long address) Returns a newVkDescriptorSetAllocateInfoinstance for the specified memory address.create(long address, int capacity) Create aVkDescriptorSetAllocateInfo.Bufferinstance at the specified memory.static @Nullable VkDescriptorSetAllocateInfocreateSafe(long address) static @Nullable VkDescriptorSetAllocateInfo.BuffercreateSafe(long address, int capacity) longthe pool which the sets will be allocated from.descriptorPool(long value) Sets the specified value to thedescriptorPool()field.intdetermines the number of descriptor sets to be allocated from the pool.static VkDescriptorSetAllocateInfomalloc()Returns a newVkDescriptorSetAllocateInfoinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkDescriptorSetAllocateInfo.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkDescriptorSetAllocateInfo.Bufferinstance allocated on the specifiedMemoryStack.static VkDescriptorSetAllocateInfomalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkDescriptorSetAllocateInfoinstance allocated on the specifiedMemoryStack.static VkDescriptorSetAllocateInfoDeprecated.mallocStack(int capacity) Deprecated.mallocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.static VkDescriptorSetAllocateInfomallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.static longndescriptorPool(long struct) Unsafe version ofdescriptorPool().static voidndescriptorPool(long struct, long value) Unsafe version ofdescriptorPool.static intndescriptorSetCount(long struct) Unsafe version ofdescriptorSetCount().static voidndescriptorSetCount(long struct, int value) Sets the specified value to thedescriptorSetCountfield of the specifiedstruct.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static LongBuffernpSetLayouts(long struct) Unsafe version ofpSetLayouts.static voidnpSetLayouts(long struct, LongBuffer value) Unsafe version ofpSetLayouts.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.pNext(long value) Sets the specified value to thepNext()field.Prepends the specifiedVkDescriptorSetVariableDescriptorCountAllocateInfovalue to thepNextchain.Prepends the specifiedVkDescriptorSetVariableDescriptorCountAllocateInfoEXTvalue to thepNextchain.a pointer to an array of descriptor set layouts, with each member specifying how the corresponding descriptor set is allocated.pSetLayouts(LongBuffer value) Sets the address of the specifiedLongBufferto thepSetLayouts()field.set(int sType, long pNext, long descriptorPool, LongBuffer pSetLayouts) Initializes this struct with the specified values.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_DESCRIPTOR_SET_ALLOCATE_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. -
DESCRIPTORPOOL
public static final int DESCRIPTORPOOLThe struct member offsets. -
DESCRIPTORSETCOUNT
public static final int DESCRIPTORSETCOUNTThe struct member offsets. -
PSETLAYOUTS
public static final int PSETLAYOUTSThe struct member offsets.
-
-
Constructor Details
-
VkDescriptorSetAllocateInfo
Creates aVkDescriptorSetAllocateInfoinstance 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<VkDescriptorSetAllocateInfo>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
descriptorPool
public long descriptorPool()the pool which the sets will be allocated from. -
descriptorSetCount
public int descriptorSetCount()determines the number of descriptor sets to be allocated from the pool. -
pSetLayouts
a pointer to an array of descriptor set layouts, with each member specifying how the corresponding descriptor set is allocated. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFOvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
pNext
Prepends the specifiedVkDescriptorSetVariableDescriptorCountAllocateInfovalue to thepNextchain. -
pNext
public VkDescriptorSetAllocateInfo pNext(VkDescriptorSetVariableDescriptorCountAllocateInfoEXT value) Prepends the specifiedVkDescriptorSetVariableDescriptorCountAllocateInfoEXTvalue to thepNextchain. -
descriptorPool
Sets the specified value to thedescriptorPool()field. -
pSetLayouts
Sets the address of the specifiedLongBufferto thepSetLayouts()field. -
set
public VkDescriptorSetAllocateInfo set(int sType, long pNext, long descriptorPool, LongBuffer pSetLayouts) 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 newVkDescriptorSetAllocateInfoinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkDescriptorSetAllocateInfoinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkDescriptorSetAllocateInfoinstance allocated withBufferUtils. -
create
Returns a newVkDescriptorSetAllocateInfoinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkDescriptorSetAllocateInfo.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkDescriptorSetAllocateInfo.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkDescriptorSetAllocateInfo.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkDescriptorSetAllocateInfo.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
-
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead. -
mallocStack
@Deprecated public static VkDescriptorSetAllocateInfo mallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
@Deprecated public static VkDescriptorSetAllocateInfo callocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead. -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
mallocStack
@Deprecated public static VkDescriptorSetAllocateInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead. -
callocStack
@Deprecated public static VkDescriptorSetAllocateInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
malloc
Returns a newVkDescriptorSetAllocateInfoinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkDescriptorSetAllocateInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkDescriptorSetAllocateInfo.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkDescriptorSetAllocateInfo.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkDescriptorSetAllocateInfo.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkDescriptorSetAllocateInfo.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(). -
ndescriptorPool
public static long ndescriptorPool(long struct) Unsafe version ofdescriptorPool(). -
ndescriptorSetCount
public static int ndescriptorSetCount(long struct) Unsafe version ofdescriptorSetCount(). -
npSetLayouts
Unsafe version ofpSetLayouts. -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext. -
ndescriptorPool
public static void ndescriptorPool(long struct, long value) Unsafe version ofdescriptorPool. -
ndescriptorSetCount
public static void ndescriptorSetCount(long struct, int value) Sets the specified value to thedescriptorSetCountfield of the specifiedstruct. -
npSetLayouts
Unsafe version ofpSetLayouts. -
validate
public static void validate(long struct) Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-