LEDManager

LED control and visual feedback

#include <LEDManager.h>

Public Member Functions

 LEDManager ()
 
 ~LEDManager ()=default
 
void init ()
 
void startAnimationTask ()
 
void stopAnimationTask ()
 
void setLoadingState (bool on)
 
void flashColor (uint8_t r, uint8_t g, uint8_t b, int brightness, int duration)
 
void activate ()
 
void updateLastEncoderMovementTime ()
 
void setMainColor (const String &colorName="")
 
bool isLoading () const
 
bool isPulsating () const
 
int getBrightness () const
 
bool isInitAnimationComplete () const
 
TaskHandle_t getAnimationTaskHandle () const
 
void restartAnimationTask ()
 

Detailed Description

LED Animation Manager

Controls the NeoPixel LED ring with various animation effects. Runs on dedicated FreeRTOS task for consistent timing.

Animation Priority Order:

  1. Fade transitions
  2. Flash effects
  3. Loading animation
  4. Init boot sequence
  5. Idle pulsating

Constructor & Destructor Documentation

◆ LEDManager()

CloudMouse::Hardware::LEDManager::LEDManager ( )

◆ ~LEDManager()

CloudMouse::Hardware::LEDManager::~LEDManager ( )
default

Member Function Documentation

◆ activate()

void CloudMouse::Hardware::LEDManager::activate ( )

◆ flashColor()

void CloudMouse::Hardware::LEDManager::flashColor ( uint8_t  r,
uint8_t  g,
uint8_t  b,
int  brightness,
int  duration 
)

◆ getAnimationTaskHandle()

TaskHandle_t CloudMouse::Hardware::LEDManager::getAnimationTaskHandle ( ) const
inline

◆ getBrightness()

int CloudMouse::Hardware::LEDManager::getBrightness ( ) const
inline

◆ init()

void CloudMouse::Hardware::LEDManager::init ( )

◆ isInitAnimationComplete()

bool CloudMouse::Hardware::LEDManager::isInitAnimationComplete ( ) const
inline

◆ isLoading()

bool CloudMouse::Hardware::LEDManager::isLoading ( ) const
inline

◆ isPulsating()

bool CloudMouse::Hardware::LEDManager::isPulsating ( ) const
inline

◆ restartAnimationTask()

void CloudMouse::Hardware::LEDManager::restartAnimationTask ( )

◆ setLoadingState()

void CloudMouse::Hardware::LEDManager::setLoadingState ( bool  on)

◆ setMainColor()

void CloudMouse::Hardware::LEDManager::setMainColor ( const String &  colorName = "")

◆ startAnimationTask()

void CloudMouse::Hardware::LEDManager::startAnimationTask ( )

◆ stopAnimationTask()

void CloudMouse::Hardware::LEDManager::stopAnimationTask ( )

◆ updateLastEncoderMovementTime()

void CloudMouse::Hardware::LEDManager::updateLastEncoderMovementTime ( )