Package org.lwjgl.vulkan
Class VkDescriptorSetLayoutCreateInfo
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkDescriptorSetLayoutCreateInfo
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,org.lwjgl.system.NativeResource
,org.lwjgl.system.Pointer
public class VkDescriptorSetLayoutCreateInfo extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResource
Structure specifying parameters of a newly created descriptor set layout.Valid Usage
- The
VkDescriptorSetLayoutBinding
::binding
members of the elements of thepBindings
array must each have different values. - If
flags
containsDESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR
, then all elements ofpBindings
must not have adescriptorType
ofDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC
orDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
- If
flags
containsDESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR
, then all elements ofpBindings
must not have adescriptorType
ofDESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT
- If
flags
containsDESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR
, then the total number of elements of all bindings must be less than or equal toVkPhysicalDevicePushDescriptorPropertiesKHR
::maxPushDescriptors
- If any binding has the
DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT
bit set,flags
must includeDESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT
- If any binding has the
DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT
bit set, then all bindings must not havedescriptorType
ofDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC
orDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
Valid Usage (Implicit)
sType
must beSTRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO
pNext
must beNULL
or a pointer to a valid instance ofVkDescriptorSetLayoutBindingFlagsCreateInfoEXT
flags
must be a valid combination ofVkDescriptorSetLayoutCreateFlagBits
values- If
bindingCount
is not 0,pBindings
must be a valid pointer to an array ofbindingCount
validVkDescriptorSetLayoutBinding
structures
See Also
VkDescriptorSetLayoutBinding
,CreateDescriptorSetLayout
,GetDescriptorSetLayoutSupport
,GetDescriptorSetLayoutSupportKHR
Member documentation
sType
– the type of this structure.pNext
–NULL
or a pointer to an extension-specific structure.flags
– a bitmask ofVkDescriptorSetLayoutCreateFlagBits
specifying options for descriptor set layout creation.bindingCount
– the number of elements inpBindings
.pBindings
– a pointer to an array ofVkDescriptorSetLayoutBinding
structures.
Layout
struct VkDescriptorSetLayoutCreateInfo { VkStructureType sType; void const * pNext; VkDescriptorSetLayoutCreateFlags flags; uint32_t bindingCount;
VkDescriptorSetLayoutBinding
const * pBindings; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VkDescriptorSetLayoutCreateInfo.Buffer
An array ofVkDescriptorSetLayoutCreateInfo
structs.
-
Constructor Summary
Constructors Constructor Description VkDescriptorSetLayoutCreateInfo(java.nio.ByteBuffer container)
Creates aVkDescriptorSetLayoutCreateInfo
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
bindingCount()
Returns the value of thebindingCount
field.static VkDescriptorSetLayoutCreateInfo
calloc()
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated withmemCalloc
.static VkDescriptorSetLayoutCreateInfo.Buffer
calloc(int capacity)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated withmemCalloc
.static VkDescriptorSetLayoutCreateInfo
callocStack()
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkDescriptorSetLayoutCreateInfo.Buffer
callocStack(int capacity)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkDescriptorSetLayoutCreateInfo.Buffer
callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkDescriptorSetLayoutCreateInfo
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkDescriptorSetLayoutCreateInfo
create()
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated withBufferUtils
.static VkDescriptorSetLayoutCreateInfo.Buffer
create(int capacity)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated withBufferUtils
.static VkDescriptorSetLayoutCreateInfo
create(long address)
Returns a newVkDescriptorSetLayoutCreateInfo
instance for the specified memory address.static VkDescriptorSetLayoutCreateInfo.Buffer
create(long address, int capacity)
Create aVkDescriptorSetLayoutCreateInfo.Buffer
instance at the specified memory.static VkDescriptorSetLayoutCreateInfo
createSafe(long address)
static VkDescriptorSetLayoutCreateInfo.Buffer
createSafe(long address, int capacity)
int
flags()
Returns the value of theflags
field.VkDescriptorSetLayoutCreateInfo
flags(int value)
Sets the specified value to theflags
field.static VkDescriptorSetLayoutCreateInfo
malloc()
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated withmemAlloc
.static VkDescriptorSetLayoutCreateInfo.Buffer
malloc(int capacity)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated withmemAlloc
.static VkDescriptorSetLayoutCreateInfo
mallocStack()
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated on the thread-localMemoryStack
.static VkDescriptorSetLayoutCreateInfo.Buffer
mallocStack(int capacity)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated on the thread-localMemoryStack
.static VkDescriptorSetLayoutCreateInfo.Buffer
mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
.static VkDescriptorSetLayoutCreateInfo
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated on the specifiedMemoryStack
.static int
nbindingCount(long struct)
Unsafe version ofbindingCount()
.static void
nbindingCount(long struct, int value)
Sets the specified value to thebindingCount
field of the specifiedstruct
.static int
nflags(long struct)
Unsafe version offlags()
.static void
nflags(long struct, int value)
Unsafe version offlags
.static VkDescriptorSetLayoutBinding.Buffer
npBindings(long struct)
Unsafe version ofpBindings()
.static void
npBindings(long struct, VkDescriptorSetLayoutBinding.Buffer value)
Unsafe version ofpBindings
.static long
npNext(long struct)
Unsafe version ofpNext()
.static void
npNext(long struct, long value)
Unsafe version ofpNext
.static int
nsType(long struct)
Unsafe version ofsType()
.static void
nsType(long struct, int value)
Unsafe version ofsType
.VkDescriptorSetLayoutBinding.Buffer
pBindings()
Returns aVkDescriptorSetLayoutBinding.Buffer
view of the struct array pointed to by thepBindings
field.VkDescriptorSetLayoutCreateInfo
pBindings(VkDescriptorSetLayoutBinding.Buffer value)
Sets the address of the specifiedVkDescriptorSetLayoutBinding.Buffer
to thepBindings
field.long
pNext()
Returns the value of thepNext
field.VkDescriptorSetLayoutCreateInfo
pNext(long value)
Sets the specified value to thepNext
field.VkDescriptorSetLayoutCreateInfo
set(int sType, long pNext, int flags, VkDescriptorSetLayoutBinding.Buffer pBindings)
Initializes this struct with the specified values.VkDescriptorSetLayoutCreateInfo
set(VkDescriptorSetLayoutCreateInfo src)
Copies the specified struct data to this struct.int
sizeof()
int
sType()
Returns the value of thesType
field.VkDescriptorSetLayoutCreateInfo
sType(int value)
Sets the specified value to thesType
field.static void
validate(long struct)
Validates pointer members that should not beNULL
.static void
validate(long array, int count)
Callsvalidate(long)
for each struct contained in the specified struct array.
-
-
-
Constructor Detail
-
VkDescriptorSetLayoutCreateInfo
public VkDescriptorSetLayoutCreateInfo(java.nio.ByteBuffer container)
Creates aVkDescriptorSetLayoutCreateInfo
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.
-
flags
public int flags()
Returns the value of theflags
field.
-
bindingCount
public int bindingCount()
Returns the value of thebindingCount
field.
-
pBindings
@Nullable public VkDescriptorSetLayoutBinding.Buffer pBindings()
Returns aVkDescriptorSetLayoutBinding.Buffer
view of the struct array pointed to by thepBindings
field.
-
sType
public VkDescriptorSetLayoutCreateInfo sType(int value)
Sets the specified value to thesType
field.
-
pNext
public VkDescriptorSetLayoutCreateInfo pNext(long value)
Sets the specified value to thepNext
field.
-
flags
public VkDescriptorSetLayoutCreateInfo flags(int value)
Sets the specified value to theflags
field.
-
pBindings
public VkDescriptorSetLayoutCreateInfo pBindings(@Nullable VkDescriptorSetLayoutBinding.Buffer value)
Sets the address of the specifiedVkDescriptorSetLayoutBinding.Buffer
to thepBindings
field.
-
set
public VkDescriptorSetLayoutCreateInfo set(int sType, long pNext, int flags, @Nullable VkDescriptorSetLayoutBinding.Buffer pBindings)
Initializes this struct with the specified values.
-
set
public VkDescriptorSetLayoutCreateInfo set(VkDescriptorSetLayoutCreateInfo src)
Copies the specified struct data to this struct.- Parameters:
src
- the source struct- Returns:
- this struct
-
malloc
public static VkDescriptorSetLayoutCreateInfo malloc()
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static VkDescriptorSetLayoutCreateInfo calloc()
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static VkDescriptorSetLayoutCreateInfo create()
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated withBufferUtils
.
-
create
public static VkDescriptorSetLayoutCreateInfo create(long address)
Returns a newVkDescriptorSetLayoutCreateInfo
instance for the specified memory address.
-
createSafe
@Nullable public static VkDescriptorSetLayoutCreateInfo createSafe(long address)
-
malloc
public static VkDescriptorSetLayoutCreateInfo.Buffer malloc(int capacity)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static VkDescriptorSetLayoutCreateInfo.Buffer calloc(int capacity)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static VkDescriptorSetLayoutCreateInfo.Buffer create(int capacity)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static VkDescriptorSetLayoutCreateInfo.Buffer create(long address, int capacity)
Create aVkDescriptorSetLayoutCreateInfo.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
createSafe
@Nullable public static VkDescriptorSetLayoutCreateInfo.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkDescriptorSetLayoutCreateInfo mallocStack()
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static VkDescriptorSetLayoutCreateInfo callocStack()
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static VkDescriptorSetLayoutCreateInfo mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static VkDescriptorSetLayoutCreateInfo callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorSetLayoutCreateInfo
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
mallocStack
public static VkDescriptorSetLayoutCreateInfo.Buffer mallocStack(int capacity)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static VkDescriptorSetLayoutCreateInfo.Buffer callocStack(int capacity)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacity
-
mallocStack
public static VkDescriptorSetLayoutCreateInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorSetLayoutCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
callocStack
public static VkDescriptorSetLayoutCreateInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkDescriptorSetLayoutCreateInfo.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()
.
-
nflags
public static int nflags(long struct)
Unsafe version offlags()
.
-
nbindingCount
public static int nbindingCount(long struct)
Unsafe version ofbindingCount()
.
-
npBindings
@Nullable public static VkDescriptorSetLayoutBinding.Buffer npBindings(long struct)
Unsafe version ofpBindings()
.
-
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
.
-
nbindingCount
public static void nbindingCount(long struct, int value)
Sets the specified value to thebindingCount
field of the specifiedstruct
.
-
npBindings
public static void npBindings(long struct, @Nullable VkDescriptorSetLayoutBinding.Buffer value)
Unsafe version ofpBindings
.
-
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
-
-