Load + scale a single pixel to 5-channel RGBWW (issue #2558).
Mirrors loadAndScaleRGBW: applies the per-channel premix scale, dispatches to rgb_2_rgbww for the colorimetric solve, then routes the five output bytes through rgbww_partial_reorder for the wire-order placement.
Definition at line 635 of file pixel_controller.h.
638 {
639#ifdef FL_IS_AVR
640
641
642
643
644
645 FL_WARN_ONCE(
"RGBWW colorimetric is not supported on AVR — the warm "
646 "and cool white channels will be black. Use an ESP32 / "
647 "Teensy / RP2040 target for full RGBWW support.");
654 0, 0,
656#else
676#endif
677 }
FASTLED_FORCE_INLINE void rgb_2_rgbww(const Rgbww &cfg, fl::u8 r, fl::u8 g, fl::u8 b, fl::u8 r_scale, fl::u8 g_scale, fl::u8 b_scale, fl::u8 *out_r, fl::u8 *out_g, fl::u8 *out_b, fl::u8 *out_ww, fl::u8 *out_wc) FL_NOEXCEPT
void rgbww_partial_reorder(EOrderWW ww_placement, u8 b0, u8 b1, u8 b2, u8 ww, u8 wc, u8 *out_b0, u8 *out_b1, u8 *out_b2, u8 *out_b3, u8 *out_b4) FL_NOEXCEPT
Dispatch RGB->RGBWW for a given mode.
#define RGB_BYTE2(RO)
Gets the color channel for byte 2.
#define RGB_BYTE1(RO)
Gets the color channel for byte 1.
#define RGB_BYTE0(RO)
Gets the color channel for byte 0.
FASTLED_FORCE_INLINE fl::u8 loadAndScale1()
FASTLED_FORCE_INLINE fl::u8 loadAndScale0()
FASTLED_FORCE_INLINE fl::u8 loadAndScale2()
ColorAdjustment mColorAdjustment
const fl::u8 * mData
pointer to the underlying LED data
References FASTLED_FORCE_INLINE, FL_WARN_ONCE, loadAndScale0(), loadAndScale1(), loadAndScale2(), mColorAdjustment, mData, fl::rgb_2_rgbww(), RGB_BYTE0, RGB_BYTE1, RGB_BYTE2, RGB_ORDER, fl::rgbww_partial_reorder(), and fl::Rgbww::w_placement.