|
physfs 3.2.0
|
PhysicsFS allocation function pointers. More...
#include <physfs.h>
Data Fields | |
| int(*) | Init (void) |
| void(*) | Deinit (void) |
| void *(*) | Malloc (PHYSFS_uint64) |
| void *(*) | Realloc (void *, PHYSFS_uint64) |
| void(*) | Free (void *) |
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.)
You create one of these structures for use with PHYSFS_setAllocator. Allocators are assumed to be reentrant by the caller; please mutex accordingly.
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.
| void(*) PHYSFS_Allocator::Deinit(void) |
Deinitialize your allocator. Can be NULL.
| void(*) PHYSFS_Allocator::Free(void *) |
Free memory from Malloc or Realloc.
| int(*) PHYSFS_Allocator::Init(void) |
Initialize. Can be NULL. Zero on failure.
| void *(*) PHYSFS_Allocator::Malloc(PHYSFS_uint64) |
Allocate like malloc().
| void *(*) PHYSFS_Allocator::Realloc(void *, PHYSFS_uint64) |
Reallocate like realloc().