Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkInstanceCreateInfo

extends Struct<VkInstanceCreateInfo>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Structure specifying parameters of a newly created instance.
Description

To capture events that occur while creating or destroying an instance, an application can link a VkDebugReportCallbackCreateInfoEXT structure or a VkDebugUtilsMessengerCreateInfoEXT structure to the pNext element of the VkInstanceCreateInfo structure given to vkCreateInstance. This callback is only valid for the duration of the CreateInstance and the DestroyInstance call. Use CreateDebugReportCallbackEXT or CreateDebugUtilsMessengerEXT to create persistent callback objects.

An application can add additional drivers by including the VkDirectDriverLoadingListLUNARG struct to the pNext element of the VkInstanceCreateInfo structure given to vkCreateInstance.

Note

VkDirectDriverLoadingListLUNARG allows applications to ship drivers with themselves. Only drivers that are designed to work with it should be used, such as drivers that implement Vulkan in software or that implement Vulkan by translating it to a different API. Any driver that requires installation should not be used, such as hardware drivers.

Valid Usage
Valid Usage (Implicit)
See Also

VkApplicationInfo, CreateInstance

Layout


struct VkInstanceCreateInfo {
    VkStructureType sType;
    void const * pNext;
    VkInstanceCreateFlags flags;
    VkApplicationInfo const * pApplicationInfo;
    uint32_t enabledLayerCount;
    char const * const * ppEnabledLayerNames;
    uint32_t enabledExtensionCount;
    char const * const * ppEnabledExtensionNames;
}

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
ENABLEDEXTENSIONCOUNT

The struct member offsets.

public static final int
ENABLEDLAYERCOUNT

The struct member offsets.

public static final int
FLAGS

The struct member offsets.

public static final int
PAPPLICATIONINFO

The struct member offsets.

public static final int
PNEXT

The struct member offsets.

public static final int
PPENABLEDEXTENSIONNAMES

The struct member offsets.

public static final int
PPENABLEDLAYERNAMES

The struct member offsets.

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
VkInstanceCreateInfo(long address, ByteBuffer container)

public
VkInstanceCreateInfo(ByteBuffer container)

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

Method Summary

Modifier and TypeMethod and Description
public static VkInstanceCreateInfo
calloc()

Returns a new VkInstanceCreateInfo instance allocated with memCalloc.

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

Returns a new VkInstanceCreateInfo.Buffer instance allocated with memCalloc.

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

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

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

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

public static VkInstanceCreateInfo
callocStack()

Deprecated
Deprecated for removal in 3.4.0.
public static VkInstanceCreateInfo
callocStack(MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static VkInstanceCreateInfo.Buffer
callocStack(int capacity)

Deprecated
Deprecated for removal in 3.4.0.
public static VkInstanceCreateInfo.Buffer
callocStack(int capacity, MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
protected VkInstanceCreateInfo
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 VkInstanceCreateInfo
create()

Returns a new VkInstanceCreateInfo instance allocated with BufferUtils.

public static VkInstanceCreateInfo
create(long address)

Returns a new VkInstanceCreateInfo instance for the specified memory address.

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

Returns a new VkInstanceCreateInfo.Buffer instance allocated with BufferUtils.

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

Create a VkInstanceCreateInfo.Buffer instance at the specified memory.

public static VkInstanceCreateInfo
createSafe(long address)

Like create, but returns null if address is NULL.

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

Like create, but returns null if address is NULL.

public int
enabledExtensionCount()

the number of global extensions to enable.

public int
enabledLayerCount()

the number of global layers to enable.

public int
flags()

a bitmask of VkInstanceCreateFlagBits indicating the behavior of the instance.

public VkInstanceCreateInfo
flags(int value)

Sets the specified value to the flags field.

public static VkInstanceCreateInfo
malloc()

Returns a new VkInstanceCreateInfo instance allocated with memAlloc.

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

Returns a new VkInstanceCreateInfo.Buffer instance allocated with memAlloc.

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

Returns a new VkInstanceCreateInfo instance allocated on the specified MemoryStack.

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

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

public static VkInstanceCreateInfo
mallocStack()

Deprecated
Deprecated for removal in 3.4.0.
public static VkInstanceCreateInfo
mallocStack(MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static VkInstanceCreateInfo.Buffer
mallocStack(int capacity)

Deprecated
Deprecated for removal in 3.4.0.
public static VkInstanceCreateInfo.Buffer
mallocStack(int capacity, MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static int
nenabledExtensionCount(long struct)

Unsafe version of enabledExtensionCount.

public static void
nenabledExtensionCount(long struct, int value)

Sets the specified value to the enabledExtensionCount field of the specified struct.

public static int
nenabledLayerCount(long struct)

Unsafe version of enabledLayerCount.

public static void
nenabledLayerCount(long struct, int value)

Sets the specified value to the enabledLayerCount field of the specified struct.

public static int
nflags(long struct)

Unsafe version of flags.

public static void
nflags(long struct, int value)

Unsafe version of flags.

public static VkApplicationInfo
npApplicationInfo(long struct)

Unsafe version of pApplicationInfo.

public static void
npApplicationInfo(long struct, VkApplicationInfo value)

Unsafe version of pApplicationInfo.

public static long
npNext(long struct)

Unsafe version of pNext.

public static void
npNext(long struct, long value)

Unsafe version of pNext.

public static PointerBuffer
nppEnabledExtensionNames(long struct)

Unsafe version of ppEnabledExtensionNames.

public static void
nppEnabledExtensionNames(long struct, PointerBuffer value)

Unsafe version of ppEnabledExtensionNames.

public static PointerBuffer
nppEnabledLayerNames(long struct)

Unsafe version of ppEnabledLayerNames.

public static void
nppEnabledLayerNames(long struct, PointerBuffer value)

Unsafe version of ppEnabledLayerNames.

public static int
nsType(long struct)

Unsafe version of sType.

public static void
nsType(long struct, int value)

Unsafe version of sType.

public VkApplicationInfo
pApplicationInfo()

NULL or a pointer to a VkApplicationInfo structure.

public VkInstanceCreateInfo
pApplicationInfo(VkApplicationInfo value)

Sets the address of the specified VkApplicationInfo to the pApplicationInfo field.

public long
pNext()

NULL or a pointer to a structure extending this structure.

public VkInstanceCreateInfo
pNext(long value)

Sets the specified value to the pNext field.

public VkInstanceCreateInfo
pNext(VkDebugReportCallbackCreateInfoEXT value)

Prepends the specified VkDebugReportCallbackCreateInfoEXT value to the pNext chain.

public VkInstanceCreateInfo
pNext(VkDebugUtilsMessengerCreateInfoEXT value)

Prepends the specified VkDebugUtilsMessengerCreateInfoEXT value to the pNext chain.

public VkInstanceCreateInfo
pNext(VkDirectDriverLoadingListLUNARG value)

Prepends the specified VkDirectDriverLoadingListLUNARG value to the pNext chain.

public VkInstanceCreateInfo
pNext(VkExportMetalObjectCreateInfoEXT value)

Prepends the specified VkExportMetalObjectCreateInfoEXT value to the pNext chain.

public VkInstanceCreateInfo
pNext(VkValidationFeaturesEXT value)

Prepends the specified VkValidationFeaturesEXT value to the pNext chain.

public VkInstanceCreateInfo
pNext(VkValidationFlagsEXT value)

Prepends the specified VkValidationFlagsEXT value to the pNext chain.

public PointerBuffer
ppEnabledExtensionNames()

a pointer to an array of enabledExtensionCount null-terminated UTF-8 strings containing the names of extensions to enable.

public VkInstanceCreateInfo
ppEnabledExtensionNames(PointerBuffer value)

Sets the address of the specified PointerBuffer to the ppEnabledExtensionNames field.

public PointerBuffer
ppEnabledLayerNames()

a pointer to an array of enabledLayerCount null-terminated UTF-8 strings containing the names of layers to enable for the created instance.

public VkInstanceCreateInfo
ppEnabledLayerNames(PointerBuffer value)

Sets the address of the specified PointerBuffer to the ppEnabledLayerNames field.

public VkInstanceCreateInfo
set(int sType, long pNext, int flags, VkApplicationInfo pApplicationInfo, PointerBuffer ppEnabledLayerNames, PointerBuffer ppEnabledExtensionNames)

Initializes this struct with the specified values.

public VkInstanceCreateInfo

Returns:

this struct
set
(VkInstanceCreateInfo
the source struct
src
)

Copies the specified struct data to this struct.

public int
sizeof()

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

Returns sizeof(struct).
public int
sType()

a VkStructureType value identifying this structure.

public VkInstanceCreateInfo
sType(int value)

Sets the specified value to the sType field.

public VkInstanceCreateInfo
public static void
validate(long
the struct to validate
struct
)

Validates pointer members that should not be NULL.

Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate