sdlGetOriginalMemoryFunctions function stdinc

void sdlGetOriginalMemoryFunctions(
  1. Pointer<Pointer<NativeFunction<SdlMallocFunc>>> mallocFunc,
  2. Pointer<Pointer<NativeFunction<SdlCallocFunc>>> callocFunc,
  3. Pointer<Pointer<NativeFunction<SdlReallocFunc>>> reallocFunc,
  4. Pointer<Pointer<NativeFunction<SdlFreeFunc>>> freeFunc,
)

Get the original set of SDL memory functions.

This is what SDL_malloc and friends will use by default, if there has been no call to SDL_SetMemoryFunctions. This is not necessarily using the C runtime's malloc functions behind the scenes! Different platforms and build configurations might do any number of unexpected things.

\param malloc_func filled with malloc function. \param calloc_func filled with calloc function. \param realloc_func filled with realloc function. \param free_func filled with free function.

\threadsafety It is safe to call this function from any thread.

\since This function is available since SDL 3.2.0.

extern SDL_DECLSPEC void SDLCALL SDL_GetOriginalMemoryFunctions(SDL_malloc_func *malloc_func, SDL_calloc_func *calloc_func, SDL_realloc_func *realloc_func, SDL_free_func *free_func)

Implementation

void sdlGetOriginalMemoryFunctions(
  Pointer<Pointer<NativeFunction<SdlMallocFunc>>> mallocFunc,
  Pointer<Pointer<NativeFunction<SdlCallocFunc>>> callocFunc,
  Pointer<Pointer<NativeFunction<SdlReallocFunc>>> reallocFunc,
  Pointer<Pointer<NativeFunction<SdlFreeFunc>>> freeFunc,
) {
  final sdlGetOriginalMemoryFunctionsLookupFunction = _libSdl
      .lookupFunction<
        Void Function(
          Pointer<Pointer<NativeFunction<SdlMallocFunc>>> mallocFunc,
          Pointer<Pointer<NativeFunction<SdlCallocFunc>>> callocFunc,
          Pointer<Pointer<NativeFunction<SdlReallocFunc>>> reallocFunc,
          Pointer<Pointer<NativeFunction<SdlFreeFunc>>> freeFunc,
        ),
        void Function(
          Pointer<Pointer<NativeFunction<SdlMallocFunc>>> mallocFunc,
          Pointer<Pointer<NativeFunction<SdlCallocFunc>>> callocFunc,
          Pointer<Pointer<NativeFunction<SdlReallocFunc>>> reallocFunc,
          Pointer<Pointer<NativeFunction<SdlFreeFunc>>> freeFunc,
        )
      >('SDL_GetOriginalMemoryFunctions');
  return sdlGetOriginalMemoryFunctionsLookupFunction(
    mallocFunc,
    callocFunc,
    reallocFunc,
    freeFunc,
  );
}