removed unnecessary wrapper for rainbow mode

This commit is contained in:
HaxSam
2024-03-01 15:36:45 +01:00
parent adfcc3ba9e
commit 34e8a798d9
3 changed files with 25 additions and 38 deletions

View File

@@ -18,8 +18,6 @@
*/
#include "rgb_backlight.h"
#include "colors.h"
#include "core/timer.h"
#include <furi_hal.h>
#include <storage/storage.h>
#include <toolbox/saved_struct.h>
@@ -205,35 +203,7 @@ uint8_t rgb_backlight_get_rainbow_saturation() {
return rainbow_saturation;
}
static void rainbow_timer(void* ctx) {
UNUSED(ctx);
rgb_backlight_rainbow_mode();
}
void rgb_backlight_reconfigure(bool enabled) {
if(!rgb_state.settings_loaded) return;
furi_check(furi_mutex_acquire(rgb_state.mutex, FuriWaitForever) == FuriStatusOk);
rgb_state.enabled = enabled;
if(rgb_state.enabled && rgb_settings.rainbow_mode != RGBBacklightRainbowModeOff) {
if(rgb_state.rainbow_timer == NULL) {
rgb_state.rainbow_timer = furi_timer_alloc(rainbow_timer, FuriTimerTypePeriodic, NULL);
} else {
furi_timer_stop(rgb_state.rainbow_timer);
}
furi_timer_start(rgb_state.rainbow_timer, rgb_settings.rainbow_interval);
} else if(rgb_state.rainbow_timer != NULL) {
furi_timer_stop(rgb_state.rainbow_timer);
furi_timer_free(rgb_state.rainbow_timer);
rgb_state.rainbow_timer = NULL;
}
rgb_state.rainbow_hsv.s = rgb_settings.rainbow_saturation;
rgb_backlight_update(rgb_state.last_brightness, true);
furi_check(furi_mutex_release(rgb_state.mutex) == FuriStatusOk);
}
void rgb_backlight_rainbow_mode() {
void rainbow_timer(void* ctx) {
if(!rgb_state.settings_loaded) return;
furi_check(furi_mutex_acquire(rgb_state.mutex, FuriWaitForever) == FuriStatusOk);
@@ -276,6 +246,30 @@ void rgb_backlight_rainbow_mode() {
if(rgb_state.enabled && rgb_settings.rainbow_mode == RGBBacklightRainbowModeOff)
SK6805_update();
furi_check(furi_mutex_release(rgb_state.mutex) == FuriStatusOk);
UNUSED(ctx);
}
void rgb_backlight_reconfigure(bool enabled) {
if(!rgb_state.settings_loaded) return;
furi_check(furi_mutex_acquire(rgb_state.mutex, FuriWaitForever) == FuriStatusOk);
rgb_state.enabled = enabled;
if(rgb_state.enabled && rgb_settings.rainbow_mode != RGBBacklightRainbowModeOff) {
if(rgb_state.rainbow_timer == NULL) {
rgb_state.rainbow_timer = furi_timer_alloc(rainbow_timer, FuriTimerTypePeriodic, NULL);
} else {
furi_timer_stop(rgb_state.rainbow_timer);
}
furi_timer_start(rgb_state.rainbow_timer, rgb_settings.rainbow_interval);
} else if(rgb_state.rainbow_timer != NULL) {
furi_timer_stop(rgb_state.rainbow_timer);
furi_timer_free(rgb_state.rainbow_timer);
rgb_state.rainbow_timer = NULL;
}
rgb_state.rainbow_hsv.s = rgb_settings.rainbow_saturation;
rgb_backlight_update(rgb_state.last_brightness, true);
furi_check(furi_mutex_release(rgb_state.mutex) == FuriStatusOk);
}

View File

@@ -97,12 +97,6 @@ uint8_t rgb_backlight_get_rainbow_saturation();
*/
void rgb_backlight_reconfigure(bool enabled);
/**
* @brief Run the RGB rainbowmode
*
*/
void rgb_backlight_rainbow_mode();
/**
* @brief Apply current RGB lighting settings
*

View File

@@ -2963,7 +2963,6 @@ Function,+,rgb_backlight_get_rainbow_mode,RGBBacklightRainbowMode,
Function,+,rgb_backlight_get_rainbow_saturation,uint8_t,
Function,+,rgb_backlight_get_rainbow_speed,uint8_t,
Function,-,rgb_backlight_load_settings,void,_Bool
Function,-,rgb_backlight_rainbow_mode,void,
Function,+,rgb_backlight_reconfigure,void,_Bool
Function,+,rgb_backlight_save_settings,void,
Function,+,rgb_backlight_set_color,void,"uint8_t, const RgbColor*"
1 entry status name type params
2963 Function + rgb_backlight_get_rainbow_saturation uint8_t
2964 Function + rgb_backlight_get_rainbow_speed uint8_t
2965 Function - rgb_backlight_load_settings void _Bool
Function - rgb_backlight_rainbow_mode void
2966 Function + rgb_backlight_reconfigure void _Bool
2967 Function + rgb_backlight_save_settings void
2968 Function + rgb_backlight_set_color void uint8_t, const RgbColor*