Custom Memory Allocation
Type Aliases
|
|
|
Functions
Detailed Description
- group a3d_malloc_functions
Specifies custom memory-allocation functions.
This section describes the function and types that enable you to specify custom memory-allocation functions that the library uses in place of the standard
malloc
andfree
functions.
Type Alias Documentation
Function Documentation
-
A3DStatus A3DDllSetCallbacksMemory(A3DCallbackMemoryAlloc, A3DCallbackMemoryFree)
Specifies custom memory-allocation functions This function specifies callback functions the library uses for memory allocation and and deallocation.
If this function is not called, the standard
malloc
andfree
functions are used for memory allocation and deallocation.- Version
2.0
Sample code
A3DPtr my_alloc(A3DUns32 uiSize) { return malloc(uiSize); } A3Dvoid my_free(A3DPtr ptr) { if (ptr) free(ptr); } A3DInt32 iErr = A3D_SUCCESS; A3DInt32 iMajorVersion,iMinorVersion = 0; iErr = A3DDllGetVersion( &iMajorVersion, &iMinorVersion ); iErr = A3DDllInitialize( A3D_DLL_MAJORVERSION, A3D_DLL_MAJORVERSION ); if ( iErr == A3D_SUCCESS ) { iErr = A3DDllSetCallbacksMemory( my_alloc , my_free ); iErr = A3DDllTerminate(); }
- Return values:
A3D_INITIALIZE_NOT_CALLED –
A3D_CALLBACK_MEMORY_FUNCTIONS_ALREADY_SET –
A3D_SUCCESS –
- Returns:
A3D_SUCCESS
on success, or an error code on failure