UDK 3.2.7 C/C++ API Reference
|
#include <sal/types.h>
Go to the source code of this file.
Defines | |
#define | RTL_ARENA_NAME_LENGTH 31 |
#define | RTL_CACHE_NAME_LENGTH 31 |
#define | RTL_CACHE_FLAG_BULKDESTROY 1 |
Typedefs | |
typedef struct rtl_arena_st | rtl_arena_type |
Opaque rtl_arena_type. | |
typedef struct rtl_cache_st | rtl_cache_type |
Opaque rtl_cache_type. | |
Functions | |
SAL_DLLPUBLIC void * | rtl_allocateMemory (sal_Size Bytes) SAL_THROW_EXTERN_C() |
Allocate memory. | |
SAL_DLLPUBLIC void * | rtl_reallocateMemory (void *Ptr, sal_Size Bytes) SAL_THROW_EXTERN_C() |
Reallocate memory. | |
SAL_DLLPUBLIC void | rtl_freeMemory (void *Ptr) SAL_THROW_EXTERN_C() |
Free memory. | |
SAL_DLLPUBLIC void * | rtl_allocateZeroMemory (sal_Size Bytes) SAL_THROW_EXTERN_C() |
Allocate and zero memory. | |
SAL_DLLPUBLIC void | rtl_freeZeroMemory (void *Ptr, sal_Size Bytes) SAL_THROW_EXTERN_C() |
Zero and free memory. | |
SAL_DLLPUBLIC rtl_arena_type * | rtl_arena_create (const char *pName, sal_Size quantum, sal_Size quantum_cache_max, rtl_arena_type *source_arena, void *(*source_alloc)(rtl_arena_type *, sal_Size *), void(*source_free)(rtl_arena_type *, void *, sal_Size), int nFlags) SAL_THROW_EXTERN_C() |
rtl_arena_create() | |
SAL_DLLPUBLIC void | rtl_arena_destroy (rtl_arena_type *pArena) SAL_THROW_EXTERN_C() |
rtl_arena_destroy() | |
SAL_DLLPUBLIC void * | rtl_arena_alloc (rtl_arena_type *pArena, sal_Size *pBytes) SAL_THROW_EXTERN_C() |
rtl_arena_alloc() | |
SAL_DLLPUBLIC void | rtl_arena_free (rtl_arena_type *pArena, void *pAddr, sal_Size nBytes) SAL_THROW_EXTERN_C() |
rtl_arena_free() | |
SAL_DLLPUBLIC rtl_cache_type * | rtl_cache_create (const char *pName, sal_Size nObjSize, sal_Size nObjAlign, int(*constructor)(void *pObj, void *pUserArg), void(*destructor)(void *pObj, void *pUserArg), void(*reclaim)(void *pUserArg), void *pUserArg, rtl_arena_type *pSource, int nFlags) SAL_THROW_EXTERN_C() |
rtl_cache_create() | |
SAL_DLLPUBLIC void | rtl_cache_destroy (rtl_cache_type *pCache) SAL_THROW_EXTERN_C() |
rtl_cache_destroy() | |
SAL_DLLPUBLIC void * | rtl_cache_alloc (rtl_cache_type *pCache) SAL_THROW_EXTERN_C() |
rtl_cache_alloc() | |
SAL_DLLPUBLIC void | rtl_cache_free (rtl_cache_type *pCache, void *pObj) SAL_THROW_EXTERN_C() |
rtl_cache_free() |
#define RTL_ARENA_NAME_LENGTH 31 |
#define RTL_CACHE_FLAG_BULKDESTROY 1 |
#define RTL_CACHE_NAME_LENGTH 31 |
typedef struct rtl_arena_st rtl_arena_type |
Opaque rtl_arena_type.
typedef struct rtl_cache_st rtl_cache_type |
Opaque rtl_cache_type.
SAL_DLLPUBLIC void* rtl_allocateMemory | ( | sal_Size | Bytes | ) |
Allocate memory.
A call to this function will return NULL upon the requested memory size being either zero or larger than currently allocatable.
Bytes | [in] memory size. |
SAL_DLLPUBLIC void* rtl_allocateZeroMemory | ( | sal_Size | Bytes | ) |
Allocate and zero memory.
A call to this function will return NULL upon the requested memory size being either zero or larger than currently allocatable.
Bytes | [in] memory size. |
SAL_DLLPUBLIC void* rtl_arena_alloc | ( | rtl_arena_type * | pArena, |
sal_Size * | pBytes | ||
) |
pArena | [in] arena from which resource is allocated. |
pBytes | [inout] size of resource to allocate. |
SAL_DLLPUBLIC rtl_arena_type* rtl_arena_create | ( | const char * | pName, |
sal_Size | quantum, | ||
sal_Size | quantum_cache_max, | ||
rtl_arena_type * | source_arena, | ||
void *(*)(rtl_arena_type *, sal_Size *) | source_alloc, | ||
void(*)(rtl_arena_type *, void *, sal_Size) | source_free, | ||
int | nFlags | ||
) |
pName | [in] descriptive name; for debugging purposes. |
quantum | [in] resource allocation unit / granularity; rounded up to next power of 2. |
quantum_cache_max | [in] max resources to cache; rounded up to next multiple of quantum; usually 0. |
source_arena | [in] passed as argument to source_alloc, source_free; usually NULL. |
source_alloc | [in] function to allocate resources; usually rtl_arena_alloc. |
source_free | [in] function to free resources; usually rtl_arena_free. |
nFlags | [in] flags; usually 0. |
SAL_DLLPUBLIC void rtl_arena_destroy | ( | rtl_arena_type * | pArena | ) |
SAL_DLLPUBLIC void rtl_arena_free | ( | rtl_arena_type * | pArena, |
void * | pAddr, | ||
sal_Size | nBytes | ||
) |
pArena | [in] arena from which resource was allocated. |
pAddr | [in] resource to free. |
nBytes | [in] size of resource. |
SAL_DLLPUBLIC void* rtl_cache_alloc | ( | rtl_cache_type * | pCache | ) |
pCache | [in] cache from which object is allocated. |
SAL_DLLPUBLIC rtl_cache_type* rtl_cache_create | ( | const char * | pName, |
sal_Size | nObjSize, | ||
sal_Size | nObjAlign, | ||
int(*)(void *pObj, void *pUserArg) | constructor, | ||
void(*)(void *pObj, void *pUserArg) | destructor, | ||
void(*)(void *pUserArg) | reclaim, | ||
void * | pUserArg, | ||
rtl_arena_type * | pSource, | ||
int | nFlags | ||
) |
pName | [in] descriptive name; for debugging purposes. |
nObjSize | [in] object size. |
nObjAlign | [in] object alignment; usually 0 for suitable default. |
constructor | [in] object constructor callback function; returning 1 for success or 0 for failure. |
destructor | [in] object destructor callback function. |
reclaim | [in] reclaim callback function. |
pUserArg | [in] opaque argument passed to callback functions. |
nFlags | [in] flags. |
SAL_DLLPUBLIC void rtl_cache_destroy | ( | rtl_cache_type * | pCache | ) |
SAL_DLLPUBLIC void rtl_cache_free | ( | rtl_cache_type * | pCache, |
void * | pObj | ||
) |
pCache | [in] cache from which object was allocated. |
pObj | [in] object to free. |
SAL_DLLPUBLIC void rtl_freeMemory | ( | void * | Ptr | ) |
Free memory.
Ptr | [in] pointer to previously allocated memory. |
SAL_DLLPUBLIC void rtl_freeZeroMemory | ( | void * | Ptr, |
sal_Size | Bytes | ||
) |
Zero and free memory.
Ptr | [in] pointer to previously allocated memory. |
Bytes | [in] memory size. |
SAL_DLLPUBLIC void* rtl_reallocateMemory | ( | void * | Ptr, |
sal_Size | Bytes | ||
) |
Reallocate memory.
A call to this function with parameter 'Ptr' being NULL is equivalent to a rtl_allocateMemory() call.
A call to this function with parameter 'Bytes' being 0 is equivalent to a rtl_freeMemory() call.
Ptr | [in] pointer to previously allocated memory. |
Bytes | [in] new memory size. |