Go to the documentation of this file.
126 typedef void* ( *AkMemAllocVM ) (
228 #if defined AK_WIN || defined AK_LINUX || defined AK_SONY || defined AK_XBOX || defined AK_APPLE || defined AK_EMSCRIPTEN
229 #define AK_CRT_ALLOCATOR_SUPPORTED
232 #ifdef AK_CRT_ALLOCATOR_SUPPORTED
290 #endif // AK_CRT_ALLOCATOR_SUPPORTED
292 #if !defined AK_EMSCRIPTEN
293 #define AK_STOMP_ALLOCATOR_SUPPORTED
296 #ifdef AK_STOMP_ALLOCATOR_SUPPORTED
354 #endif // AK_STOMP_ALLOCATOR_SUPPORTED
void(* AkMemDebugMalloc)(AkMemPoolId poolId, size_t uSize, void *pAddress, char const *pszFile, AkUInt32 uLine)
AKSOUNDENGINE_API AKRESULT AkMemDebugToolInit()
AkMemTermForThread pfTermForThread
(Optional) Thread-specific allocator termination hook.
void(* AkMemInitForThread)()
AKSOUNDENGINE_API void AkMemDebugToolMalloc(AkMemPoolId poolId, size_t uSize, void *pAddress, char const *pszFile, AkUInt32 uLine)
AkUInt32 uMaxThreadLocalHeapAllocSize
All memory allocations of sizes larger than this value will go to a global heap shared across all thr...
AkMemInitForThread pfInitForThread
(Optional) Thread-specific allocator initialization hook.
AkMemFree pfFree
(Optional) Memory allocation hook.
AkMemMalign pfMalign
(Optional) Memory allocation hook.
AKSOUNDENGINE_API AKRESULT Init(AkMemSettings *in_pSettings)
AKSOUNDENGINE_API void AkCrtAllocatorInitForThread()
AkSpanCount uVMSpanCount
Virtual memory span count for each map operation in rpmalloc. Defaults to AkSpanCount_Huge....
#define AK_EXTERNAPIFUNC(_type, _name)
AkMemRealloc pfRealloc
(Optional) Memory allocation hook.
AkMemFreeVM pfFreeVM
Virtual page allocation hook.
AKRESULT
Standard function call result.
void *(* AkMemRealloc)(AkMemPoolId poolId, void *pAddress, size_t uSize)
AKSOUNDENGINE_API void AkMemDebugToolFree(AkMemPoolId poolId, void *pAddress)
AkInt32 AkMemPoolId
Memory pool ID.
AkMemDebugRealloc pfDebugRealloc
(Optional) Memory allocation debugging hook. Used for tracking calls to pfRealloc.
void(* AkMemDebugRealloc)(AkMemPoolId poolId, void *pOldAddress, size_t uSize, void *pNewAddress, char const *pszFile, AkUInt32 uLine)
void *(* AkMemAllocVM)(size_t size, size_t *extra)
AkMemDebugReallocAligned pfDebugReallocAligned
(Optional) Memory allocation debugging hook. Used for tracking calls to pfReallocAligned.
void *(* AkMemReallocAligned)(AkMemPoolId poolId, void *pAddress, size_t uSize, AkUInt32 uAlignment)
AKSOUNDENGINE_API void AkMemDebugToolTerm()
AKSOUNDENGINE_API void * AkCrtAllocatorMalign(AkMemPoolId poolId, size_t uSize, AkUInt32 uAlignment)
AkMemTrimForThread pfTrimForThread
(Optional) Thread-specific allocator "trimming" hook. Used to relinquish memory resources when thread...
AKSOUNDENGINE_API void AkMemDebugToolMalign(AkMemPoolId poolId, size_t uSize, AkUInt32 uAlignment, void *pAddress, char const *pszFile, AkUInt32 uLine)
void *(* AkMemMalloc)(AkMemPoolId poolId, size_t uSize)
AKSOUNDENGINE_API void AkCrtAllocatorFree(AkMemPoolId poolId, void *pAddress)
AkMemReallocAligned pfReallocAligned
(Optional) Memory allocation hook.
AkMemFreeVM pfFreeDevice
Device page allocation hook.
size_t(* AkMemTotalReservedMemorySize)()
AkMemAllocVM pfAllocVM
Virtual page allocation hook.
AKSOUNDENGINE_API void * AkCrtAllocatorRealloc(AkMemPoolId poolId, void *pAddress, size_t uSize)
void(* AkMemTermForThread)()
AkUInt64 uMemAllocationSizeLimit
When non-zero, limits the total amount of virtual and device memory allocated by AK::MemoryMgr.
void(* AkMemDebugReallocAligned)(AkMemPoolId poolId, void *pOldAddress, size_t uSize, AkUInt32 uAlignment, void *pNewAddress, char const *pszFile, AkUInt32 uLine)
AKSOUNDENGINE_API size_t AkCrtAllocatorSizeOfMemory(AkMemPoolId poolID, void *pAddress)
void(* AkMemTrimForThread)()
AK::TempAlloc::InitSettings tempAllocSettings[AK::TempAlloc::Type_NUM]
Configuration of behavior for the temporary-memory pools. For more information, see Tuning "Temp Allo...
void(* AkMemFree)(AkMemPoolId poolId, void *pAddress)
AKSOUNDENGINE_API void AkMemDebugToolReallocAligned(AkMemPoolId poolId, void *pOldAddress, size_t uSize, AkUInt32 uAlignment, void *pNewAddress, char const *pszFile, AkUInt32 uLine)
AKSOUNDENGINE_API void GetDefaultSettings(AkMemSettings &out_pMemSettings)
Obtain the default initialization settings for the default implementation of the Memory Manager.
bool bEnableSeparateDeviceHeap
Enable use of device memory heap for all allocations (on applicable platforms).
void *(* AkMemMalign)(AkMemPoolId poolId, size_t uSize, AkUInt32 uAlignment)
AkUInt32 uMemoryDebugLevel
Default 0 disabled. 1 debug enabled. 2 stomp allocator enabled. 3 stomp allocator and debug enabled....
AkSpanCount uDeviceSpanCount
Device memory span count for each map operation in rpmalloc. Defaults to AkSpanCount_Huge....
AKSOUNDENGINE_API void * AkCrtAllocatorMalloc(AkMemPoolId poolId, size_t uSize)
AkUInt32 uDevicePageSize
Device memory page size. Defaults to 0 which means auto-detect.
AkMemTotalReservedMemorySize pfTotalReservedMemorySize
(Optional) Memory allocation statistics hook.
AkMemMalloc pfMalloc
(Optional) Memory allocation hook.
AKSOUNDENGINE_API void AkCrtAllocatorTermForThread()
Initialization settings for temporary-memory pools. Separate settings are specified for each temporar...
uint64_t AkUInt64
Unsigned 64-bit integer.
void(* AkMemFreeVM)(void *address, size_t size, size_t extra, size_t release)
AkMemDebugMalloc pfDebugMalloc
(Optional) Memory allocation debugging hook. Used for tracking calls to pfMalloc.
uint32_t AkUInt32
Unsigned 32-bit integer.
size_t(* AkMemSizeOfMemory)(AkMemPoolId poolId, void *pAddress)
AkUInt32 uVMPageSize
Virtual memory page size. Defaults to 0 which means auto-detect.
void(* AkMemDebugMalign)(AkMemPoolId poolId, size_t uSize, AkUInt32 uAlignment, void *pAddress, char const *pszFile, AkUInt32 uLine)
AKSOUNDENGINE_API size_t AkCrtAllocatorTotalReservedMemorySize()
AKSOUNDENGINE_API void AkCrtAllocatorTrimForThread()
void(* AkMemDebugFree)(AkMemPoolId poolId, void *pAddress)
AkMemDebugFree pfDebugFree
(Optional) Memory allocation debugging hook. Used for tracking calls to pfFree.
AkMemSizeOfMemory pfSizeOfMemory
(Optional) Memory allocation statistics hook.
AkMemDebugMalign pfDebugMalign
(Optional) Memory allocation debugging hook. Used for tracking calls to pfMalign.
AKSOUNDENGINE_API void AkMemDebugToolRealloc(AkMemPoolId poolId, void *pOldAddress, size_t uSize, void *pNewAddress, char const *pszFile, AkUInt32 uLine)
AKSOUNDENGINE_API void * AkCrtAllocatorReallocAligned(AkMemPoolId poolId, void *pAddress, size_t uSize, AkUInt32 uAlignment)
AkMemAllocVM pfAllocDevice
Device page allocation hook.
Tell us about your project. We're here to help.
Register your project and we'll help you get started with no strings attached!
Get started with Wwise