Class VkReallocationFunction
- java.lang.Object
-
- org.lwjgl.system.Callback
-
- org.lwjgl.vulkan.VkReallocationFunction
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.CallbackI,org.lwjgl.system.CallbackI.P,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer,VkReallocationFunctionI
public abstract class VkReallocationFunction extends org.lwjgl.system.Callback implements VkReallocationFunctionI
Application-defined memory reallocation function.C Specification
The type of
pfnReallocationis:typedef void* (VKAPI_PTR *PFN_vkReallocationFunction)( void* pUserData, void* pOriginal, size_t size, size_t alignment, VkSystemAllocationScope allocationScope);Description
pfnReallocationmust return an allocation with enough space forsizebytes, and the contents of the original allocation from bytes zero tomin(original size, new size) - 1must be preserved in the returned allocation. Ifsizeis larger than the old size, the contents of the additional space are undefined. If satisfying these requirements involves creating a new allocation, then the old allocation should be freed.If
pOriginalisNULL, thenpfnReallocationmust behave equivalently to a call toVkAllocationFunctionwith the same parameter values (withoutpOriginal).If
sizeis zero, thenpfnReallocationmust behave equivalently to a call toVkFreeFunctionwith the samepUserDataparameter value, andpMemoryequal topOriginal.If
pOriginalis non-NULL, the implementation must ensure thatalignmentis equal to thealignmentused to originally allocatepOriginal.If this function fails and
pOriginalis non-NULLthe application must not free the old allocation.pfnReallocationmust follow the same rules for return values as tname:PFN_vkAllocationFunction.See Also
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.lwjgl.system.CallbackI
org.lwjgl.system.CallbackI.B, org.lwjgl.system.CallbackI.D, org.lwjgl.system.CallbackI.F, org.lwjgl.system.CallbackI.I, org.lwjgl.system.CallbackI.J, org.lwjgl.system.CallbackI.N, org.lwjgl.system.CallbackI.P, org.lwjgl.system.CallbackI.S, org.lwjgl.system.CallbackI.V, org.lwjgl.system.CallbackI.Z
-
-
Field Summary
-
Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE
-
Fields inherited from interface org.lwjgl.vulkan.VkReallocationFunctionI
SIGNATURE
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static VkReallocationFunctioncreate(long functionPointer)Creates aVkReallocationFunctioninstance from the specified function pointer.static VkReallocationFunctioncreate(VkReallocationFunctionI instance)Creates aVkReallocationFunctioninstance that delegates to the specifiedVkReallocationFunctionIinstance.static VkReallocationFunctioncreateSafe(long functionPointer)-
Methods inherited from class org.lwjgl.system.Callback
__stdcall, address, equals, free, free, get, getSafe, hashCode, toString
-
Methods inherited from interface org.lwjgl.vulkan.VkReallocationFunctionI
callback, getSignature, invoke
-
-
-
-
Method Detail
-
create
public static VkReallocationFunction create(long functionPointer)
Creates aVkReallocationFunctioninstance from the specified function pointer.- Returns:
- the new
VkReallocationFunction
-
createSafe
@Nullable public static VkReallocationFunction createSafe(long functionPointer)
-
create
public static VkReallocationFunction create(VkReallocationFunctionI instance)
Creates aVkReallocationFunctioninstance that delegates to the specifiedVkReallocationFunctionIinstance.
-
-