From 84667cc7721ead15c795a16c3f2fbebcbda4592c Mon Sep 17 00:00:00 2001 From: Federico Lolli <federico.lolli@skywarder.eu> Date: Sun, 12 May 2024 21:14:42 +0200 Subject: [PATCH] [ARP] Fixed Leds naming convention --- .../Groundstation/Automated/Leds/Leds.cpp | 87 +++++++++---------- .../Groundstation/Automated/Leds/Leds.h | 20 ++--- .../Automated/SMController/SMController.cpp | 22 ++--- .../Automated/automated-antennas-entry.cpp | 4 +- 4 files changed, 66 insertions(+), 67 deletions(-) diff --git a/src/boards/Groundstation/Automated/Leds/Leds.cpp b/src/boards/Groundstation/Automated/Leds/Leds.cpp index 80d82cd63..bd0794da4 100644 --- a/src/boards/Groundstation/Automated/Leds/Leds.cpp +++ b/src/boards/Groundstation/Automated/Leds/Leds.cpp @@ -25,7 +25,6 @@ #include <mutex> using namespace std; -using namespace miosix; using namespace Boardcore; namespace Antennas @@ -47,72 +46,72 @@ bool Leds::start() bool ok = true; // turn off all leds - ledOff(); + miosix::ledOff(); // start the blinking thread for red led result = scheduler->addTask( - std::bind(&Leds::led_thread, this, LedColor::RED, 100), 0, + std::bind(&Leds::ledThread, this, LedColor::RED, 100), 0, TaskScheduler::Policy::ONE_SHOT); ok &= result != 0; // start the blinking thread for yellow led result = scheduler->addTask( - std::bind(&Leds::led_thread, this, LedColor::YELLOW, 50), 0, + std::bind(&Leds::ledThread, this, LedColor::YELLOW, 50), 0, TaskScheduler::Policy::ONE_SHOT); ok &= result != 0; // start the blinking thread for orange led result = scheduler->addTask( - std::bind(&Leds::led_thread, this, LedColor::ORANGE, 50), 0, + std::bind(&Leds::ledThread, this, LedColor::ORANGE, 50), 0, TaskScheduler::Policy::ONE_SHOT); ok &= result != 0; // start the blinking thread for green led result = scheduler->addTask( - std::bind(&Leds::led_thread, this, LedColor::GREEN, 50), 0, + std::bind(&Leds::ledThread, this, LedColor::GREEN, 50), 0, TaskScheduler::Policy::ONE_SHOT); ok &= result != 0; return ok; } -void Leds::led_on(LedColor color) +void Leds::ledOn(LedColor color) { #ifdef _BOARD_STM32F767ZI_AUTOMATED_ANTENNAS switch (color) { case LedColor::RED: - userLed4::high(); + miosix::userLed4::high(); break; case LedColor::YELLOW: - led2On(); + miosix::led2On(); break; case LedColor::ORANGE: - led3On(); + miosix::led3On(); break; case LedColor::GREEN: - led1On(); + miosix::led1On(); break; } #endif } -void Leds::led_off(LedColor color) +void Leds::ledOff(LedColor color) { #ifdef _BOARD_STM32F767ZI_AUTOMATED_ANTENNAS switch (color) { case LedColor::RED: - userLed4::low(); + miosix::userLed4::low(); break; case LedColor::YELLOW: - led2Off(); + miosix::led2Off(); break; case LedColor::ORANGE: - led3Off(); + miosix::led3Off(); break; case LedColor::GREEN: - led1Off(); + miosix::led1Off(); break; } #endif @@ -123,64 +122,64 @@ void Leds::led_off(LedColor color) * @param color led color to actuate * @param blinking_interval blinking time interval [ms] */ -void Leds::led_thread(LedColor color, uint32_t blinking_interval) +void Leds::ledThread(LedColor color, uint32_t blinking_interval) { while (true) { - unique_lock<mutex> lock(*mutex_ref(color)); - cv_ref(color)->wait(lock); - switch (*led_ref(color)) + unique_lock<mutex> lock(*mutexRef(color)); + cvRef(color)->wait(lock); + switch (*ledRef(color)) { case LedState::BLINKING: { do { - led_on(color); - Thread::sleep(blinking_interval); - led_off(color); - Thread::sleep(blinking_interval); - } while (*led_ref(color) == LedState::BLINKING); + ledOn(color); + miosix::Thread::sleep(blinking_interval); + ledOff(color); + miosix::Thread::sleep(blinking_interval); + } while (*ledRef(color) == LedState::BLINKING); break; } case LedState::ON: { - led_on(color); + ledOn(color); } case LedState::OFF: { - led_off(color); + ledOff(color); } } } } -void Leds::set_blinking(LedColor color) +void Leds::setBlinking(LedColor color) { - lock_guard<mutex> lock(*mutex_ref(color)); - *led_ref(color) = LedState::BLINKING; - cv_ref(color)->notify_one(); + lock_guard<mutex> lock(*mutexRef(color)); + *ledRef(color) = LedState::BLINKING; + cvRef(color)->notify_one(); } -void Leds::set_on(LedColor color) +void Leds::setOn(LedColor color) { - lock_guard<mutex> lock(*mutex_ref(color)); - *led_ref(color) = LedState::ON; - cv_ref(color)->notify_one(); + lock_guard<mutex> lock(*mutexRef(color)); + *ledRef(color) = LedState::ON; + cvRef(color)->notify_one(); } -void Leds::set_off(LedColor color) +void Leds::setOff(LedColor color) { - lock_guard<mutex> lock(*mutex_ref(color)); - *led_ref(color) = LedState::OFF; - cv_ref(color)->notify_one(); + lock_guard<mutex> lock(*mutexRef(color)); + *ledRef(color) = LedState::OFF; + cvRef(color)->notify_one(); } -void Leds::endless_blink(LedColor color) +void Leds::endlessBlink(LedColor color) { - lock_guard<mutex> lock(*mutex_ref(color)); - *led_ref(color) = LedState::BLINKING; - cv_ref(color)->notify_one(); - Thread::wait(); // wait forever + lock_guard<mutex> lock(*mutexRef(color)); + *ledRef(color) = LedState::BLINKING; + cvRef(color)->notify_one(); + miosix::Thread::wait(); // wait forever } } // namespace Antennas diff --git a/src/boards/Groundstation/Automated/Leds/Leds.h b/src/boards/Groundstation/Automated/Leds/Leds.h index a2e1da63f..5ae10c5c4 100644 --- a/src/boards/Groundstation/Automated/Leds/Leds.h +++ b/src/boards/Groundstation/Automated/Leds/Leds.h @@ -58,22 +58,22 @@ public: /** * @brief non-blocking action to set a led to blink in a loop */ - void set_blinking(LedColor color); + void setBlinking(LedColor color); /** * @brief blocking action to set on a led */ - void set_on(LedColor color); + void setOn(LedColor color); /** * @brief blocking action to set off a led */ - void set_off(LedColor color); + void setOff(LedColor color); /** * @brief blocking action to blink endlessly a led */ - void endless_blink(LedColor color); + void endlessBlink(LedColor color); protected: enum class LedState : uint8_t @@ -83,21 +83,21 @@ protected: BLINKING }; - void led_on(LedColor color); - void led_off(LedColor color); - void led_thread(LedColor color, uint32_t ms_interval); + void ledOn(LedColor color); + void ledOff(LedColor color); + void ledThread(LedColor color, uint32_t ms_interval); - LedState* led_ref(LedColor color) + LedState* ledRef(LedColor color) { return &led_states[static_cast<uint8_t>(color)]; } - std::mutex* mutex_ref(LedColor color) + std::mutex* mutexRef(LedColor color) { return led_mutexes[static_cast<uint8_t>(color)].get(); } - std::condition_variable* cv_ref(LedColor color) + std::condition_variable* cvRef(LedColor color) { return led_cvs[static_cast<uint8_t>(color)].get(); } diff --git a/src/boards/Groundstation/Automated/SMController/SMController.cpp b/src/boards/Groundstation/Automated/SMController/SMController.cpp index e4f09483b..d47796b71 100644 --- a/src/boards/Groundstation/Automated/SMController/SMController.cpp +++ b/src/boards/Groundstation/Automated/SMController/SMController.cpp @@ -370,13 +370,13 @@ State SMController::state_init_error(const Event& event) case EV_ENTRY: { logStatus(SMControllerState::INIT_ERROR); - ModuleManager::getInstance().get<Leds>()->set_blinking( + ModuleManager::getInstance().get<Leds>()->setBlinking( LedColor::RED); return HANDLED; } case EV_EXIT: { - ModuleManager::getInstance().get<Leds>()->set_off(LedColor::RED); + ModuleManager::getInstance().get<Leds>()->setOff(LedColor::RED); return HANDLED; } case EV_EMPTY: @@ -409,7 +409,7 @@ State SMController::state_init_done(const Event& event) case EV_ENTRY: { logStatus(SMControllerState::INIT_DONE); - ModuleManager::getInstance().get<Leds>()->set_on(LedColor::GREEN); + ModuleManager::getInstance().get<Leds>()->setOn(LedColor::GREEN); return HANDLED; } case EV_EXIT: @@ -582,14 +582,14 @@ State SMController::state_fix_antennas(const Event& event) case EV_ENTRY: { logStatus(SMControllerState::FIX_ANTENNAS); - ModuleManager::getInstance().get<Leds>()->set_blinking( + ModuleManager::getInstance().get<Leds>()->setBlinking( LedColor::ORANGE); return HANDLED; } case EV_EXIT: { auto* leds = ModuleManager::getInstance().get<Leds>(); - leds->set_on(LedColor::ORANGE); + leds->setOn(LedColor::ORANGE); return HANDLED; } case EV_EMPTY: @@ -622,14 +622,14 @@ State SMController::state_fix_rocket(const Event& event) case EV_ENTRY: { logStatus(SMControllerState::FIX_ROCKET); - ModuleManager::getInstance().get<Leds>()->set_blinking( + ModuleManager::getInstance().get<Leds>()->setBlinking( LedColor::YELLOW); return HANDLED; } case EV_EXIT: { auto* leds = ModuleManager::getInstance().get<Leds>(); - leds->set_off(LedColor::YELLOW); + leds->setOff(LedColor::YELLOW); // init the follower before leaving the state // (compute initial arp-rocket distance and bearing) @@ -638,7 +638,7 @@ State SMController::state_fix_rocket(const Event& event) LOG_ERR(logger, "Follower initialization failed"); } - leds->set_on(LedColor::YELLOW); + leds->setOn(LedColor::YELLOW); return HANDLED; } case EV_EMPTY: @@ -775,14 +775,14 @@ State SMController::state_fix_rocket_nf(const Event& event) case EV_ENTRY: { logStatus(SMControllerState::FIX_ROCKET_NF); - ModuleManager::getInstance().get<Leds>()->set_blinking( + ModuleManager::getInstance().get<Leds>()->setBlinking( LedColor::YELLOW); return HANDLED; } case EV_EXIT: { auto* leds = ModuleManager::getInstance().get<Leds>(); - leds->set_off(LedColor::YELLOW); + leds->setOff(LedColor::YELLOW); // init the follower before leaving the state // (compute initial arp-rocket distance and bearing) @@ -791,7 +791,7 @@ State SMController::state_fix_rocket_nf(const Event& event) LOG_ERR(logger, "Follower initialization failed"); } - leds->set_on(LedColor::YELLOW); + leds->setOn(LedColor::YELLOW); return HANDLED; } case EV_EMPTY: diff --git a/src/entrypoints/Groundstation/Automated/automated-antennas-entry.cpp b/src/entrypoints/Groundstation/Automated/automated-antennas-entry.cpp index 42f329502..57d910289 100644 --- a/src/entrypoints/Groundstation/Automated/automated-antennas-entry.cpp +++ b/src/entrypoints/Groundstation/Automated/automated-antennas-entry.cpp @@ -47,7 +47,7 @@ if (!_fun()) \ { \ LOG_ERR(logger, "Failed to start module " name); \ - leds->endless_blink(LedColor::RED); \ + leds->endlessBlink(LedColor::RED); \ } \ else \ { \ @@ -127,7 +127,7 @@ int main() if (!ok) { LOG_ERR(logger, "Failed to insert all modules!\n"); - leds->endless_blink(LedColor::RED); + leds->endlessBlink(LedColor::RED); } else { -- GitLab