Merge pull request #870 from pille/cleanup-segment-options
cleanup code to use descriptive segment options
This commit is contained in:
commit
b1028086a3
@ -2943,9 +2943,9 @@ uint16_t WS2812FX::mode_exploding_fireworks(void)
|
|||||||
|
|
||||||
fill(BLACK);
|
fill(BLACK);
|
||||||
|
|
||||||
bool actuallyReverse = SEGMENT.getOption(1);
|
bool actuallyReverse = SEGMENT.getOption(SEG_OPTION_REVERSED);
|
||||||
//have fireworks start in either direction based on intensity
|
//have fireworks start in either direction based on intensity
|
||||||
SEGMENT.setOption(1, SEGENV.step);
|
SEGMENT.setOption(SEG_OPTION_REVERSED, SEGENV.step);
|
||||||
|
|
||||||
Spark* sparks = reinterpret_cast<Spark*>(SEGENV.data);
|
Spark* sparks = reinterpret_cast<Spark*>(SEGENV.data);
|
||||||
Spark* flare = sparks; //first spark is flare data
|
Spark* flare = sparks; //first spark is flare data
|
||||||
@ -3036,7 +3036,7 @@ uint16_t WS2812FX::mode_exploding_fireworks(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SEGMENT.setOption(1, actuallyReverse);
|
SEGMENT.setOption(SEG_OPTION_REVERSED, actuallyReverse);
|
||||||
|
|
||||||
return FRAMETIME;
|
return FRAMETIME;
|
||||||
}
|
}
|
||||||
|
@ -495,15 +495,15 @@ void WS2812FX::resetSegments() {
|
|||||||
_segments[0].speed = DEFAULT_SPEED;
|
_segments[0].speed = DEFAULT_SPEED;
|
||||||
_segments[0].stop = _length;
|
_segments[0].stop = _length;
|
||||||
_segments[0].grouping = 1;
|
_segments[0].grouping = 1;
|
||||||
_segments[0].setOption(0, 1); //select
|
_segments[0].setOption(SEG_OPTION_SELECTED, 1);
|
||||||
_segments[0].setOption(2, 1); //on
|
_segments[0].setOption(SEG_OPTION_ON, 1);
|
||||||
_segments[0].opacity = 255;
|
_segments[0].opacity = 255;
|
||||||
|
|
||||||
for (uint16_t i = 1; i < MAX_NUM_SEGMENTS; i++)
|
for (uint16_t i = 1; i < MAX_NUM_SEGMENTS; i++)
|
||||||
{
|
{
|
||||||
_segments[i].colors[0] = color_wheel(i*51);
|
_segments[i].colors[0] = color_wheel(i*51);
|
||||||
_segments[i].grouping = 1;
|
_segments[i].grouping = 1;
|
||||||
_segments[i].setOption(2, 1); //on
|
_segments[i].setOption(SEG_OPTION_ON, 1);
|
||||||
_segments[i].opacity = 255;
|
_segments[i].opacity = 255;
|
||||||
_segment_runtimes[i].reset();
|
_segment_runtimes[i].reset();
|
||||||
}
|
}
|
||||||
@ -529,7 +529,7 @@ void WS2812FX::setShowCallback(show_callback cb)
|
|||||||
void WS2812FX::setTransitionMode(bool t)
|
void WS2812FX::setTransitionMode(bool t)
|
||||||
{
|
{
|
||||||
_segment_index = getMainSegmentId();
|
_segment_index = getMainSegmentId();
|
||||||
SEGMENT.setOption(7,t);
|
SEGMENT.setOption(SEG_OPTION_TRANSITIONAL, t);
|
||||||
if (!t) return;
|
if (!t) return;
|
||||||
unsigned long waitMax = millis() + 20; //refresh after 20 ms if transition enabled
|
unsigned long waitMax = millis() + 20; //refresh after 20 ms if transition enabled
|
||||||
if (SEGMENT.mode == FX_MODE_STATIC && SEGENV.next_time > waitMax) SEGENV.next_time = waitMax;
|
if (SEGMENT.mode == FX_MODE_STATIC && SEGENV.next_time > waitMax) SEGENV.next_time = waitMax;
|
||||||
@ -812,7 +812,7 @@ bool WS2812FX::segmentsAreIdentical(Segment* a, Segment* b)
|
|||||||
if (a->speed != b->speed) return false;
|
if (a->speed != b->speed) return false;
|
||||||
if (a->intensity != b->intensity) return false;
|
if (a->intensity != b->intensity) return false;
|
||||||
if (a->palette != b->palette) return false;
|
if (a->palette != b->palette) return false;
|
||||||
//if (a->getOption(1) != b->getOption(1)) return false; //reverse
|
//if (a->getOption(SEG_OPTION_REVERSED) != b->getOption(SEG_OPTION_REVERSED)) return false;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -420,7 +420,7 @@ bool handleSet(AsyncWebServerRequest *request, const String& req)
|
|||||||
|
|
||||||
WS2812FX::Segment& mainseg = strip.getSegment(main);
|
WS2812FX::Segment& mainseg = strip.getSegment(main);
|
||||||
pos = req.indexOf("SV="); //segment selected
|
pos = req.indexOf("SV="); //segment selected
|
||||||
if (pos > 0) mainseg.setOption(0, (req.charAt(pos+3) != '0'));
|
if (pos > 0) mainseg.setOption(SEG_OPTION_SELECTED, (req.charAt(pos+3) != '0'));
|
||||||
|
|
||||||
uint16_t startI = mainseg.start;
|
uint16_t startI = mainseg.start;
|
||||||
uint16_t stopI = mainseg.stop;
|
uint16_t stopI = mainseg.stop;
|
||||||
|
Loading…
Reference in New Issue
Block a user