From 15c03863c008fb6d8b455bed15985ed725df3bc9 Mon Sep 17 00:00:00 2001 From: "Robin.Mueller" Date: Fri, 1 May 2020 14:49:52 +0200 Subject: [PATCH] additional docmentation for freeRTOS task factory --- osal/FreeRTOS/TaskFactory.cpp | 8 +++---- osal/FreeRTOS/TaskManagement.cpp | 6 ----- osal/FreeRTOS/TaskManagement.h | 7 +----- tasks/TaskFactory.h | 39 +++++++++++++++++++------------- 4 files changed, 27 insertions(+), 33 deletions(-) diff --git a/osal/FreeRTOS/TaskFactory.cpp b/osal/FreeRTOS/TaskFactory.cpp index 753da60f..6b18d7a8 100644 --- a/osal/FreeRTOS/TaskFactory.cpp +++ b/osal/FreeRTOS/TaskFactory.cpp @@ -13,10 +13,7 @@ TaskFactory::~TaskFactory() { TaskFactory* TaskFactory::instance() { return TaskFactory::factoryInstance; } -/*** - * Keep in Mind that you need to call before this vTaskStartScheduler()! - * High taskPriority_ number means high priority. - */ + PeriodicTaskIF* TaskFactory::createPeriodicTask(TaskName name_, TaskPriority taskPriority_, TaskStackSize stackSize_, TaskPeriod period_, @@ -24,7 +21,8 @@ PeriodicTaskIF* TaskFactory::createPeriodicTask(TaskName name_, return (PeriodicTaskIF*) (new PeriodicTask(name_, taskPriority_, stackSize_, period_, deadLineMissedFunction_)); } -/*** + +/** * Keep in Mind that you need to call before this vTaskStartScheduler()! */ FixedTimeslotTaskIF* TaskFactory::createFixedTimeslotTask(TaskName name_, diff --git a/osal/FreeRTOS/TaskManagement.cpp b/osal/FreeRTOS/TaskManagement.cpp index d7ddaf38..3e22021a 100644 --- a/osal/FreeRTOS/TaskManagement.cpp +++ b/osal/FreeRTOS/TaskManagement.cpp @@ -1,9 +1,3 @@ -/** - * @file TaskManagement.cpp - * - * @date 26.02.2020 - * - */ #include extern "C" { diff --git a/osal/FreeRTOS/TaskManagement.h b/osal/FreeRTOS/TaskManagement.h index c122e0fb..4c148ca5 100644 --- a/osal/FreeRTOS/TaskManagement.h +++ b/osal/FreeRTOS/TaskManagement.h @@ -1,12 +1,7 @@ -/** - * @file TaskManagement.h - * - * @date 26.02.2020 - */ - #ifndef FRAMEWORK_OSAL_FREERTOS_TASKMANAGEMENT_H_ #define FRAMEWORK_OSAL_FREERTOS_TASKMANAGEMENT_H_ +// maybe this can be part of the TaskFactory.cpp /** * Architecture dependant portmacro.h function call. * Should be implemented in bsp. diff --git a/tasks/TaskFactory.h b/tasks/TaskFactory.h index 8a59adf1..6716f7ff 100644 --- a/tasks/TaskFactory.h +++ b/tasks/TaskFactory.h @@ -1,7 +1,7 @@ #ifndef FRAMEWORK_TASKS_TASKFACTORY_H_ #define FRAMEWORK_TASKS_TASKFACTORY_H_ -#include +#include #include #include @@ -19,13 +19,16 @@ public: static TaskFactory* instance(); /** - * Creates a new periodic task and returns the interface pointer. - * @param name_ Name of the task - * @param taskPriority_ Priority of the task - * @param stackSize_ Stack Size of the task - * @param period_ Period of the task - * @param deadLineMissedFunction_ Function to be called if a deadline was missed - * @return PeriodicTaskIF* Pointer to the newly created Task + * Keep in Mind that you need to call before this vTaskStartScheduler()! + * A lot of task parameters are set in "FreeRTOSConfig.h". + * @param name_ Name of the task, lenght limited by configMAX_TASK_NAME_LEN + * @param taskPriority_ Number of priorities specified by + * configMAX_PRIORITIES. High taskPriority_ number means high priority. + * @param stackSize_ Stack size in words (not bytes!). + * Lower limit specified by configMINIMAL_STACK_SIZE + * @param period_ Period in seconds. + * @param deadLineMissedFunction_ Callback if a deadline was missed. + * @return Pointer to the newly created task. */ PeriodicTaskIF* createPeriodicTask(TaskName name_, TaskPriority taskPriority_, TaskStackSize stackSize_, @@ -33,13 +36,16 @@ public: TaskDeadlineMissedFunction deadLineMissedFunction_); /** - * - * @param name_ Name of the task - * @param taskPriority_ Priority of the task - * @param stackSize_ Stack Size of the task - * @param period_ Period of the task - * @param deadLineMissedFunction_ Function to be called if a deadline was missed - * @return FixedTimeslotTaskIF* Pointer to the newly created Task + * Keep in Mind that you need to call before this vTaskStartScheduler()! + * A lot of task parameters are set in "FreeRTOSConfig.h". + * @param name_ Name of the task, lenght limited by configMAX_TASK_NAME_LEN + * @param taskPriority_ Number of priorities specified by + * configMAX_PRIORITIES. High taskPriority_ number means high priority. + * @param stackSize_ Stack size in words (not bytes!). + * Lower limit specified by configMINIMAL_STACK_SIZE + * @param period_ Period in seconds. + * @param deadLineMissedFunction_ Callback if a deadline was missed. + * @return Pointer to the newly created task. */ FixedTimeslotTaskIF* createFixedTimeslotTask(TaskName name_, TaskPriority taskPriority_, TaskStackSize stackSize_, @@ -48,7 +54,8 @@ public: /** * Function to be called to delete a task - * @param task The pointer to the task that shall be deleted, NULL specifies current Task + * @param task The pointer to the task that shall be deleted, + * NULL specifies current Task * @return Success of deletion */ static ReturnValue_t deleteTask(PeriodicTaskIF* task = NULL);