From ee69e3222f0ba91e3fa2d5d74996028eaf095209 Mon Sep 17 00:00:00 2001 From: "@CarlWachter" Date: Mon, 17 Jun 2024 19:55:38 +0200 Subject: [PATCH] Fix: rebase error --- src/thread.cpp | 45 +++++++++++++-------------------------------- 1 file changed, 13 insertions(+), 32 deletions(-) diff --git a/src/thread.cpp b/src/thread.cpp index 426f9b0..e13863d 100644 --- a/src/thread.cpp +++ b/src/thread.cpp @@ -22,39 +22,20 @@ namespace sta TacosThread::TacosThread(const char* name, osPriority_t prio, uint32_t stack_size /* = 0 */, uint32_t cb_size /* = 0 */) : RtosThread(name, prio, stack_size, cb_size), instance_{ NULL }, - attribs_{ .name = name, .priority = prio }, - running_{false} - {} - - TacosThread::TacosThread() - : RtosThread(RtosHandle(Handle::Deferred(&instance_))), - instance_{ NULL }, - attribs_{ }, - running_{false} - {} - - void TacosThread::entry_point(void* arg) + attribs_{ .name=name, .cb_size=cb_size, .stack_size=stack_size, .priority=prio }, + running_{false}, +#ifdef STA_TACOS_WATCHDOG_ENABLED + status_{ThreadStatus::STOPPED}, +#endif // STA_TACOS_WATCHDOG_ENABLED +#ifdef STA_CAN_BUS_ENABLE + CAN_queue_{STA_RTOS_CAN_BUS_QUEUE_LENGTH}, + canID_{0}, +#endif // STA_CAN_BUS_ENABLE + terminate_{false}, + previous_tick_{0} { - STA_ASSERT(arg != nullptr); - - TacosThread* instance = reinterpret_cast(arg) ; - instance->loop(); - } - - void TacosThread::start() - { - STA_ASSERT(!isRunning()); - - // If this is the first time starting the thread, it has to be started via rtos first. - if (instance_ == NULL) - { - instance_ = osThreadNew(entry_point, this, &attribs_); - - STA_ASSERT(instance_ != NULL); - } - - // Send a thread start signal. - sysNotify(STA_RTOS_THREAD_FLAG_START); + STA_ASSERT(stack_size >= 0); + STA_ASSERT(cb_size >= 0); } bool TacosThread::isRunning()