This category contains memory configurations.
More...
|
typedef struct fplMemoryBlock | fplMemoryBlock |
| Defines a memory block.
|
|
typedef struct fplMemoryInfos | fplMemoryInfos |
| A structure that contains informations about current memory usage.
|
|
This category contains memory configurations.
This category contains functions for allocating/manipulating memory.
◆ fplMemoryAlignedAllocate()
fpl_common_api void * fplMemoryAlignedAllocate |
( |
const size_t |
size, |
|
|
const size_t |
alignment |
|
) |
| |
Allocates aligned memory from the operating system by the given alignment.
- Parameters
-
size | The size amount in bytes |
alignment | The alignment in bytes (Must be a power-of-two!) |
- Returns
- Returns the pointer to the new allocated aligned memory.
- Note
- The memory is guaranteed to be initialized to zero.
-
This function can be called without the platform to be initialized.
- See also
- Allocate custom aligned (n)-bytes of memory
◆ fplMemoryAlignedFree()
Releases the aligned memory allocated from the operating system.
- Parameters
-
ptr | The pointer to the aligned allocated memory |
- Warning
- This should never be called with a not-aligned memory pointer! For freeing not-aligned memory, use fplMemoryFree() instead.
- Note
- This function can be called without the platform to be initialized.
- See also
- Free aligned memory
◆ fplMemoryAllocate()
Allocates memory from the operating system by the given size.
- Parameters
-
size | The size to be allocated in bytes. |
- Returns
- Returns a pointer to the newly allocated memory.
- Warning
- Alignment is not ensured here, the OS decides how to handle this. If you want to force a specific alignment use fplMemoryAlignedAllocate() instead.
- Note
- The memory is guaranteed to be initialized to zero.
-
This function can be called without the platform to be initialized.
- See also
- Allocate (n)-bytes of memory
◆ fplMemoryClear()
Clears the given memory by the given size to zero.
- Parameters
-
mem | The pointer to the memory |
size | The number of bytes to be cleared to zero |
- See also
- Clear (n)-bytes of memory
◆ fplMemoryCopy()
fpl_common_api void fplMemoryCopy |
( |
const void * |
sourceMem, |
|
|
const size_t |
sourceSize, |
|
|
void * |
targetMem |
|
) |
| |
Copies the given source memory with its length to the target memory.
- Parameters
-
sourceMem | The pointer to the source memory to copy from |
sourceSize | The size in bytes to be copied |
targetMem | The pointer to the target memory to copy into |
- See also
- Copy (n)-bytes of memory to another memory location
◆ fplMemoryFree()
Releases the memory allocated from the operating system.
- Parameters
-
ptr | The pointer to the allocated memory |
- Warning
- This should never be called with an aligned memory pointer! For freeing aligned memory, use fplMemoryAlignedFree() instead.
- Note
- This function can be called without the platform to be initialized.
- See also
- Free memory
◆ fplMemoryGetInfos()
Retrieves the current system memory usage.
- Parameters
-
- Returns
- Returns true when the memory infos was retrieved, false otherwise.
- See also
- Query memory state
◆ fplMemorySet()
fpl_common_api void fplMemorySet |
( |
void * |
mem, |
|
|
const uint8_t |
value, |
|
|
const size_t |
size |
|
) |
| |