4#ifndef TETL_FREERTOS_STUBS_HPP
5#define TETL_FREERTOS_STUBS_HPP
7#include <etl/version.hpp>
9#include <etl/cstddef.hpp>
10#include <etl/cstdint.hpp>
11#include <etl/utility.hpp>
14using BaseType_t =
long;
15using UBaseType_t =
unsigned long;
16using configSTACK_DEPTH_TYPE =
etl::uint16_t;
17#define pdFALSE (static_cast<BaseType_t>(0
))
18#define pdTRUE (static_cast<BaseType_t>(1
))
19#define pdPASS (pdTRUE)
20#define pdFAIL (pdFALSE)
21#define errQUEUE_EMPTY (static_cast<BaseType_t>(0
))
22#define errQUEUE_FULL (static_cast<BaseType_t>(0
))
25using TickType_t =
etl::uint32_t;
30#define portYIELD() vPortYield()
31#define taskYIELD() portYIELD()
34struct tskTaskControlBlock;
36using TaskHandle_t = tskTaskControlBlock*;
37using TaskFunction_t =
void (*)(
void*);
40 TaskFunction_t pvTaskCode,
41 char const*
const pcName,
42 configSTACK_DEPTH_TYPE usStackDepth,
43 void*
const pvParameters,
44 UBaseType_t uxPriority,
45 TaskHandle_t*
const pxCreatedTask
59inline auto vTaskDelay(TickType_t
const xTicksToDelay) ->
void
64inline auto vTaskDelayUntil(TickType_t*
const pxPreviousWakeTime, TickType_t
const xTimeIncrement) ->
void
69struct QueueDefinition;
70using QueueHandle_t = QueueDefinition*;
72inline auto xQueueCreate(UBaseType_t uxQueueLength, UBaseType_t uxItemSize) -> QueueHandle_t
83inline auto xQueueSend(QueueHandle_t xQueue,
void const* pvItemToQueue, TickType_t xTicksToWait) -> BaseType_t
89inline auto xQueueReceive(QueueHandle_t xQueue,
void* pvBuffer, TickType_t xTicksToWait) -> BaseType_t
108struct StreamBufferDef_t;
109using StreamBufferHandle_t = StreamBufferDef_t*;
112 -> StreamBufferHandle_t
118[[nodiscard]]
inline auto
126[[nodiscard]]
inline auto
134[[nodiscard]]
inline auto
141[[nodiscard]]
inline auto
190using MessageBufferHandle_t =
void*;
Definition adjacent_find.hpp:9
constexpr auto ignore_unused(Types &&...) -> void
Explicitly ignore arguments or variables.
Definition ignore_unused.hpp:18
auto xStreamBufferSend(StreamBufferHandle_t handle, void const *data, etl::size_t size, TickType_t ticksToWait) -> etl::size_t
Definition stubs.hpp:119
auto xStreamBufferReceive(StreamBufferHandle_t handle, void *data, etl::size_t size, TickType_t ticks) -> etl::size_t
Definition stubs.hpp:135
auto vQueueDelete(QueueHandle_t xQueue) -> void
Definition stubs.hpp:78
auto xStreamBufferSpacesAvailable(StreamBufferHandle_t handle) -> etl::size_t
Definition stubs.hpp:159
auto xStreamBufferIsEmpty(StreamBufferHandle_t handle) -> BaseType_t
Definition stubs.hpp:177
auto xStreamBufferReset(StreamBufferHandle_t handle) -> BaseType_t
Definition stubs.hpp:171
auto vTaskStartScheduler() -> void
Definition stubs.hpp:57
auto xTaskCreate(TaskFunction_t pvTaskCode, char const *const pcName, configSTACK_DEPTH_TYPE usStackDepth, void *const pvParameters, UBaseType_t uxPriority, TaskHandle_t *const pxCreatedTask) -> BaseType_t
Definition stubs.hpp:39
auto vTaskDelete(TaskHandle_t xTask) -> void
Definition stubs.hpp:52
auto xQueueReset(QueueHandle_t xQueue) -> BaseType_t
Definition stubs.hpp:95
auto vPortYield() -> void
Definition stubs.hpp:28
auto xQueueCreate(UBaseType_t uxQueueLength, UBaseType_t uxItemSize) -> QueueHandle_t
Definition stubs.hpp:72
auto xQueueReceive(QueueHandle_t xQueue, void *pvBuffer, TickType_t xTicksToWait) -> BaseType_t
Definition stubs.hpp:89
auto vTaskDelayUntil(TickType_t *const pxPreviousWakeTime, TickType_t const xTimeIncrement) -> void
Definition stubs.hpp:64
auto xStreamBufferIsFull(StreamBufferHandle_t handle) -> BaseType_t
Definition stubs.hpp:183
auto uxQueueMessagesWaiting(QueueHandle_t xQueue) -> UBaseType_t
Definition stubs.hpp:101
auto xStreamBufferCreate(etl::size_t bufferSizeBytes, etl::size_t triggerLevelBytes) -> StreamBufferHandle_t
Definition stubs.hpp:111
auto vTaskDelay(TickType_t const xTicksToDelay) -> void
Definition stubs.hpp:59
auto xStreamBufferBytesAvailable(StreamBufferHandle_t handle) -> etl::size_t
Definition stubs.hpp:153
auto xStreamBufferReceiveFromISR(StreamBufferHandle_t handle, void *data, etl::size_t size, BaseType_t *prio) -> etl::size_t
Definition stubs.hpp:142
auto vStreamBufferDelete(StreamBufferHandle_t handle) -> void
Definition stubs.hpp:148
auto xQueueSend(QueueHandle_t xQueue, void const *pvItemToQueue, TickType_t xTicksToWait) -> BaseType_t
Definition stubs.hpp:83
auto xStreamBufferSendFromISR(StreamBufferHandle_t handle, void const *data, etl::size_t size, BaseType_t *prio) -> etl::size_t
Definition stubs.hpp:127
auto xStreamBufferSetTriggerLevel(StreamBufferHandle_t handle, etl::size_t triggerLevel) -> BaseType_t
Definition stubs.hpp:165
auto xMessageBufferCreate(etl::size_t bufferSizeBytes) -> MessageBufferHandle_t
Definition stubs.hpp:192