const const const
small speedup by declaring some functions "const"
This commit is contained in:
@@ -4763,7 +4763,7 @@ class AuroraWave {
|
|||||||
alive = true;
|
alive = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
CRGB getColorForLED(int ledIndex) {
|
CRGB getColorForLED(int ledIndex) const {
|
||||||
if(ledIndex < center - width || ledIndex > center + width) return 0; //Position out of range of this wave
|
if(ledIndex < center - width || ledIndex > center + width) return 0; //Position out of range of this wave
|
||||||
|
|
||||||
CRGB rgb;
|
CRGB rgb;
|
||||||
@@ -4818,7 +4818,7 @@ class AuroraWave {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
bool stillAlive() {
|
bool stillAlive() const {
|
||||||
return alive;
|
return alive;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -420,7 +420,7 @@ typedef struct Segment {
|
|||||||
};
|
};
|
||||||
size_t _dataLen; // WLEDMM uint16_t is too small
|
size_t _dataLen; // WLEDMM uint16_t is too small
|
||||||
static size_t _usedSegmentData; // WLEDMM uint16_t is too small
|
static size_t _usedSegmentData; // WLEDMM uint16_t is too small
|
||||||
void setPixelColorXY_fast(int x, int y,uint32_t c, uint32_t scaled_col, int cols, int rows); // set relative pixel within segment with color - faster, but no error checking!!!
|
void setPixelColorXY_fast(int x, int y,uint32_t c, uint32_t scaled_col, int cols, int rows) const; // set relative pixel within segment with color - faster, but no error checking!!!
|
||||||
|
|
||||||
bool _isSimpleSegment = false; // simple = no grouping or spacing - mirror, transpose or reverse allowed
|
bool _isSimpleSegment = false; // simple = no grouping or spacing - mirror, transpose or reverse allowed
|
||||||
bool _isSuperSimpleSegment = false; // superSimple = no grouping or spacing, no mirror - only transpose or reverse allowed
|
bool _isSuperSimpleSegment = false; // superSimple = no grouping or spacing, no mirror - only transpose or reverse allowed
|
||||||
@@ -606,7 +606,7 @@ typedef struct Segment {
|
|||||||
// transition functions
|
// transition functions
|
||||||
void startTransition(uint16_t dur); // transition has to start before actual segment values change
|
void startTransition(uint16_t dur); // transition has to start before actual segment values change
|
||||||
void handleTransition(void);
|
void handleTransition(void);
|
||||||
uint16_t progress(void); //transition progression between 0-65535
|
uint16_t progress(void) const; //transition progression between 0-65535
|
||||||
|
|
||||||
// WLEDMM method inlined for speed (its called at each setPixelColor)
|
// WLEDMM method inlined for speed (its called at each setPixelColor)
|
||||||
inline uint8_t currentBri(uint8_t briNew, bool useCct = false) {
|
inline uint8_t currentBri(uint8_t briNew, bool useCct = false) {
|
||||||
@@ -621,7 +621,7 @@ typedef struct Segment {
|
|||||||
|
|
||||||
uint8_t currentMode(uint8_t modeNew);
|
uint8_t currentMode(uint8_t modeNew);
|
||||||
uint32_t currentColor(uint8_t slot, uint32_t colorNew);
|
uint32_t currentColor(uint8_t slot, uint32_t colorNew);
|
||||||
CRGBPalette16 &loadPalette(CRGBPalette16 &tgt, uint8_t pal);
|
CRGBPalette16 &loadPalette(CRGBPalette16 &tgt, uint8_t pal) const;
|
||||||
void setCurrentPalette(void);
|
void setCurrentPalette(void);
|
||||||
|
|
||||||
// 1D strip
|
// 1D strip
|
||||||
|
|||||||
@@ -272,7 +272,7 @@ void Segment::startFrame(void) {
|
|||||||
|
|
||||||
// Simplified version of Segment::setPixelColorXY - without error checking. Does not support grouping or spacing
|
// Simplified version of Segment::setPixelColorXY - without error checking. Does not support grouping or spacing
|
||||||
// * expects scaled color (final brightness) as additional input parameter, plus segment virtualWidth() and virtualHeight()
|
// * expects scaled color (final brightness) as additional input parameter, plus segment virtualWidth() and virtualHeight()
|
||||||
void IRAM_ATTR __attribute__((hot)) Segment::setPixelColorXY_fast(int x, int y, uint32_t col, uint32_t scaled_col, int cols, int rows) //WLEDMM
|
void IRAM_ATTR __attribute__((hot)) Segment::setPixelColorXY_fast(int x, int y, uint32_t col, uint32_t scaled_col, int cols, int rows) const //WLEDMM
|
||||||
{
|
{
|
||||||
unsigned i = UINT_MAX;
|
unsigned i = UINT_MAX;
|
||||||
bool sameColor = false;
|
bool sameColor = false;
|
||||||
|
|||||||
@@ -311,7 +311,7 @@ void Segment::setUpLeds() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CRGBPalette16 &Segment::loadPalette(CRGBPalette16 &targetPalette, uint8_t pal) {
|
CRGBPalette16 &Segment::loadPalette(CRGBPalette16 &targetPalette, uint8_t pal) const {
|
||||||
static unsigned long _lastPaletteChange = millis() - 990000; // perhaps it should be per segment //WLEDMM changed init value to avoid pure orange after startup
|
static unsigned long _lastPaletteChange = millis() - 990000; // perhaps it should be per segment //WLEDMM changed init value to avoid pure orange after startup
|
||||||
static CRGBPalette16 randomPalette = CRGBPalette16(DEFAULT_COLOR);
|
static CRGBPalette16 randomPalette = CRGBPalette16(DEFAULT_COLOR);
|
||||||
static CRGBPalette16 prevRandomPalette = CRGBPalette16(CRGB(BLACK));
|
static CRGBPalette16 prevRandomPalette = CRGBPalette16(CRGB(BLACK));
|
||||||
@@ -452,7 +452,7 @@ void Segment::startTransition(uint16_t dur) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// transition progression between 0-65535
|
// transition progression between 0-65535
|
||||||
uint16_t IRAM_ATTR_YN Segment::progress() {
|
uint16_t IRAM_ATTR_YN Segment::progress() const {
|
||||||
if (!transitional || !_t) return 0xFFFFU;
|
if (!transitional || !_t) return 0xFFFFU;
|
||||||
unsigned long timeNow = millis();
|
unsigned long timeNow = millis();
|
||||||
if (timeNow - _t->_start > _t->_dur || _t->_dur == 0) return 0xFFFFU;
|
if (timeNow - _t->_start > _t->_dur || _t->_dur == 0) return 0xFFFFU;
|
||||||
|
|||||||
Reference in New Issue
Block a user