.TH "PHYSFS_Allocator" 3 "Fri Oct 7 2022" "Version 3.2.0" "physfs" \" -*- nroff -*- .ad l .nh .SH NAME PHYSFS_Allocator \- PhysicsFS allocation function pointers\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .SS "Data Fields" .in +1c .ti -1c .RI "int(* \fBInit\fP )(void)" .br .ti -1c .RI "void(* \fBDeinit\fP )(void)" .br .ti -1c .RI "void *(* \fBMalloc\fP )(\fBPHYSFS_uint64\fP)" .br .ti -1c .RI "void *(* \fBRealloc\fP )(void *, \fBPHYSFS_uint64\fP)" .br .ti -1c .RI "void(* \fBFree\fP )(void *)" .br .in -1c .SH "Detailed Description" .PP PhysicsFS allocation function pointers\&. (This is for limited, hardcore use\&. If you don't immediately see a need for it, you can probably ignore this forever\&.) .PP You create one of these structures for use with PHYSFS_setAllocator\&. Allocators are assumed to be reentrant by the caller; please mutex accordingly\&. .PP Allocations are always discussed in 64-bits, for future expansion\&.\&.\&.we're on the cusp of a 64-bit transition, and we'll probably be allocating 6 gigabytes like it's nothing sooner or later, and I don't want to change this again at that point\&. If you're on a 32-bit platform and have to downcast, it's okay to return NULL if the allocation is greater than 4 gigabytes, since you'd have to do so anyhow\&. .PP \fBSee also\fP .RS 4 \fBPHYSFS_setAllocator\fP .RE .PP .SH "Field Documentation" .PP .SS "void(* PHYSFS_Allocator::Deinit) (void)" Deinitialize your allocator\&. Can be NULL\&. .SS "void(* PHYSFS_Allocator::Free) (void *)" Free memory from Malloc or Realloc\&. .SS "int(* PHYSFS_Allocator::Init) (void)" Initialize\&. Can be NULL\&. Zero on failure\&. .SS "void *(* PHYSFS_Allocator::Malloc) (\fBPHYSFS_uint64\fP)" Allocate like malloc()\&. .SS "void *(* PHYSFS_Allocator::Realloc) (void *, \fBPHYSFS_uint64\fP)" Reallocate like realloc()\&. .SH "Author" .PP Generated automatically by Doxygen for physfs from the source code\&.