Recast Navigation  1.0.35
RecastAlloc.h File Reference

Go to the source code of this file.

Classes

class  rcIntArray
 A simple dynamic array of integers. More...
 
class  rcScopedDelete< T >
 A simple helper class used to delete an array when it goes out of scope. More...
 

Typedefs

typedef void *( rcAllocFunc) (size_t size, rcAllocHint hint)
 A memory allocation function. More...
 
typedef void( rcFreeFunc) (void *ptr)
 A memory deallocation function. More...
 

Enumerations

enum  rcAllocHint { RC_ALLOC_PERM, RC_ALLOC_TEMP }
 Provides hint values to the memory allocator on how long the memory is expected to be used. More...
 

Functions

void rcAllocSetCustom (rcAllocFunc *allocFunc, rcFreeFunc *freeFunc)
 Sets the base custom allocation functions to be used by Recast. More...
 
void * rcAlloc (size_t size, rcAllocHint hint)
 Allocates a memory block. More...
 
void rcFree (void *ptr)
 Deallocates a memory block. More...
 

Typedef Documentation

typedef void*( rcAllocFunc) (size_t size, rcAllocHint hint)

A memory allocation function.

See also
rcAllocSetCustom
typedef void( rcFreeFunc) (void *ptr)

A memory deallocation function.

Parameters
[in]ptrA pointer to a memory block previously allocated using rcAllocFunc.
See also
rcAllocSetCustom

Enumeration Type Documentation

Provides hint values to the memory allocator on how long the memory is expected to be used.

Enumerator
RC_ALLOC_PERM 

Memory will persist after a function call.

RC_ALLOC_TEMP 

Memory used temporarily within a function.

Function Documentation

void* rcAlloc ( size_t  size,
rcAllocHint  hint 
)

Allocates a memory block.

Parameters
[in]sizeThe size, in bytes of memory, to allocate.
[in]hintA hint to the allocator on how long the memory is expected to be in use.
Returns
A pointer to the beginning of the allocated memory block, or null if the allocation failed.
See also
rcFree
rcAllocSetCustom
void rcAllocSetCustom ( rcAllocFunc allocFunc,
rcFreeFunc freeFunc 
)

Sets the base custom allocation functions to be used by Recast.

Parameters
[in]allocFuncThe memory allocation function to be used by rcAlloc
[in]freeFuncThe memory de-allocation function to be used by rcFree
See also
rcAlloc, rcFree
void rcFree ( void *  ptr)

Deallocates a memory block.

Parameters
[in]ptrA pointer to a memory block previously allocated using rcAlloc.
See also
rcAlloc
Warning
This function leaves the value of ptr unchanged. So it still points to the same (now invalid) location, and not to null.
See also
rcAllocSetCustom