oveRTOS C API
Embedded RTOS framework — build system, configuration, and portable C API
Loading...
Searching...
No Matches
Macros
Heap Gates

Preprocessor flags indicating which heap-backed _create()/_destroy() functions are compiled. More...

Collaboration diagram for Heap Gates:

Macros

#define OVE_HEAP_SYNC   1
 
#define OVE_HEAP_THREAD   1
 
#define OVE_HEAP_QUEUE   1
 
#define OVE_HEAP_TIMER   1
 
#define OVE_HEAP_EVENTGROUP   1
 
#define OVE_HEAP_WORKQUEUE   1
 
#define OVE_HEAP_STREAM   1
 
#define OVE_HEAP_WATCHDOG   1
 
#define OVE_HEAP_FS   1
 
#define OVE_HEAP_INFER   1
 
#define OVE_HEAP_NET   1
 
#define OVE_HEAP_NET_TLS   1
 
#define OVE_HEAP_NET_HTTP   1
 
#define OVE_HEAP_NET_MQTT   1
 
#define OVE_HEAP_UART   1
 
#define OVE_HEAP_SPI   1
 
#define OVE_HEAP_I2C   1
 
#define OVE_HEAP_I2S   1
 

Detailed Description

Preprocessor flags indicating which heap-backed _create()/_destroy() functions are compiled.

When CONFIG_OVE_ZERO_HEAP is not defined these macros are set to 1, enabling the corresponding heap-backed _create()/_destroy() function definitions. When zero-heap is active none of these macros are defined; instead, each module header provides macros with the same _create()/_destroy() names that auto-generate per-call-site static storage, so application code can use the unified API in either mode.

Macro Definition Documentation

◆ OVE_HEAP_SYNC

#define OVE_HEAP_SYNC   1

Synchronisation primitives support heap allocation.

◆ OVE_HEAP_THREAD

#define OVE_HEAP_THREAD   1

Threads support heap allocation.

◆ OVE_HEAP_QUEUE

#define OVE_HEAP_QUEUE   1

Queues support heap allocation.

◆ OVE_HEAP_TIMER

#define OVE_HEAP_TIMER   1

Timers support heap allocation.

◆ OVE_HEAP_EVENTGROUP

#define OVE_HEAP_EVENTGROUP   1

Event groups support heap allocation.

◆ OVE_HEAP_WORKQUEUE

#define OVE_HEAP_WORKQUEUE   1

Work queues support heap allocation.

◆ OVE_HEAP_STREAM

#define OVE_HEAP_STREAM   1

Stream buffers support heap allocation.

◆ OVE_HEAP_WATCHDOG

#define OVE_HEAP_WATCHDOG   1

Watchdog timers support heap allocation.

◆ OVE_HEAP_FS

#define OVE_HEAP_FS   1

Filesystem handles support heap allocation.

◆ OVE_HEAP_INFER

#define OVE_HEAP_INFER   1

ML inference sessions support heap allocation.

◆ OVE_HEAP_NET

#define OVE_HEAP_NET   1

Sockets and network interfaces support heap allocation.

◆ OVE_HEAP_NET_TLS

#define OVE_HEAP_NET_TLS   1

TLS sessions support heap allocation.

◆ OVE_HEAP_NET_HTTP

#define OVE_HEAP_NET_HTTP   1

HTTP clients support heap allocation.

◆ OVE_HEAP_NET_MQTT

#define OVE_HEAP_NET_MQTT   1

MQTT clients support heap allocation.

◆ OVE_HEAP_UART

#define OVE_HEAP_UART   1

UART peripherals support heap allocation.

◆ OVE_HEAP_SPI

#define OVE_HEAP_SPI   1

SPI bus controllers support heap allocation.

◆ OVE_HEAP_I2C

#define OVE_HEAP_I2C   1

I2C bus controllers support heap allocation.

◆ OVE_HEAP_I2S

#define OVE_HEAP_I2S   1

I2S audio bus controllers support heap allocation.