# Interface VulkanHostAllocatorCallbacksType.AllocationFunctionType

All Known Subinterfaces:
  `VulkanHostAllocatorType`

All Known Implementing Classes:
  `VulkanHostAllocatorTracker, VulkanLWJGLHostAllocatorJeMalloc`

Enclosing interface:
  `VulkanHostAllocatorCallbacksType`

public static interface VulkanHostAllocatorCallbacksType.AllocationFunctionType
A function to allocate memory.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `long`
  `allocate(long size, long alignment, VulkanSystemAllocationScope scope)`
  Allocate `size` octets of memory, aligned to `alignment`, of scope `scope`.

- ## Method Details

  - ### allocate

    long allocate(long size, long alignment, VulkanSystemAllocationScope scope)
    Allocate `size` octets of memory, aligned to `alignment`, of scope `scope`. The function must return the address of the allocated memory as an integer, or `0` if the allocation has failed. The function MUST NOT raise exceptions under any circumstances.
    Parameters:
      `size` - The size of the allocation
      `alignment` - The alignment of the allocation
      `scope` - The scope of the allocation
    Returns:
      The memory address