const WS2812FX::setPixelColorXY

small optimization for speed
This commit is contained in:
Frank
2025-10-31 11:09:45 +01:00
parent 74c701b745
commit 13331e3de0
2 changed files with 6 additions and 6 deletions

View File

@@ -1095,12 +1095,12 @@ class WS2812FX { // 96 bytes
void
setUpMatrix(),
setPixelColorXY_fast(int x, int y, uint32_t c),
setPixelColorXY(int x, int y, uint32_t c);
setPixelColorXY_fast(int x, int y, uint32_t c) const,
setPixelColorXY(int x, int y, uint32_t c) const;
// outsmart the compiler :) by correctly overloading
inline void setPixelColorXY(int x, int y, byte r, byte g, byte b, byte w = 0) { setPixelColorXY(x, y, RGBW32(r,g,b,w)); } // automatically inline
inline void setPixelColorXY(int x, int y, CRGB c) { setPixelColorXY(x, y, RGBW32(c.r,c.g,c.b,0)); }
inline void setPixelColorXY(int x, int y, byte r, byte g, byte b, byte w = 0) const { setPixelColorXY(x, y, RGBW32(r,g,b,w)); } // automatically inline
inline void setPixelColorXY(int x, int y, CRGB c) const { setPixelColorXY(x, y, RGBW32(c.r,c.g,c.b,0)); }
uint32_t
getPixelColorXY(uint16_t, uint16_t) const;

View File

@@ -195,7 +195,7 @@ void WS2812FX::setUpMatrix() {
}
// absolute matrix version of setPixelColor(), without error checking
void IRAM_ATTR __attribute__((hot)) WS2812FX::setPixelColorXY_fast(int x, int y, uint32_t col) //WLEDMM: IRAM_ATTR conditionally
void IRAM_ATTR __attribute__((hot)) WS2812FX::setPixelColorXY_fast(int x, int y, uint32_t col) const //WLEDMM: IRAM_ATTR conditionally
{
uint_fast16_t index = y * Segment::maxWidth + x;
if (index < customMappingSize) index = customMappingTable[index];
@@ -204,7 +204,7 @@ void IRAM_ATTR __attribute__((hot)) WS2812FX::setPixelColorXY_fast(int x, int y,
}
// absolute matrix version of setPixelColor()
void IRAM_ATTR_YN WS2812FX::setPixelColorXY(int x, int y, uint32_t col) //WLEDMM: IRAM_ATTR conditionally
void IRAM_ATTR_YN WS2812FX::setPixelColorXY(int x, int y, uint32_t col) const //WLEDMM: IRAM_ATTR conditionally
{
#ifndef WLED_DISABLE_2D
if (!isMatrix) return; // not a matrix set-up