Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkPhysicalDeviceDescriptorIndexingFeatures

extends Struct<VkPhysicalDeviceDescriptorIndexingFeatures>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Known Direct Subclasses
org.lwjgl.vulkan.VkPhysicalDeviceDescriptorIndexingFeaturesEXT
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Structure describing descriptor indexing features that can be supported by an implementation.
Description

If the VkPhysicalDeviceDescriptorIndexingFeatures structure is included in the pNext chain of the VkPhysicalDeviceFeatures2 structure passed to GetPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. VkPhysicalDeviceDescriptorIndexingFeatures can also be used in the pNext chain of VkDeviceCreateInfo to selectively enable these features.

Valid Usage (Implicit)

Layout


struct VkPhysicalDeviceDescriptorIndexingFeatures {
    VkStructureType sType;
    void * pNext;
    VkBool32 shaderInputAttachmentArrayDynamicIndexing;
    VkBool32 shaderUniformTexelBufferArrayDynamicIndexing;
    VkBool32 shaderStorageTexelBufferArrayDynamicIndexing;
    VkBool32 shaderUniformBufferArrayNonUniformIndexing;
    VkBool32 shaderSampledImageArrayNonUniformIndexing;
    VkBool32 shaderStorageBufferArrayNonUniformIndexing;
    VkBool32 shaderStorageImageArrayNonUniformIndexing;
    VkBool32 shaderInputAttachmentArrayNonUniformIndexing;
    VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing;
    VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing;
    VkBool32 descriptorBindingUniformBufferUpdateAfterBind;
    VkBool32 descriptorBindingSampledImageUpdateAfterBind;
    VkBool32 descriptorBindingStorageImageUpdateAfterBind;
    VkBool32 descriptorBindingStorageBufferUpdateAfterBind;
    VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind;
    VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind;
    VkBool32 descriptorBindingUpdateUnusedWhilePending;
    VkBool32 descriptorBindingPartiallyBound;
    VkBool32 descriptorBindingVariableDescriptorCount;
    VkBool32 runtimeDescriptorArray;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
DESCRIPTORBINDINGPARTIALLYBOUND

The struct member offsets.

public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
DESCRIPTORBINDINGVARIABLEDESCRIPTORCOUNT

The struct member offsets.

public static final int
PNEXT

The struct member offsets.

public static final int
RUNTIMEDESCRIPTORARRAY

The struct member offsets.

public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
SIZEOF

The struct size in bytes.

public static final int
STYPE

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
public
VkPhysicalDeviceDescriptorIndexingFeatures(ByteBuffer container)

Creates a VkPhysicalDeviceDescriptorIndexingFeatures instance at the current position of the specified ByteBuffer container.

Method Summary

Modifier and TypeMethod and Description
public static VkPhysicalDeviceDescriptorIndexingFeatures
calloc()

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures instance allocated with memCalloc.

public static VkPhysicalDeviceDescriptorIndexingFeatures.Buffer
calloc(int
the buffer capacity
capacity
)

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures.Buffer instance allocated with memCalloc.

public static VkPhysicalDeviceDescriptorIndexingFeatures
calloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static VkPhysicalDeviceDescriptorIndexingFeatures.Buffer
calloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

protected VkPhysicalDeviceDescriptorIndexingFeatures
create(long
the struct memory address
address
,
ByteBuffer
an optional container buffer, to be referenced strongly by the struct instance.
container
)

Implements abstract org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.
public static VkPhysicalDeviceDescriptorIndexingFeatures
create()

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures instance allocated with BufferUtils.

public static VkPhysicalDeviceDescriptorIndexingFeatures
create(long address)

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures instance for the specified memory address.

public static VkPhysicalDeviceDescriptorIndexingFeatures.Buffer
create(int
the buffer capacity
capacity
)

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures.Buffer instance allocated with BufferUtils.

public static VkPhysicalDeviceDescriptorIndexingFeatures.Buffer
create(long
the memory address
address
,
int
the buffer capacity
capacity
)

Create a VkPhysicalDeviceDescriptorIndexingFeatures.Buffer instance at the specified memory.

public static VkPhysicalDeviceDescriptorIndexingFeatures
createSafe(long address)

Like create, but returns null if address is NULL.

public static VkPhysicalDeviceDescriptorIndexingFeatures.Buffer
createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

public boolean
descriptorBindingPartiallyBound()

indicates whether the implementation supports statically using a descriptor set binding in which some descriptors are not valid.

public VkPhysicalDeviceDescriptorIndexingFeatures
descriptorBindingPartiallyBound(boolean value)

Sets the specified value to the descriptorBindingPartiallyBound field.

public boolean
descriptorBindingSampledImageUpdateAfterBind()

indicates whether the implementation supports updating sampled image descriptors after a set is bound.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
descriptorBindingStorageBufferUpdateAfterBind()

indicates whether the implementation supports updating storage buffer descriptors after a set is bound.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
descriptorBindingStorageImageUpdateAfterBind()

indicates whether the implementation supports updating storage image descriptors after a set is bound.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
descriptorBindingStorageTexelBufferUpdateAfterBind()

indicates whether the implementation supports updating storage texel buffer descriptors after a set is bound.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
descriptorBindingUniformBufferUpdateAfterBind()

indicates whether the implementation supports updating uniform buffer descriptors after a set is bound.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
descriptorBindingUniformTexelBufferUpdateAfterBind()

indicates whether the implementation supports updating uniform texel buffer descriptors after a set is bound.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
descriptorBindingUpdateUnusedWhilePending()

indicates whether the implementation supports updating descriptors while the set is in use.

public VkPhysicalDeviceDescriptorIndexingFeatures
descriptorBindingUpdateUnusedWhilePending(boolean value)

Sets the specified value to the descriptorBindingUpdateUnusedWhilePending field.

public boolean
descriptorBindingVariableDescriptorCount()

indicates whether the implementation supports descriptor sets with a variable-sized last binding.

public VkPhysicalDeviceDescriptorIndexingFeatures
descriptorBindingVariableDescriptorCount(boolean value)

Sets the specified value to the descriptorBindingVariableDescriptorCount field.

public static VkPhysicalDeviceDescriptorIndexingFeatures
malloc()

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures instance allocated with memAlloc.

public static VkPhysicalDeviceDescriptorIndexingFeatures.Buffer
malloc(int
the buffer capacity
capacity
)

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures.Buffer instance allocated with memAlloc.

public static VkPhysicalDeviceDescriptorIndexingFeatures
malloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures instance allocated on the specified MemoryStack.

public static VkPhysicalDeviceDescriptorIndexingFeatures.Buffer
malloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkPhysicalDeviceDescriptorIndexingFeatures.Buffer instance allocated on the specified MemoryStack.

public static int
public static void
ndescriptorBindingPartiallyBound(long struct, int value)

Unsafe version of descriptorBindingPartiallyBound.

public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static long
npNext(long struct)

Unsafe version of pNext.

public static void
npNext(long struct, long value)

Unsafe version of pNext.

public static int
nruntimeDescriptorArray(long struct)

Unsafe version of runtimeDescriptorArray.

public static void
nruntimeDescriptorArray(long struct, int value)

Unsafe version of runtimeDescriptorArray.

public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
public static void
public static int
nsType(long struct)

Unsafe version of sType.

public static void
nsType(long struct, int value)

Unsafe version of sType.

public long
pNext()

NULL or a pointer to a structure extending this structure.

public VkPhysicalDeviceDescriptorIndexingFeatures
pNext(long value)

Sets the specified value to the pNext field.

public boolean
runtimeDescriptorArray()

indicates whether the implementation supports the SPIR-V RuntimeDescriptorArray capability.

public VkPhysicalDeviceDescriptorIndexingFeatures
runtimeDescriptorArray(boolean value)

Sets the specified value to the runtimeDescriptorArray field.

public VkPhysicalDeviceDescriptorIndexingFeatures
set(int sType, long pNext, boolean shaderInputAttachmentArrayDynamicIndexing, boolean shaderUniformTexelBufferArrayDynamicIndexing, boolean shaderStorageTexelBufferArrayDynamicIndexing, boolean shaderUniformBufferArrayNonUniformIndexing, boolean shaderSampledImageArrayNonUniformIndexing, boolean shaderStorageBufferArrayNonUniformIndexing, boolean shaderStorageImageArrayNonUniformIndexing, boolean shaderInputAttachmentArrayNonUniformIndexing, boolean shaderUniformTexelBufferArrayNonUniformIndexing, boolean shaderStorageTexelBufferArrayNonUniformIndexing, boolean descriptorBindingUniformBufferUpdateAfterBind, boolean descriptorBindingSampledImageUpdateAfterBind, boolean descriptorBindingStorageImageUpdateAfterBind, boolean descriptorBindingStorageBufferUpdateAfterBind, boolean descriptorBindingUniformTexelBufferUpdateAfterBind, boolean descriptorBindingStorageTexelBufferUpdateAfterBind, boolean descriptorBindingUpdateUnusedWhilePending, boolean descriptorBindingPartiallyBound, boolean descriptorBindingVariableDescriptorCount, boolean runtimeDescriptorArray)

Initializes this struct with the specified values.

public VkPhysicalDeviceDescriptorIndexingFeatures

Returns:

this struct
set
(VkPhysicalDeviceDescriptorIndexingFeatures
the source struct
src
)

Copies the specified struct data to this struct.

public boolean
shaderInputAttachmentArrayDynamicIndexing()

indicates whether arrays of input attachments can be indexed by dynamically uniform integer expressions in shader code.

public VkPhysicalDeviceDescriptorIndexingFeatures
shaderInputAttachmentArrayDynamicIndexing(boolean value)

Sets the specified value to the shaderInputAttachmentArrayDynamicIndexing field.

public boolean
shaderInputAttachmentArrayNonUniformIndexing()

indicates whether arrays of input attachments can be indexed by non-uniform integer expressions in shader code.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
shaderSampledImageArrayNonUniformIndexing()

indicates whether arrays of samplers or sampled images can be indexed by non-uniform integer expressions in shader code.

public VkPhysicalDeviceDescriptorIndexingFeatures
shaderSampledImageArrayNonUniformIndexing(boolean value)

Sets the specified value to the shaderSampledImageArrayNonUniformIndexing field.

public boolean
shaderStorageBufferArrayNonUniformIndexing()

indicates whether arrays of storage buffers can be indexed by non-uniform integer expressions in shader code.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
shaderStorageImageArrayNonUniformIndexing()

indicates whether arrays of storage images can be indexed by non-uniform integer expressions in shader code.

public VkPhysicalDeviceDescriptorIndexingFeatures
shaderStorageImageArrayNonUniformIndexing(boolean value)

Sets the specified value to the shaderStorageImageArrayNonUniformIndexing field.

public boolean
shaderStorageTexelBufferArrayDynamicIndexing()

indicates whether arrays of storage texel buffers can be indexed by dynamically uniform integer expressions in shader code.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
shaderStorageTexelBufferArrayNonUniformIndexing()

indicates whether arrays of storage texel buffers can be indexed by non-uniform integer expressions in shader code.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
shaderUniformBufferArrayNonUniformIndexing()

indicates whether arrays of uniform buffers can be indexed by non-uniform integer expressions in shader code.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
shaderUniformTexelBufferArrayDynamicIndexing()

indicates whether arrays of uniform texel buffers can be indexed by dynamically uniform integer expressions in shader code.

public VkPhysicalDeviceDescriptorIndexingFeatures
public boolean
shaderUniformTexelBufferArrayNonUniformIndexing()

indicates whether arrays of uniform texel buffers can be indexed by non-uniform integer expressions in shader code.

public VkPhysicalDeviceDescriptorIndexingFeatures
public int
sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).
public int
sType()

a VkStructureType value identifying this structure.

public VkPhysicalDeviceDescriptorIndexingFeatures
sType(int value)

Sets the specified value to the sType field.

public VkPhysicalDeviceDescriptorIndexingFeatures
Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate