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

public Class VmaVulkanFunctions

extends Struct<VmaVulkanFunctions>
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.*

Pointers to some Vulkan functions - a subset used by the library.

Used in VmaAllocatorCreateInfo::pVulkanFunctions.

Layout


struct VmaVulkanFunctions {
    PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;
    PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;
    PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;
    PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;
    PFN_vkAllocateMemory vkAllocateMemory;
    PFN_vkFreeMemory vkFreeMemory;
    PFN_vkMapMemory vkMapMemory;
    PFN_vkUnmapMemory vkUnmapMemory;
    PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
    PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
    PFN_vkBindBufferMemory vkBindBufferMemory;
    PFN_vkBindImageMemory vkBindImageMemory;
    PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
    PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
    PFN_vkCreateBuffer vkCreateBuffer;
    PFN_vkDestroyBuffer vkDestroyBuffer;
    PFN_vkCreateImage vkCreateImage;
    PFN_vkDestroyImage vkDestroyImage;
    PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
    PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
    PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
    PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
    PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
    PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR;
    PFN_vkGetDeviceBufferMemoryRequirements vkGetDeviceBufferMemoryRequirements;
    PFN_vkGetDeviceImageMemoryRequirements vkGetDeviceImageMemoryRequirements;
}

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
SIZEOF

The struct size in bytes.

public static final int
VKALLOCATEMEMORY

The struct member offsets.

public static final int
VKBINDBUFFERMEMORY

The struct member offsets.

public static final int
VKBINDBUFFERMEMORY2KHR

The struct member offsets.

public static final int
VKBINDIMAGEMEMORY

The struct member offsets.

public static final int
VKBINDIMAGEMEMORY2KHR

The struct member offsets.

public static final int
VKCMDCOPYBUFFER

The struct member offsets.

public static final int
VKCREATEBUFFER

The struct member offsets.

public static final int
VKCREATEIMAGE

The struct member offsets.

public static final int
VKDESTROYBUFFER

The struct member offsets.

public static final int
VKDESTROYIMAGE

The struct member offsets.

public static final int
VKFLUSHMAPPEDMEMORYRANGES

The struct member offsets.

public static final int
VKFREEMEMORY

The struct member offsets.

public static final int
VKGETBUFFERMEMORYREQUIREMENTS

The struct member offsets.

public static final int
VKGETBUFFERMEMORYREQUIREMENTS2KHR

The struct member offsets.

public static final int
VKGETDEVICEBUFFERMEMORYREQUIREMENTS

The struct member offsets.

public static final int
VKGETDEVICEIMAGEMEMORYREQUIREMENTS

The struct member offsets.

public static final int
VKGETDEVICEPROCADDR

The struct member offsets.

public static final int
VKGETIMAGEMEMORYREQUIREMENTS

The struct member offsets.

public static final int
VKGETIMAGEMEMORYREQUIREMENTS2KHR

The struct member offsets.

public static final int
VKGETINSTANCEPROCADDR

The struct member offsets.

public static final int
VKGETPHYSICALDEVICEMEMORYPROPERTIES

The struct member offsets.

public static final int
VKGETPHYSICALDEVICEMEMORYPROPERTIES2KHR

The struct member offsets.

public static final int
VKGETPHYSICALDEVICEPROPERTIES

The struct member offsets.

public static final int
VKINVALIDATEMAPPEDMEMORYRANGES

The struct member offsets.

public static final int
VKMAPMEMORY

The struct member offsets.

public static final int
VKUNMAPMEMORY

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

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

public
VmaVulkanFunctions(ByteBuffer container)

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

Method Summary

Modifier and TypeMethod and Description
public static VmaVulkanFunctions
calloc()

Returns a new VmaVulkanFunctions instance allocated with memCalloc.

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

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

public static VmaVulkanFunctions
callocStack()

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

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

Returns a new VmaVulkanFunctions instance allocated with BufferUtils.

public static VmaVulkanFunctions
create(long address)

Returns a new VmaVulkanFunctions instance for the specified memory address.

public static VmaVulkanFunctions
createSafe(long address)

Like create, but returns null if address is NULL.

public static VmaVulkanFunctions
malloc()

Returns a new VmaVulkanFunctions instance allocated with memAlloc.

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

Returns a new VmaVulkanFunctions instance allocated on the specified MemoryStack.

public static VmaVulkanFunctions
mallocStack()

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

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

Unsafe version of vkAllocateMemory.

public static void
nvkAllocateMemory(long struct, long value)

Unsafe version of vkAllocateMemory.

public static long
nvkBindBufferMemory(long struct)

Unsafe version of vkBindBufferMemory.

public static void
nvkBindBufferMemory(long struct, long value)

Unsafe version of vkBindBufferMemory.

public static long
nvkBindBufferMemory2KHR(long struct)

Unsafe version of vkBindBufferMemory2KHR.

public static void
nvkBindBufferMemory2KHR(long struct, long value)

Unsafe version of vkBindBufferMemory2KHR.

public static long
nvkBindImageMemory(long struct)

Unsafe version of vkBindImageMemory.

public static void
nvkBindImageMemory(long struct, long value)

Unsafe version of vkBindImageMemory.

public static long
nvkBindImageMemory2KHR(long struct)

Unsafe version of vkBindImageMemory2KHR.

public static void
nvkBindImageMemory2KHR(long struct, long value)

Unsafe version of vkBindImageMemory2KHR.

public static long
nvkCmdCopyBuffer(long struct)

Unsafe version of vkCmdCopyBuffer.

public static void
nvkCmdCopyBuffer(long struct, long value)

Unsafe version of vkCmdCopyBuffer.

public static long
nvkCreateBuffer(long struct)

Unsafe version of vkCreateBuffer.

public static void
nvkCreateBuffer(long struct, long value)

Unsafe version of vkCreateBuffer.

public static long
nvkCreateImage(long struct)

Unsafe version of vkCreateImage.

public static void
nvkCreateImage(long struct, long value)

Unsafe version of vkCreateImage.

public static long
nvkDestroyBuffer(long struct)

Unsafe version of vkDestroyBuffer.

public static void
nvkDestroyBuffer(long struct, long value)

Unsafe version of vkDestroyBuffer.

public static long
nvkDestroyImage(long struct)

Unsafe version of vkDestroyImage.

public static void
nvkDestroyImage(long struct, long value)

Unsafe version of vkDestroyImage.

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

Unsafe version of vkFlushMappedMemoryRanges.

public static long
nvkFreeMemory(long struct)

Unsafe version of vkFreeMemory.

public static void
nvkFreeMemory(long struct, long value)

Unsafe version of vkFreeMemory.

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

Unsafe version of vkGetBufferMemoryRequirements.

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

Unsafe version of vkGetBufferMemoryRequirements2KHR.

public static long
public static void
public static long
public static void
public static long
nvkGetDeviceProcAddr(long struct)

Unsafe version of vkGetDeviceProcAddr.

public static void
nvkGetDeviceProcAddr(long struct, long value)

Unsafe version of vkGetDeviceProcAddr.

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

Unsafe version of vkGetImageMemoryRequirements.

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

Unsafe version of vkGetImageMemoryRequirements2KHR.

public static long
nvkGetInstanceProcAddr(long struct)

Unsafe version of vkGetInstanceProcAddr.

public static void
nvkGetInstanceProcAddr(long struct, long value)

Unsafe version of vkGetInstanceProcAddr.

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

Unsafe version of vkGetPhysicalDeviceProperties.

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

Unsafe version of vkInvalidateMappedMemoryRanges.

public static long
nvkMapMemory(long struct)

Unsafe version of vkMapMemory.

public static void
nvkMapMemory(long struct, long value)

Unsafe version of vkMapMemory.

public static long
nvkUnmapMemory(long struct)

Unsafe version of vkUnmapMemory.

public static void
nvkUnmapMemory(long struct, long value)

Unsafe version of vkUnmapMemory.

public VmaVulkanFunctions
set(long vkGetInstanceProcAddr, long vkGetDeviceProcAddr, long vkGetPhysicalDeviceProperties, long vkGetPhysicalDeviceMemoryProperties, long vkAllocateMemory, long vkFreeMemory, long vkMapMemory, long vkUnmapMemory, long vkFlushMappedMemoryRanges, long vkInvalidateMappedMemoryRanges, long vkBindBufferMemory, long vkBindImageMemory, long vkGetBufferMemoryRequirements, long vkGetImageMemoryRequirements, long vkCreateBuffer, long vkDestroyBuffer, long vkCreateImage, long vkDestroyImage, long vkCmdCopyBuffer, long vkGetBufferMemoryRequirements2KHR, long vkGetImageMemoryRequirements2KHR, long vkBindBufferMemory2KHR, long vkBindImageMemory2KHR, long vkGetPhysicalDeviceMemoryProperties2KHR, long vkGetDeviceBufferMemoryRequirements, long vkGetDeviceImageMemoryRequirements)

Initializes this struct with the specified values.

public VmaVulkanFunctions

Returns:

this struct
set
(VmaVulkanFunctions
the source struct
src
)

Copies the specified struct data to this struct.

public VmaVulkanFunctions
set(VkInstance
a Vulkan instance
instance
,
VkDevice
a Vulkan device
device
)

Helper method that populates this struct with required Vulkan function pointers from the specified Vulkan instance and device.

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 long

Returns:

the value of the vkAllocateMemory field.
vkAllocateMemory
()

public VmaVulkanFunctions
vkAllocateMemory(long value)

Sets the specified value to the vkAllocateMemory field.

public long

Returns:

the value of the vkBindBufferMemory field.
vkBindBufferMemory
()

public VmaVulkanFunctions
vkBindBufferMemory(long value)

Sets the specified value to the vkBindBufferMemory field.

public long
vkBindBufferMemory2KHR()

vkBindBufferMemory2 on Vulkan ≥ 1.1, vkBindBufferMemory2KHR when using VK_KHR_bind_memory2 extension.

public VmaVulkanFunctions
vkBindBufferMemory2KHR(long value)

Sets the specified value to the vkBindBufferMemory2KHR field.

public long

Returns:

the value of the vkBindImageMemory field.
vkBindImageMemory
()

public VmaVulkanFunctions
vkBindImageMemory(long value)

Sets the specified value to the vkBindImageMemory field.

public long
vkBindImageMemory2KHR()

vkBindImageMemory2 on Vulkan ≥ 1.1, vkBindImageMemory2KHR when using VK_KHR_bind_memory2 extension.

public VmaVulkanFunctions
vkBindImageMemory2KHR(long value)

Sets the specified value to the vkBindImageMemory2KHR field.

public long

Returns:

the value of the vkCmdCopyBuffer field.
vkCmdCopyBuffer
()

public VmaVulkanFunctions
vkCmdCopyBuffer(long value)

Sets the specified value to the vkCmdCopyBuffer field.

public long

Returns:

the value of the vkCreateBuffer field.
vkCreateBuffer
()

public VmaVulkanFunctions
vkCreateBuffer(long value)

Sets the specified value to the vkCreateBuffer field.

public long

Returns:

the value of the vkCreateImage field.
vkCreateImage
()

public VmaVulkanFunctions
vkCreateImage(long value)

Sets the specified value to the vkCreateImage field.

public long

Returns:

the value of the vkDestroyBuffer field.
vkDestroyBuffer
()

public VmaVulkanFunctions
vkDestroyBuffer(long value)

Sets the specified value to the vkDestroyBuffer field.

public long

Returns:

the value of the vkDestroyImage field.
vkDestroyImage
()

public VmaVulkanFunctions
vkDestroyImage(long value)

Sets the specified value to the vkDestroyImage field.

public long

Returns:

the value of the vkFlushMappedMemoryRanges field.
vkFlushMappedMemoryRanges
()

public VmaVulkanFunctions
vkFlushMappedMemoryRanges(long value)

Sets the specified value to the vkFlushMappedMemoryRanges field.

public long

Returns:

the value of the vkFreeMemory field.
vkFreeMemory
()

public VmaVulkanFunctions
vkFreeMemory(long value)

Sets the specified value to the vkFreeMemory field.

public long

Returns:

the value of the vkGetBufferMemoryRequirements field.
vkGetBufferMemoryRequirements
()

public VmaVulkanFunctions
vkGetBufferMemoryRequirements(long value)

Sets the specified value to the vkGetBufferMemoryRequirements field.

public long
vkGetBufferMemoryRequirements2KHR()

vkGetBufferMemoryRequirements2 on Vulkan ≥ 1.1, vkGetBufferMemoryRequirements2KHR when using VK_KHR_dedicated_allocation extension.

public VmaVulkanFunctions
vkGetBufferMemoryRequirements2KHR(long value)

Sets the specified value to the vkGetBufferMemoryRequirements2KHR field.

public long

Returns:

the value of the vkGetDeviceBufferMemoryRequirements field.
vkGetDeviceBufferMemoryRequirements
()

public VmaVulkanFunctions
vkGetDeviceBufferMemoryRequirements(long value)

Sets the specified value to the vkGetDeviceBufferMemoryRequirements field.

public long

Returns:

the value of the vkGetDeviceImageMemoryRequirements field.
vkGetDeviceImageMemoryRequirements
()

public VmaVulkanFunctions
vkGetDeviceImageMemoryRequirements(long value)

Sets the specified value to the vkGetDeviceImageMemoryRequirements field.

public long

Returns:

the value of the vkGetDeviceProcAddr field.
vkGetDeviceProcAddr
()

public VmaVulkanFunctions
vkGetDeviceProcAddr(long value)

Sets the specified value to the vkGetDeviceProcAddr field.

public long

Returns:

the value of the vkGetImageMemoryRequirements field.
vkGetImageMemoryRequirements
()

public VmaVulkanFunctions
vkGetImageMemoryRequirements(long value)

Sets the specified value to the vkGetImageMemoryRequirements field.

public long
vkGetImageMemoryRequirements2KHR()

vkGetImageMemoryRequirements2 on Vulkan ≥ 1.1, vkGetImageMemoryRequirements2KHR when using VK_KHR_dedicated_allocation extension.

public VmaVulkanFunctions
vkGetImageMemoryRequirements2KHR(long value)

Sets the specified value to the vkGetImageMemoryRequirements2KHR field.

public long

Returns:

the value of the vkGetInstanceProcAddr field.
vkGetInstanceProcAddr
()

public VmaVulkanFunctions
vkGetInstanceProcAddr(long value)

Sets the specified value to the vkGetInstanceProcAddr field.

public long

Returns:

the value of the vkGetPhysicalDeviceMemoryProperties field.
vkGetPhysicalDeviceMemoryProperties
()

public VmaVulkanFunctions
vkGetPhysicalDeviceMemoryProperties(long value)

Sets the specified value to the vkGetPhysicalDeviceMemoryProperties field.

public long

Returns:

the value of the vkGetPhysicalDeviceMemoryProperties2KHR field.
vkGetPhysicalDeviceMemoryProperties2KHR
()

public VmaVulkanFunctions
vkGetPhysicalDeviceMemoryProperties2KHR(long value)

Sets the specified value to the vkGetPhysicalDeviceMemoryProperties2KHR field.

public long

Returns:

the value of the vkGetPhysicalDeviceProperties field.
vkGetPhysicalDeviceProperties
()

public VmaVulkanFunctions
vkGetPhysicalDeviceProperties(long value)

Sets the specified value to the vkGetPhysicalDeviceProperties field.

public long

Returns:

the value of the vkInvalidateMappedMemoryRanges field.
vkInvalidateMappedMemoryRanges
()

public VmaVulkanFunctions
vkInvalidateMappedMemoryRanges(long value)

Sets the specified value to the vkInvalidateMappedMemoryRanges field.

public long

Returns:

the value of the vkMapMemory field.
vkMapMemory
()

public VmaVulkanFunctions
vkMapMemory(long value)

Sets the specified value to the vkMapMemory field.

public long

Returns:

the value of the vkUnmapMemory field.
vkUnmapMemory
()

public VmaVulkanFunctions
vkUnmapMemory(long value)

Sets the specified value to the vkUnmapMemory field.

Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate