Package org.lwjgl.vulkan
Class VkDeviceCreateInfo
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkDeviceCreateInfo
-
- All Implemented Interfaces:
- java.lang.AutoCloseable, NativeResource, Pointer
public class VkDeviceCreateInfo extends Struct
Khronos Reference Page
Vulkan SpecificationContains information about how to create a device.
Valid Usage
sType
must beSTRUCTURE_TYPE_DEVICE_CREATE_INFO
pNext
must beNULL
flags
must be 0pQueueCreateInfos
must be a pointer to an array ofqueueCreateInfoCount
validVkDeviceQueueCreateInfo
structures- If
enabledLayerCount
is not 0,ppEnabledLayerNames
must be a pointer to an array ofenabledLayerCount
null-terminated strings - If
enabledExtensionCount
is not 0,ppEnabledExtensionNames
must be a pointer to an array ofenabledExtensionCount
null-terminated strings - If
pEnabledFeatures
is notNULL
,pEnabledFeatures
must be a pointer to a validVkPhysicalDeviceFeatures
structure queueCreateInfoCount
must be greater than 0ppEnabledLayerNames
must either beNULL
or contain the same sequence of layer names that was enabled when creating the parent instance- Any given element of
ppEnabledExtensionNames
must be the name of an extension present on the system, exactly matching a string returned in theVkExtensionProperties
structure byEnumerateDeviceExtensionProperties
- If an extension listed in
ppEnabledExtensionNames
is provided as part of a layer, then both the layer and extension must be enabled to enable that extension - The
queueFamilyIndex
member of any given element ofpQueueCreateInfos
must be unique withinpQueueCreateInfos
Member documentation
sType
– the type of this structure. Must be:STRUCTURE_TYPE_DEVICE_CREATE_INFO
pNext
– reserved for use by extensionsflags
– reserved for future usequeueCreateInfoCount
– the unsigned integer size of thepQueueCreateInfos
arraypQueueCreateInfos
– a pointer to an array ofVkDeviceQueueCreateInfo
structures describing the queues that are requested to be created along with the logical deviceenabledLayerCount
– deprecated and ignoredppEnabledLayerNames
– deprecated and ignoredenabledExtensionCount
– the number of device extensions to enableppEnabledExtensionNames
– a pointer to an array ofenabledExtensionCount
null-terminated UTF-8 strings containing the names of extensions to enable for the created devicepEnabledFeatures
–NULL
or a pointer to aVkPhysicalDeviceFeatures
structure that contains boolean indicators of all the features to be enabled
Layout
struct VkDeviceCreateInfo { VkStructureType sType; const void * pNext; VkDeviceCreateFlags flags; uint32_t queueCreateInfoCount; const VkDeviceQueueCreateInfo * pQueueCreateInfos; uint32_t enabledLayerCount; const char * const * ppEnabledLayerNames; uint32_t enabledExtensionCount; const char * const * ppEnabledExtensionNames; const VkPhysicalDeviceFeatures * pEnabledFeatures; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static class
VkDeviceCreateInfo.Buffer
An array ofVkDeviceCreateInfo
structs.-
Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer
Pointer.Default
-
-
Field Summary
Fields Modifier and Type Field and Description static int
SIZEOF
The struct size in bytes.-
Fields inherited from interface org.lwjgl.system.Pointer
POINTER_SHIFT, POINTER_SIZE
-
-
Constructor Summary
Constructors Constructor and Description VkDeviceCreateInfo(java.nio.ByteBuffer container)
Creates aVkDeviceCreateInfo
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description static VkDeviceCreateInfo
calloc()
Returns a newVkDeviceCreateInfo
instance allocated withmemCalloc
.static VkDeviceCreateInfo.Buffer
calloc(int capacity)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated withmemCalloc
.static VkDeviceCreateInfo
callocStack()
Returns a newVkDeviceCreateInfo
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkDeviceCreateInfo.Buffer
callocStack(int capacity)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkDeviceCreateInfo.Buffer
callocStack(int capacity, MemoryStack stack)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkDeviceCreateInfo
callocStack(MemoryStack stack)
Returns a newVkDeviceCreateInfo
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkDeviceCreateInfo
create()
Returns a newVkDeviceCreateInfo
instance allocated withBufferUtils
.static VkDeviceCreateInfo.Buffer
create(int capacity)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated withBufferUtils
.static VkDeviceCreateInfo
create(long address)
Returns a newVkDeviceCreateInfo
instance for the specified memory address ornull
if the address isNULL
.static VkDeviceCreateInfo.Buffer
create(long address, int capacity)
Create aVkDeviceCreateInfo.Buffer
instance at the specified memory.int
enabledExtensionCount()
Returns the value of theenabledExtensionCount
field.int
enabledLayerCount()
Returns the value of theenabledLayerCount
field.int
flags()
Returns the value of theflags
field.VkDeviceCreateInfo
flags(int value)
Sets the specified value to theflags
field.static VkDeviceCreateInfo
malloc()
Returns a newVkDeviceCreateInfo
instance allocated withmemAlloc
.static VkDeviceCreateInfo.Buffer
malloc(int capacity)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated withmemAlloc
.static VkDeviceCreateInfo
mallocStack()
Returns a newVkDeviceCreateInfo
instance allocated on the thread-localMemoryStack
.static VkDeviceCreateInfo.Buffer
mallocStack(int capacity)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated on the thread-localMemoryStack
.static VkDeviceCreateInfo.Buffer
mallocStack(int capacity, MemoryStack stack)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
.static VkDeviceCreateInfo
mallocStack(MemoryStack stack)
Returns a newVkDeviceCreateInfo
instance allocated on the specifiedMemoryStack
.VkDeviceCreateInfo
nset(long struct)
Unsafe version ofset
.VkPhysicalDeviceFeatures
pEnabledFeatures()
Returns aVkPhysicalDeviceFeatures
view of the struct pointed to by thepEnabledFeatures
field.VkDeviceCreateInfo
pEnabledFeatures(VkPhysicalDeviceFeatures value)
Sets the address of the specifiedVkPhysicalDeviceFeatures
to thepEnabledFeatures
field.long
pNext()
Returns the value of thepNext
field.VkDeviceCreateInfo
pNext(long value)
Sets the specified value to thepNext
field.PointerBuffer
ppEnabledExtensionNames()
Returns aPointerBuffer
view of the data pointed to by theppEnabledExtensionNames
field.VkDeviceCreateInfo
ppEnabledExtensionNames(PointerBuffer value)
Sets the address of the specifiedPointerBuffer
to theppEnabledExtensionNames
field.PointerBuffer
ppEnabledLayerNames()
Returns aPointerBuffer
view of the data pointed to by theppEnabledLayerNames
field.VkDeviceCreateInfo
ppEnabledLayerNames(PointerBuffer value)
Sets the address of the specifiedPointerBuffer
to theppEnabledLayerNames
field.VkDeviceQueueCreateInfo.Buffer
pQueueCreateInfos()
Returns aVkDeviceQueueCreateInfo.Buffer
view of the struct array pointed to by thepQueueCreateInfos
field.VkDeviceCreateInfo
pQueueCreateInfos(VkDeviceQueueCreateInfo.Buffer value)
Sets the address of the specifiedVkDeviceQueueCreateInfo.Buffer
to thepQueueCreateInfos
field.int
queueCreateInfoCount()
Returns the value of thequeueCreateInfoCount
field.VkDeviceCreateInfo
set(int sType, long pNext, int flags, VkDeviceQueueCreateInfo.Buffer pQueueCreateInfos, PointerBuffer ppEnabledLayerNames, PointerBuffer ppEnabledExtensionNames, VkPhysicalDeviceFeatures pEnabledFeatures)
Initializes this struct with the specified values.VkDeviceCreateInfo
set(VkDeviceCreateInfo src)
Copies the specified struct data to this struct.int
sizeof()
Returns thesizeof(struct)
.int
sType()
Returns the value of thesType
field.VkDeviceCreateInfo
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)
CallsVkDeviceCreateInfo.validate(long)
for each struct contained in the specified struct array.-
Methods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toString
-
Methods inherited from interface org.lwjgl.system.NativeResource
close
-
-
-
-
Constructor Detail
-
VkDeviceCreateInfo
public VkDeviceCreateInfo(java.nio.ByteBuffer container)
Creates aVkDeviceCreateInfo
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()
Description copied from class:Struct
Returns thesizeof(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.
-
queueCreateInfoCount
public int queueCreateInfoCount()
Returns the value of thequeueCreateInfoCount
field.
-
pQueueCreateInfos
public VkDeviceQueueCreateInfo.Buffer pQueueCreateInfos()
Returns aVkDeviceQueueCreateInfo.Buffer
view of the struct array pointed to by thepQueueCreateInfos
field.
-
enabledLayerCount
public int enabledLayerCount()
Returns the value of theenabledLayerCount
field.
-
ppEnabledLayerNames
public PointerBuffer ppEnabledLayerNames()
Returns aPointerBuffer
view of the data pointed to by theppEnabledLayerNames
field.
-
enabledExtensionCount
public int enabledExtensionCount()
Returns the value of theenabledExtensionCount
field.
-
ppEnabledExtensionNames
public PointerBuffer ppEnabledExtensionNames()
Returns aPointerBuffer
view of the data pointed to by theppEnabledExtensionNames
field.
-
pEnabledFeatures
public VkPhysicalDeviceFeatures pEnabledFeatures()
Returns aVkPhysicalDeviceFeatures
view of the struct pointed to by thepEnabledFeatures
field.
-
sType
public VkDeviceCreateInfo sType(int value)
Sets the specified value to thesType
field.
-
pNext
public VkDeviceCreateInfo pNext(long value)
Sets the specified value to thepNext
field.
-
flags
public VkDeviceCreateInfo flags(int value)
Sets the specified value to theflags
field.
-
pQueueCreateInfos
public VkDeviceCreateInfo pQueueCreateInfos(VkDeviceQueueCreateInfo.Buffer value)
Sets the address of the specifiedVkDeviceQueueCreateInfo.Buffer
to thepQueueCreateInfos
field.
-
ppEnabledLayerNames
public VkDeviceCreateInfo ppEnabledLayerNames(PointerBuffer value)
Sets the address of the specifiedPointerBuffer
to theppEnabledLayerNames
field.
-
ppEnabledExtensionNames
public VkDeviceCreateInfo ppEnabledExtensionNames(PointerBuffer value)
Sets the address of the specifiedPointerBuffer
to theppEnabledExtensionNames
field.
-
pEnabledFeatures
public VkDeviceCreateInfo pEnabledFeatures(VkPhysicalDeviceFeatures value)
Sets the address of the specifiedVkPhysicalDeviceFeatures
to thepEnabledFeatures
field.
-
set
public VkDeviceCreateInfo set(int sType, long pNext, int flags, VkDeviceQueueCreateInfo.Buffer pQueueCreateInfos, PointerBuffer ppEnabledLayerNames, PointerBuffer ppEnabledExtensionNames, VkPhysicalDeviceFeatures pEnabledFeatures)
Initializes this struct with the specified values.
-
nset
public VkDeviceCreateInfo nset(long struct)
Unsafe version ofset
.
-
set
public VkDeviceCreateInfo set(VkDeviceCreateInfo src)
Copies the specified struct data to this struct.- Parameters:
src
- the source struct- Returns:
- this struct
-
malloc
public static VkDeviceCreateInfo malloc()
Returns a newVkDeviceCreateInfo
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static VkDeviceCreateInfo calloc()
Returns a newVkDeviceCreateInfo
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static VkDeviceCreateInfo create()
Returns a newVkDeviceCreateInfo
instance allocated withBufferUtils
.
-
create
public static VkDeviceCreateInfo create(long address)
Returns a newVkDeviceCreateInfo
instance for the specified memory address ornull
if the address isNULL
.
-
malloc
public static VkDeviceCreateInfo.Buffer malloc(int capacity)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static VkDeviceCreateInfo.Buffer calloc(int capacity)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static VkDeviceCreateInfo.Buffer create(int capacity)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static VkDeviceCreateInfo.Buffer create(long address, int capacity)
Create aVkDeviceCreateInfo.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
mallocStack
public static VkDeviceCreateInfo mallocStack()
Returns a newVkDeviceCreateInfo
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static VkDeviceCreateInfo callocStack()
Returns a newVkDeviceCreateInfo
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static VkDeviceCreateInfo mallocStack(MemoryStack stack)
Returns a newVkDeviceCreateInfo
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static VkDeviceCreateInfo callocStack(MemoryStack stack)
Returns a newVkDeviceCreateInfo
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
mallocStack
public static VkDeviceCreateInfo.Buffer mallocStack(int capacity)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static VkDeviceCreateInfo.Buffer callocStack(int capacity)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacity
-
mallocStack
public static VkDeviceCreateInfo.Buffer mallocStack(int capacity, MemoryStack stack)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
callocStack
public static VkDeviceCreateInfo.Buffer callocStack(int capacity, MemoryStack stack)
Returns a newVkDeviceCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
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)
CallsVkDeviceCreateInfo.validate(long)
for each struct contained in the specified struct array.- Parameters:
array
- the struct array to validatecount
- the number of structs inarray
-
-