Top Description Fields Constructors Methods
org.lwjgl.util.vma

public Class VmaAllocatorCreateInfo

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

Description of an Allocator to be created.

Layout


struct VmaAllocatorCreateInfo {
    VmaAllocatorCreateFlags flags;
    VkPhysicalDevice physicalDevice;
    VkDevice device;
    VkDeviceSize preferredLargeHeapBlockSize;
    VkAllocationCallbacks const * pAllocationCallbacks;
    VmaDeviceMemoryCallbacks const * pDeviceMemoryCallbacks;
    VkDeviceSize const * pHeapSizeLimit;
    VmaVulkanFunctions const * pVulkanFunctions;
    VkInstance instance;
    uint32_t vulkanApiVersion;
    VkExternalMemoryHandleTypeFlagsKHR const * pTypeExternalMemoryHandleTypes;
}

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
DEVICE

The struct member offsets.

public static final int
FLAGS

The struct member offsets.

public static final int
INSTANCE

The struct member offsets.

public static final int
PALLOCATIONCALLBACKS

The struct member offsets.

public static final int
PDEVICEMEMORYCALLBACKS

The struct member offsets.

public static final int
PHEAPSIZELIMIT

The struct member offsets.

public static final int
PHYSICALDEVICE

The struct member offsets.

public static final int
PREFERREDLARGEHEAPBLOCKSIZE

The struct member offsets.

public static final int
PTYPEEXTERNALMEMORYHANDLETYPES

The struct member offsets.

public static final int
PVULKANFUNCTIONS

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

public static final int
VULKANAPIVERSION

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
VmaAllocatorCreateInfo(long address, ByteBuffer container)

public
VmaAllocatorCreateInfo(ByteBuffer container)

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

Method Summary

Modifier and TypeMethod and Description
public static VmaAllocatorCreateInfo
calloc()

Returns a new VmaAllocatorCreateInfo instance allocated with memCalloc.

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

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

public static VmaAllocatorCreateInfo
callocStack()

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

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

Returns a new VmaAllocatorCreateInfo instance allocated with BufferUtils.

public static VmaAllocatorCreateInfo
create(long address)

Returns a new VmaAllocatorCreateInfo instance for the specified memory address.

public static VmaAllocatorCreateInfo
createSafe(long address)

Like create, but returns null if address is NULL.

public long
device()

Vulkan device.

public VmaAllocatorCreateInfo
device(VkDevice value)

Sets the specified value to the device field.

public int
flags()

flags for created allocator.

public VmaAllocatorCreateInfo
flags(int value)

Sets the specified value to the flags field.

public long
instance()

handle to Vulkan instance object.

public VmaAllocatorCreateInfo
instance(VkInstance value)

Sets the specified value to the instance field.

public static VmaAllocatorCreateInfo
malloc()

Returns a new VmaAllocatorCreateInfo instance allocated with memAlloc.

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

Returns a new VmaAllocatorCreateInfo instance allocated on the specified MemoryStack.

public static VmaAllocatorCreateInfo
mallocStack()

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

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

Unsafe version of device.

public static void
ndevice(long struct, VkDevice value)

Unsafe version of device.

public static int
nflags(long struct)

Unsafe version of flags.

public static void
nflags(long struct, int value)

Unsafe version of flags.

public static long
ninstance(long struct)

Unsafe version of instance.

public static void
ninstance(long struct, VkInstance value)

Unsafe version of instance.

public static VkAllocationCallbacks
npAllocationCallbacks(long struct)

Unsafe version of pAllocationCallbacks.

public static void
public static VmaDeviceMemoryCallbacks
npDeviceMemoryCallbacks(long struct)

Unsafe version of pDeviceMemoryCallbacks.

public static void
public static LongBuffer
npHeapSizeLimit(long struct, int capacity)

Unsafe version of pHeapSizeLimit.

public static void
npHeapSizeLimit(long struct, LongBuffer value)

Unsafe version of pHeapSizeLimit.

public static long
nphysicalDevice(long struct)

Unsafe version of physicalDevice.

public static void
nphysicalDevice(long struct, VkPhysicalDevice value)

Unsafe version of physicalDevice.

public static long
public static void
npreferredLargeHeapBlockSize(long struct, long value)

Unsafe version of preferredLargeHeapBlockSize.

public static IntBuffer
npTypeExternalMemoryHandleTypes(long struct, int capacity)

Unsafe version of pTypeExternalMemoryHandleTypes.

public static void
public static VmaVulkanFunctions
npVulkanFunctions(long struct)

Unsafe version of pVulkanFunctions.

public static void
npVulkanFunctions(long struct, VmaVulkanFunctions value)

Unsafe version of pVulkanFunctions.

public static int
nvulkanApiVersion(long struct)

Unsafe version of vulkanApiVersion.

public static void
nvulkanApiVersion(long struct, int value)

Unsafe version of vulkanApiVersion.

public VkAllocationCallbacks
pAllocationCallbacks()

custom CPU memory allocation callbacks.

public VmaAllocatorCreateInfo
pAllocationCallbacks(VkAllocationCallbacks value)

Sets the address of the specified VkAllocationCallbacks to the pAllocationCallbacks field.

public VmaDeviceMemoryCallbacks
pDeviceMemoryCallbacks()

informative callbacks for vkAllocateMemory, vkFreeMemory.

public VmaAllocatorCreateInfo
public LongBuffer

Returns:

Either NULL or a pointer to an array of limits on maximum number of bytes that can be allocated out of particular Vulkan memory heap.

If not NULL, it must be a pointer to an array of VkPhysicalDeviceMemoryProperties::memoryHeapCount elements, defining limit on maximum number of bytes that can be allocated out of particular Vulkan memory heap.

Any of the elements may be equal to VK_WHOLE_SIZE, which means no limit on that heap. This is also the default in case of pHeapSizeLimit = NULL.

If there is a limit defined for a heap:

  • If user tries to allocate more memory from that heap using this allocator, the allocation fails with VK_ERROR_OUT_OF_DEVICE_MEMORY.
  • If the limit is smaller than heap size reported in VkMemoryHeap::size, the value of this limit will be reported instead when using GetMemoryProperties.

Warning

Using this feature may not be equivalent to installing a GPU with smaller amount of memory, because graphics driver doesn't necessary fail new allocations with VK_ERROR_OUT_OF_DEVICE_MEMORY result when memory capacity is exceeded. It may return success and just silently migrate some device memory blocks to system RAM. This driver behavior can also be controlled using VK_AMD_memory_overallocation_behavior extension.

pHeapSizeLimit
(int
the number of elements in the returned buffer
capacity
)

public VmaAllocatorCreateInfo
pHeapSizeLimit(LongBuffer value)

Sets the address of the specified LongBuffer to the pHeapSizeLimit field.

public long
physicalDevice()

Vulkan physical device.

public VmaAllocatorCreateInfo
physicalDevice(VkPhysicalDevice value)

Sets the specified value to the physicalDevice field.

public long
preferredLargeHeapBlockSize()

preferred size of a single VkDeviceMemory block to be allocated from large heaps > 1 GiB.

public VmaAllocatorCreateInfo
preferredLargeHeapBlockSize(long value)

Sets the specified value to the preferredLargeHeapBlockSize field.

public IntBuffer

Returns:

Either null or a pointer to an array of external memory handle types for each Vulkan memory type.

If not NULL, it must be a pointer to an array of VkPhysicalDeviceMemoryProperties::memoryTypeCount elements, defining external memory handle types of particular Vulkan memory type, to be passed using VkExportMemoryAllocateInfoKHR.

Any of the elements may be equal to 0, which means not to use VkExportMemoryAllocateInfoKHR on this memory type. This is also the default in case of pTypeExternalMemoryHandleTypes = NULL.

pTypeExternalMemoryHandleTypes
(int
the number of elements in the returned buffer
capacity
)

public VmaAllocatorCreateInfo
pTypeExternalMemoryHandleTypes(IntBuffer value)

Sets the address of the specified IntBuffer to the pTypeExternalMemoryHandleTypes field.

public VmaVulkanFunctions
pVulkanFunctions()

pointers to Vulkan functions

public VmaAllocatorCreateInfo
pVulkanFunctions(VmaVulkanFunctions value)

Sets the address of the specified VmaVulkanFunctions to the pVulkanFunctions field.

public VmaAllocatorCreateInfo
set(int flags, VkPhysicalDevice physicalDevice, VkDevice device, long preferredLargeHeapBlockSize, VkAllocationCallbacks pAllocationCallbacks, VmaDeviceMemoryCallbacks pDeviceMemoryCallbacks, LongBuffer pHeapSizeLimit, VmaVulkanFunctions pVulkanFunctions, VkInstance instance, int vulkanApiVersion, IntBuffer pTypeExternalMemoryHandleTypes)

Initializes this struct with the specified values.

public VmaAllocatorCreateInfo

Returns:

this struct
set
(VmaAllocatorCreateInfo
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 static void
validate(long
the struct to validate
struct
)

Validates pointer members that should not be NULL.

public int
vulkanApiVersion()

the highest version of Vulkan that the application is designed to use.

public VmaAllocatorCreateInfo
vulkanApiVersion(int value)

Sets the specified value to the vulkanApiVersion field.

Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate

Field Detail

ALIGNOFback to summary
public static final int ALIGNOF

The struct alignment in bytes.

DEVICEback to summary
public static final int DEVICE

The struct member offsets.

FLAGSback to summary
public static final int FLAGS

The struct member offsets.

INSTANCEback to summary
public static final int INSTANCE

The struct member offsets.

PALLOCATIONCALLBACKSback to summary
public static final int PALLOCATIONCALLBACKS

The struct member offsets.

PDEVICEMEMORYCALLBACKSback to summary
public static final int PDEVICEMEMORYCALLBACKS

The struct member offsets.

PHEAPSIZELIMITback to summary
public static final int PHEAPSIZELIMIT

The struct member offsets.

PHYSICALDEVICEback to summary
public static final int PHYSICALDEVICE

The struct member offsets.

PREFERREDLARGEHEAPBLOCKSIZEback to summary
public static final int PREFERREDLARGEHEAPBLOCKSIZE

The struct member offsets.

PTYPEEXTERNALMEMORYHANDLETYPESback to summary
public static final int PTYPEEXTERNALMEMORYHANDLETYPES

The struct member offsets.

PVULKANFUNCTIONSback to summary
public static final int PVULKANFUNCTIONS

The struct member offsets.

SIZEOFback to summary
public static final int SIZEOF

The struct size in bytes.

VULKANAPIVERSIONback to summary
public static final int VULKANAPIVERSION

The struct member offsets.

Constructor Detail

VmaAllocatorCreateInfoback to summary
protected VmaAllocatorCreateInfo(long address, ByteBuffer container)
VmaAllocatorCreateInfoback to summary
public VmaAllocatorCreateInfo(ByteBuffer container)

Creates a VmaAllocatorCreateInfo instance at the current position of the specified ByteBuffer 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

callocback to summary
public static VmaAllocatorCreateInfo calloc()

Returns a new VmaAllocatorCreateInfo instance allocated with memCalloc. The instance must be explicitly freed.

callocback to summary
public static VmaAllocatorCreateInfo calloc(MemoryStack stack)

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

Parameters
stack:MemoryStack

the stack from which to allocate

callocStackback to summary
public static VmaAllocatorCreateInfo callocStack()

Deprecated

Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.

Annotations
@Deprecated
callocStackback to summary
public static VmaAllocatorCreateInfo callocStack(MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.

Annotations
@Deprecated
createback to summary
protected VmaAllocatorCreateInfo create(long address, ByteBuffer container)

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

Doc from org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.

Effectively, every Struct instance is a factory for more instances of the same type. This is used by StructBuffer.

Parameters
address:long

the struct memory address

container:ByteBuffer

an optional container buffer, to be referenced strongly by the struct instance.

Annotations
@Override
createback to summary
public static VmaAllocatorCreateInfo create()

Returns a new VmaAllocatorCreateInfo instance allocated with BufferUtils.

createback to summary
public static VmaAllocatorCreateInfo create(long address)

Returns a new VmaAllocatorCreateInfo instance for the specified memory address.

createSafeback to summary
public static VmaAllocatorCreateInfo createSafe(long address)

Like create, but returns null if address is NULL.

Annotations
@Nullable
deviceback to summary
public long device()

Vulkan device. It must be valid throughout whole lifetime of created allocator.

Annotations
@NativeType:VkDevice
deviceback to summary
public VmaAllocatorCreateInfo device(VkDevice value)

Sets the specified value to the device field.

flagsback to summary
public int flags()

flags for created allocator. Use VmaAllocatorCreateFlagBits enum. One of:

ALLOCATOR_CREATE_EXTERNALLY_SYNCHRONIZED_BIT
ALLOCATOR_CREATE_KHR_DEDICATED_ALLOCATION_BIT
ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT
ALLOCATOR_CREATE_EXT_MEMORY_BUDGET_BIT
ALLOCATOR_CREATE_AMD_DEVICE_COHERENT_MEMORY_BIT
ALLOCATOR_CREATE_BUFFER_DEVICE_ADDRESS_BIT
ALLOCATOR_CREATE_EXT_MEMORY_PRIORITY_BIT
Annotations
@NativeType:VmaAllocatorCreateFlags
flagsback to summary
public VmaAllocatorCreateInfo flags(int value)

Sets the specified value to the flags field.

instanceback to summary
public long instance()

handle to Vulkan instance object.

Annotations
@NativeType:VkInstance
instanceback to summary
public VmaAllocatorCreateInfo instance(VkInstance value)

Sets the specified value to the instance field.

mallocback to summary
public static VmaAllocatorCreateInfo malloc()

Returns a new VmaAllocatorCreateInfo instance allocated with memAlloc. The instance must be explicitly freed.

mallocback to summary
public static VmaAllocatorCreateInfo malloc(MemoryStack stack)

Returns a new VmaAllocatorCreateInfo instance allocated on the specified MemoryStack.

Parameters
stack:MemoryStack

the stack from which to allocate

mallocStackback to summary
public static VmaAllocatorCreateInfo mallocStack()

Deprecated

Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.

Annotations
@Deprecated
mallocStackback to summary
public static VmaAllocatorCreateInfo mallocStack(MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.

Annotations
@Deprecated
ndeviceback to summary
public static long ndevice(long struct)

Unsafe version of device.

ndeviceback to summary
public static void ndevice(long struct, VkDevice value)

Unsafe version of device.

nflagsback to summary
public static int nflags(long struct)

Unsafe version of flags.

nflagsback to summary
public static void nflags(long struct, int value)

Unsafe version of flags.

ninstanceback to summary
public static long ninstance(long struct)

Unsafe version of instance.

ninstanceback to summary
public static void ninstance(long struct, VkInstance value)

Unsafe version of instance.

npAllocationCallbacksback to summary
public static VkAllocationCallbacks npAllocationCallbacks(long struct)

Unsafe version of pAllocationCallbacks.

Annotations
@Nullable
npAllocationCallbacksback to summary
public static void npAllocationCallbacks(long struct, VkAllocationCallbacks value)

Unsafe version of pAllocationCallbacks.

npDeviceMemoryCallbacksback to summary
public static VmaDeviceMemoryCallbacks npDeviceMemoryCallbacks(long struct)

Unsafe version of pDeviceMemoryCallbacks.

Annotations
@Nullable
npDeviceMemoryCallbacksback to summary
public static void npDeviceMemoryCallbacks(long struct, VmaDeviceMemoryCallbacks value)

Unsafe version of pDeviceMemoryCallbacks.

npHeapSizeLimitback to summary
public static LongBuffer npHeapSizeLimit(long struct, int capacity)

Unsafe version of pHeapSizeLimit.

Annotations
@Nullable
npHeapSizeLimitback to summary
public static void npHeapSizeLimit(long struct, LongBuffer value)

Unsafe version of pHeapSizeLimit.

nphysicalDeviceback to summary
public static long nphysicalDevice(long struct)

Unsafe version of physicalDevice.

nphysicalDeviceback to summary
public static void nphysicalDevice(long struct, VkPhysicalDevice value)

Unsafe version of physicalDevice.

npreferredLargeHeapBlockSizeback to summary
public static long npreferredLargeHeapBlockSize(long struct)

Unsafe version of preferredLargeHeapBlockSize.

npreferredLargeHeapBlockSizeback to summary
public static void npreferredLargeHeapBlockSize(long struct, long value)

Unsafe version of preferredLargeHeapBlockSize.

npTypeExternalMemoryHandleTypesback to summary
public static IntBuffer npTypeExternalMemoryHandleTypes(long struct, int capacity)

Unsafe version of pTypeExternalMemoryHandleTypes.

Annotations
@Nullable
npTypeExternalMemoryHandleTypesback to summary
public static void npTypeExternalMemoryHandleTypes(long struct, IntBuffer value)

Unsafe version of pTypeExternalMemoryHandleTypes.

npVulkanFunctionsback to summary
public static VmaVulkanFunctions npVulkanFunctions(long struct)

Unsafe version of pVulkanFunctions.

npVulkanFunctionsback to summary
public static void npVulkanFunctions(long struct, VmaVulkanFunctions value)

Unsafe version of pVulkanFunctions.

nvulkanApiVersionback to summary
public static int nvulkanApiVersion(long struct)

Unsafe version of vulkanApiVersion.

nvulkanApiVersionback to summary
public static void nvulkanApiVersion(long struct, int value)

Unsafe version of vulkanApiVersion.

pAllocationCallbacksback to summary
public VkAllocationCallbacks pAllocationCallbacks()

custom CPU memory allocation callbacks. Optional, can be null. When specified, will also be used for all CPU-side memory allocations. Optional.

Annotations
@Nullable
@NativeType:VkAllocationCallbacks const *
pAllocationCallbacksback to summary
public VmaAllocatorCreateInfo pAllocationCallbacks(VkAllocationCallbacks value)

Sets the address of the specified VkAllocationCallbacks to the pAllocationCallbacks field.

pDeviceMemoryCallbacksback to summary
public VmaDeviceMemoryCallbacks pDeviceMemoryCallbacks()

informative callbacks for vkAllocateMemory, vkFreeMemory. Optional.

Annotations
@Nullable
@NativeType:VmaDeviceMemoryCallbacks const *
pDeviceMemoryCallbacksback to summary
public VmaAllocatorCreateInfo pDeviceMemoryCallbacks(VmaDeviceMemoryCallbacks value)

Sets the address of the specified VmaDeviceMemoryCallbacks to the pDeviceMemoryCallbacks field.

pHeapSizeLimitback to summary
public LongBuffer pHeapSizeLimit(int capacity)
Parameters
capacity:int

the number of elements in the returned buffer

Returns:LongBuffer

Either NULL or a pointer to an array of limits on maximum number of bytes that can be allocated out of particular Vulkan memory heap.

If not NULL, it must be a pointer to an array of VkPhysicalDeviceMemoryProperties::memoryHeapCount elements, defining limit on maximum number of bytes that can be allocated out of particular Vulkan memory heap.

Any of the elements may be equal to VK_WHOLE_SIZE, which means no limit on that heap. This is also the default in case of pHeapSizeLimit = NULL.

If there is a limit defined for a heap:

  • If user tries to allocate more memory from that heap using this allocator, the allocation fails with VK_ERROR_OUT_OF_DEVICE_MEMORY.
  • If the limit is smaller than heap size reported in VkMemoryHeap::size, the value of this limit will be reported instead when using GetMemoryProperties.

Warning

Using this feature may not be equivalent to installing a GPU with smaller amount of memory, because graphics driver doesn't necessary fail new allocations with VK_ERROR_OUT_OF_DEVICE_MEMORY result when memory capacity is exceeded. It may return success and just silently migrate some device memory blocks to system RAM. This driver behavior can also be controlled using VK_AMD_memory_overallocation_behavior extension.

Annotations
@Nullable
@NativeType:VkDeviceSize const *
pHeapSizeLimitback to summary
public VmaAllocatorCreateInfo pHeapSizeLimit(LongBuffer value)

Sets the address of the specified LongBuffer to the pHeapSizeLimit field.

physicalDeviceback to summary
public long physicalDevice()

Vulkan physical device. It must be valid throughout whole lifetime of created allocator.

Annotations
@NativeType:VkPhysicalDevice
physicalDeviceback to summary
public VmaAllocatorCreateInfo physicalDevice(VkPhysicalDevice value)

Sets the specified value to the physicalDevice field.

preferredLargeHeapBlockSizeback to summary
public long preferredLargeHeapBlockSize()

preferred size of a single VkDeviceMemory block to be allocated from large heaps > 1 GiB. Set to 0 to use default, which is currently 256 MiB. Optional.

Annotations
@NativeType:VkDeviceSize
preferredLargeHeapBlockSizeback to summary
public VmaAllocatorCreateInfo preferredLargeHeapBlockSize(long value)

Sets the specified value to the preferredLargeHeapBlockSize field.

pTypeExternalMemoryHandleTypesback to summary
public IntBuffer pTypeExternalMemoryHandleTypes(int capacity)
Parameters
capacity:int

the number of elements in the returned buffer

Returns:IntBuffer

Either null or a pointer to an array of external memory handle types for each Vulkan memory type.

If not NULL, it must be a pointer to an array of VkPhysicalDeviceMemoryProperties::memoryTypeCount elements, defining external memory handle types of particular Vulkan memory type, to be passed using VkExportMemoryAllocateInfoKHR.

Any of the elements may be equal to 0, which means not to use VkExportMemoryAllocateInfoKHR on this memory type. This is also the default in case of pTypeExternalMemoryHandleTypes = NULL.

Annotations
@Nullable
@NativeType:VkExternalMemoryHandleTypeFlagsKHR const *
pTypeExternalMemoryHandleTypesback to summary
public VmaAllocatorCreateInfo pTypeExternalMemoryHandleTypes(IntBuffer value)

Sets the address of the specified IntBuffer to the pTypeExternalMemoryHandleTypes field.

pVulkanFunctionsback to summary
public VmaVulkanFunctions pVulkanFunctions()

pointers to Vulkan functions

Annotations
@NativeType:VmaVulkanFunctions const *
pVulkanFunctionsback to summary
public VmaAllocatorCreateInfo pVulkanFunctions(VmaVulkanFunctions value)

Sets the address of the specified VmaVulkanFunctions to the pVulkanFunctions field.

setback to summary
public VmaAllocatorCreateInfo set(int flags, VkPhysicalDevice physicalDevice, VkDevice device, long preferredLargeHeapBlockSize, VkAllocationCallbacks pAllocationCallbacks, VmaDeviceMemoryCallbacks pDeviceMemoryCallbacks, LongBuffer pHeapSizeLimit, VmaVulkanFunctions pVulkanFunctions, VkInstance instance, int vulkanApiVersion, IntBuffer pTypeExternalMemoryHandleTypes)

Initializes this struct with the specified values.

setback to summary
public VmaAllocatorCreateInfo set(VmaAllocatorCreateInfo src)

Copies the specified struct data to this struct.

Parameters
src:VmaAllocatorCreateInfo

the source struct

Returns:VmaAllocatorCreateInfo

this struct

sizeofback to summary
public int sizeof()

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

Doc from org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).

Annotations
@Override
validateback to summary
public static void validate(long struct)

Validates pointer members that should not be NULL.

Parameters
struct:long

the struct to validate

vulkanApiVersionback to summary
public int vulkanApiVersion()

the highest version of Vulkan that the application is designed to use. (optional)

It must be a value in the format as created by macro VK_MAKE_VERSION or a constant like: VK_API_VERSION_1_1, VK_API_VERSION_1_0. The patch version number specified is ignored. Only the major and minor versions are considered. It must be less or equal (preferably equal) to value as passed to vkCreateInstance as VkApplicationInfo::apiVersion. Only versions 1.0, 1.1, 1.2 and 1.3 are supported by the current implementation.

Leaving it initialized to zero is equivalent to VK_API_VERSION_1_0.

Annotations
@NativeType:uint32_t
vulkanApiVersionback to summary
public VmaAllocatorCreateInfo vulkanApiVersion(int value)

Sets the specified value to the vulkanApiVersion field.