34 lines
720 B
C++
34 lines
720 B
C++
|
|
/*
|
|||
|
|
* StaticTask.hpp
|
|||
|
|
*
|
|||
|
|
* Created on: 30 <EFBFBD><EFBFBD><EFBFBD> 2023 <EFBFBD>.
|
|||
|
|
* Author: malyarenko
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
#ifndef PLATFORM_RTOS_TASKSTATIC_HPP_
|
|||
|
|
#define PLATFORM_RTOS_TASKSTATIC_HPP_
|
|||
|
|
|
|||
|
|
#include <FreeRTOS.h>
|
|||
|
|
#include <task.h>
|
|||
|
|
|
|||
|
|
#include "Task.hpp"
|
|||
|
|
|
|||
|
|
namespace platform {
|
|||
|
|
namespace rtos {
|
|||
|
|
|
|||
|
|
template< UBaseType_t StackDepth >
|
|||
|
|
struct TaskStatic : public Task {
|
|||
|
|
/** Буфер дескриптора */
|
|||
|
|
StaticTask_t desc;
|
|||
|
|
/** Буфер стека задачи */
|
|||
|
|
StackType_t stack[StackDepth];
|
|||
|
|
|
|||
|
|
TaskStatic(const char* name, UBaseType_t prio, TaskFunction_t func)
|
|||
|
|
: Task(name, prio, StackDepth, func) { };
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
} /* namespace rtos */
|
|||
|
|
} /* namespace platform */
|
|||
|
|
|
|||
|
|
#endif /* PLATFORM_RTOS_TASKSTATIC_HPP_ */
|