30#ifndef __VSF_FREERTOS_TASK_H__
31#define __VSF_FREERTOS_TASK_H__
35#if defined(__VSF_FREERTOS_TASK_CLASS_IMPLEMENT)
36# undef __VSF_FREERTOS_TASK_CLASS_IMPLEMENT
37# define __VSF_CLASS_IMPLEMENT__
54#if VSF_KERNEL_CFG_EDA_SUPPORT_SUB_CALL == ENABLED
55# define __VSF_FREERTOS_TASK_THREAD_CB_FIELD vsf_thread_cb_t thread_cb;
57# define __VSF_FREERTOS_TASK_THREAD_CB_FIELD
59#if VSF_FREERTOS_CFG_USE_NOTIFY == ENABLED
60# define __VSF_FREERTOS_TASK_NOTIFY_FIELDS \
61 vsf_sem_t notify_sem; \
62 uint32_t notify_value; \
65# define __VSF_FREERTOS_TASK_NOTIFY_FIELDS
77 void (*entry)(
void *);
107#define taskYIELD() vTaskYield()
116 const char *
const pcName,
118 void *
const pvParameters,
139 const char *
const pcName,
141 void *
const pvParameters,
long BaseType_t
Definition esp_ringbuf.h:50
#define vsf_dcl_class
Definition ooc_class.h:50
#define vsf_class(__name)
Definition ooc_class.h:52
uint8_t StackType_t
Definition portmacro.h:53
uint32_t TickType_t
Definition rtos_al.h:59
uint32_t UBaseType_t
Definition rtos_al.h:60
unsigned uint32_t
Definition stdint.h:9
void vTaskSuspendAll(void)
Definition freertos_critical_port.c:158
void vTaskNotifyGiveFromISR(TaskHandle_t xTaskToNotify, BaseType_t *pxHigherPriorityTaskWoken)
Definition freertos_notify_port.c:180
BaseType_t xTaskCreate(TaskFunction_t pxTaskCode, const char *const pcName, const uint32_t usStackDepth, void *const pvParameters, UBaseType_t uxPriority, TaskHandle_t *const pxCreatedTask)
Definition freertos_task_port.c:176
uint32_t ulTaskNotifyTake(BaseType_t xClearCountOnExit, TickType_t xTicksToWait)
Definition freertos_notify_port.c:187
UBaseType_t vTaskEnterCriticalFromISR(void)
Definition freertos_critical_port.c:134
TaskHandle_t xTaskGetCurrentTaskHandle(void)
Definition freertos_task_port.c:292
BaseType_t xTaskNotifyFromISR(TaskHandle_t xTaskToNotify, uint32_t ulValue, eNotifyAction eAction, BaseType_t *pxHigherPriorityTaskWoken)
Definition freertos_notify_port.c:147
TickType_t xTaskGetTickCount(void)
Definition freertos_task_port.c:113
BaseType_t xTaskNotifyWait(uint32_t ulBitsToClearOnEntry, uint32_t ulBitsToClearOnExit, uint32_t *pulNotificationValue, TickType_t xTicksToWait)
Definition freertos_notify_port.c:236
BaseType_t xTaskNotifyGive(TaskHandle_t xTaskToNotify)
Definition freertos_notify_port.c:175
void vTaskDelay(const TickType_t xTicksToDelay)
Definition freertos_task_port.c:91
void(* TaskFunction_t)(void *)
Definition task.h:49
void vTaskExitCritical(void)
Definition freertos_critical_port.c:95
void vTaskDelayUntil(TickType_t *const pxPreviousWakeTime, const TickType_t xTimeIncrement)
Definition freertos_task_port.c:97
void vTaskYield(void)
Definition freertos_task_port.c:123
TickType_t xTaskGetTickCountFromISR(void)
Definition freertos_task_port.c:118
BaseType_t xTaskResumeAll(void)
Definition freertos_critical_port.c:167
eNotifyAction
Definition task.h:181
@ eIncrement
Definition task.h:184
@ eSetValueWithOverwrite
Definition task.h:185
@ eSetBits
Definition task.h:183
@ eNoAction
Definition task.h:182
@ eSetValueWithoutOverwrite
Definition task.h:186
#define __VSF_FREERTOS_TASK_NOTIFY_FIELDS
Definition task.h:60
TaskHandle_t xTaskCreateStatic(TaskFunction_t pxTaskCode, const char *const pcName, const uint32_t ulStackDepth, void *const pvParameters, UBaseType_t uxPriority, StackType_t *const puxStackBuffer, StaticTask_t *const pxTaskBuffer)
Definition freertos_task_port.c:225
void vTaskExitCriticalFromISR(UBaseType_t uxSavedInterruptState)
Definition freertos_critical_port.c:139
void vTaskEnterCritical(void)
Definition freertos_critical_port.c:84
BaseType_t xTaskNotify(TaskHandle_t xTaskToNotify, uint32_t ulValue, eNotifyAction eAction)
Definition freertos_notify_port.c:127
void vTaskDelete(TaskHandle_t xTaskToDelete)
Definition freertos_task_port.c:280
#define __VSF_FREERTOS_TASK_THREAD_CB_FIELD
Definition task.h:55