#include <IMemoryProvider.h>
Inherited by DesktopMemoryProvider.
|
| virtual | ~IMemoryProvider ()=default |
| virtual bool | Initialize ()=0 |
| | Initialize the memory backend.
|
| virtual void | Shutdown ()=0 |
| | Shutdown the memory backend.
|
| virtual bool | HasExternalRAM () const =0 |
| | Check if external RAM (PSRAM, SDRAM, etc.) is available.
|
| virtual size_t | GetTotalExternalRAM () const =0 |
| | Get total external RAM size in bytes.
|
| virtual size_t | GetAvailableExternalRAM () const =0 |
| | Get available (free) external RAM size in bytes.
|
| virtual void * | AllocateExternal (size_t size)=0 |
| | Allocate memory from external RAM.
|
| virtual void | FreeExternal (void *ptr)=0 |
| | Free memory allocated from external RAM.
|
| virtual bool | IsExternalPointer (void *ptr) const =0 |
| | Check if a pointer is in external RAM address range.
|
| virtual void * | AllocateInternal (size_t size) |
| | Allocate memory from internal RAM only (never external).
|
| virtual void | FreeInternal (void *ptr) |
| | Frees a block from AllocateInternal.
|
| virtual size_t | GetAvailableInternalRAM () const |
| | Get available internal RAM size in bytes.
|
◆ ~IMemoryProvider()
| virtual IMemoryProvider::~IMemoryProvider |
( |
| ) |
|
|
virtualdefault |
◆ Initialize()
| virtual bool IMemoryProvider::Initialize |
( |
| ) |
|
|
pure virtual |
Initialize the memory backend.
- Returns
- true if initialization succeeded
Implemented in DesktopMemoryProvider.
◆ Shutdown()
| virtual void IMemoryProvider::Shutdown |
( |
| ) |
|
|
pure virtual |
◆ HasExternalRAM()
| virtual bool IMemoryProvider::HasExternalRAM |
( |
| ) |
const |
|
pure virtual |
Check if external RAM (PSRAM, SDRAM, etc.) is available.
- Returns
- true if external RAM is present and usable
Implemented in DesktopMemoryProvider.
◆ GetTotalExternalRAM()
| virtual size_t IMemoryProvider::GetTotalExternalRAM |
( |
| ) |
const |
|
pure virtual |
Get total external RAM size in bytes.
- Returns
- Total external RAM size, 0 if none available
Implemented in DesktopMemoryProvider.
◆ GetAvailableExternalRAM()
| virtual size_t IMemoryProvider::GetAvailableExternalRAM |
( |
| ) |
const |
|
pure virtual |
Get available (free) external RAM size in bytes.
- Returns
- Available external RAM size, 0 if none available
Implemented in DesktopMemoryProvider.
◆ AllocateExternal()
| virtual void * IMemoryProvider::AllocateExternal |
( |
size_t | size | ) |
|
|
pure virtual |
Allocate memory from external RAM.
- Parameters
-
| size | Number of bytes to allocate |
- Returns
- Pointer to allocated memory, nullptr if allocation failed
Implemented in DesktopMemoryProvider.
◆ FreeExternal()
| virtual void IMemoryProvider::FreeExternal |
( |
void * | ptr | ) |
|
|
pure virtual |
Free memory allocated from external RAM.
- Parameters
-
| ptr | Pointer to memory to free (must have been allocated via AllocateExternal) |
Implemented in DesktopMemoryProvider.
◆ IsExternalPointer()
| virtual bool IMemoryProvider::IsExternalPointer |
( |
void * | ptr | ) |
const |
|
pure virtual |
Check if a pointer is in external RAM address range.
- Parameters
-
- Returns
- true if pointer is in external RAM
Implemented in DesktopMemoryProvider.
◆ AllocateInternal()
| virtual void * IMemoryProvider::AllocateInternal |
( |
size_t | size | ) |
|
|
inlinevirtual |
Allocate memory from internal RAM only (never external).
- Parameters
-
| size | Number of bytes to allocate |
- Returns
- Pointer to allocated memory, nullptr if allocation failed
◆ FreeInternal()
| virtual void IMemoryProvider::FreeInternal |
( |
void * | ptr | ) |
|
|
inlinevirtual |
Frees a block from AllocateInternal.
Must match that allocator: the default pair is malloc/free; a backend that overrides one overrides both.
◆ GetAvailableInternalRAM()
| virtual size_t IMemoryProvider::GetAvailableInternalRAM |
( |
| ) |
const |
|
inlinevirtual |
Get available internal RAM size in bytes.
- Returns
- Available internal RAM size, 0 if not supported
The documentation for this class was generated from the following file: