Browse Source

garland: update setters code

pull/2600/head
Dmitry Blinov 5 months ago
parent
commit
b70967b40d
2 changed files with 11 additions and 6 deletions
  1. +10
    -5
      code/espurna/garland.cpp
  2. +1
    -1
      code/espurna/garland/scene.h

+ 10
- 5
code/espurna/garland.cpp View File

@ -236,7 +236,6 @@ void _garlandWebSocketOnAction(uint32_t client_id, const char* action, JsonObjec
if (strcmp(action, NAME_GARLAND_SET_BRIGHTNESS) == 0) {
if (data.containsKey("brightness")) {
byte new_brightness = data.get<byte>("brightness");
DEBUG_MSG_P(PSTR("[GARLAND] new brightness = %d\n"), new_brightness);
setSetting(NAME_GARLAND_BRIGHTNESS, new_brightness);
scene.setBrightness(new_brightness);
}
@ -245,7 +244,6 @@ void _garlandWebSocketOnAction(uint32_t client_id, const char* action, JsonObjec
if (strcmp(action, NAME_GARLAND_SET_SPEED) == 0) {
if (data.containsKey("speed")) {
byte new_speed = data.get<byte>("speed");
DEBUG_MSG_P(PSTR("[GARLAND] new speed = %d\n"), new_speed);
setSetting(NAME_GARLAND_SPEED, new_speed);
scene.setSpeed(new_speed);
}
@ -472,18 +470,25 @@ void Scene<Leds>::setPalette(Palette* palette) {
}
}
template<uint16_t Leds>
void Scene<Leds>::setBrightness(byte value) {
DEBUG_MSG_P(PSTR("[GARLAND] new brightness = %d\n"), value);
brightness = value;
}
// Speed is reverse to cycleFactor and 10x
template<uint16_t Leds>
void Scene<Leds>::setSpeed(byte speed) {
DEBUG_MSG_P(PSTR("[GARLAND] new speed = %d\n"), speed);
this->speed = speed;
cycleFactor = (float)(GARLAND_SCENE_SPEED_MAX - speed) / GARLAND_SCENE_SPEED_FACTOR;
}
template<uint16_t Leds>
void Scene<Leds>::setDefault() {
speed = GARLAND_SCENE_DEFAULT_SPEED;
cycleFactor = (float)(GARLAND_SCENE_SPEED_MAX - speed) / GARLAND_SCENE_SPEED_FACTOR;
brightness = GARLAND_SCENE_DEFAULT_BRIGHTNESS;
DEBUG_MSG_P(PSTR("[GARLAND] set default\n"));
this->setBrightness(GARLAND_SCENE_DEFAULT_BRIGHTNESS);
this->setSpeed(GARLAND_SCENE_DEFAULT_SPEED);
}
template<uint16_t Leds>


+ 1
- 1
code/espurna/garland/scene.h View File

@ -37,10 +37,10 @@ public:
unsigned long getAvgShowTime() { return show_num > 0 ? sum_show_time / show_num : 0; }
int getNumShows() { return numShows; }
byte getBrightness() { return brightness; }
void setBrightness(byte value) { brightness = value; }
byte getSpeed() { return speed; }
void setPalette(Palette* palette);
void setBrightness(byte value);
void setSpeed(byte speed);
void setDefault();
void run();


Loading…
Cancel
Save