Memory
Basic memory allocation/loading functions. More...
Macros |
|
#define | gos_malloc (name, ptr, size) gos_core_malloc(ptr, size) |
Allocate memory on the heap.
More...
|
|
#define | gos_malloc_named (name, size) gos_core_malloc_named(size) |
Allocate memory on the heap.
More...
|
|
Functions |
|
gos_result_t | gos_free (void *ptr) |
Free memory allocated by
gos_malloc()
or
gos_malloc_named()
More...
|
|
void | gos_free_linked_list (void *list) |
Free the entries allocated in a linked list.
More...
|
|
Detailed Description
Basic memory allocation/loading functions.
Macro Definition Documentation
◆ gos_malloc
#define gos_malloc | ( |
name,
|
|
ptr,
|
|||
size
|
|||
) | gos_core_malloc(ptr, size) |
Allocate memory on the heap.
If the memory is allocated, it is set to zero first. If this call fails, ptr will contain a NULL pointer. Use gos_free() to release the memory allocated by this function.
- Note
- Use the gos_malloc() macro which enables malloc debugging.
- Parameters
-
[in] name
The name of the allocated data, this is only used when using malloc debugging [out] ptr
Pointer to hold address of allocated data [in] size
Size of memory in bytes to allocated
- Returns
- gos_result_t result of api call
◆ gos_malloc_named
#define gos_malloc_named | ( |
name,
|
|
size
|
|||
) | gos_core_malloc_named(size) |
Allocate memory on the heap.
This has the exact same functionality as gos_malloc() except it directly returns the allocated function pointer. If this call fails, the return value is NULL. Use gos_free() to release the memory allocated by this function.
- Note
- This API enables malloc debugging.
- Parameters
-
[in] name
The name of the allocated data, this is only used when using malloc debugging [in] size
Size of memory in bytes to allocated
- Returns
- Pointer to allocated memory, NULL on failure
Function Documentation
◆ gos_free()
gos_result_t gos_free | ( | void * |
ptr
|
) |
Free memory allocated by gos_malloc() or gos_malloc_named()
- Parameters
-
[in] ptr
Address returned by gos_malloc() or gos_malloc_named()
- Returns
- gos_result_t result of api call
◆ gos_free_linked_list()
void gos_free_linked_list | ( | void * |
list
|
) |
Free the entries allocated in a linked list.
The entries of the linked list should be of the form:
i.e. The first element of each entry should point to the next entry in the list. The 'next' element of the last entry should be NULL.
- Parameters
-
[in] list
Linked list to de-allocate