|
FastLED 3.9.15
|
5-channel RGB + warm-W + cool-W (RGBWW / RGBCCT) configuration types (issue #2558, Phase 3 of #2545).
Mirrors fl/gfx/rgbw.h but carries two CCTs for the layered solver. The actual rgb_2_rgbww dispatch and encoder pipeline arrive in later phases — this header defines TYPES ONLY so the rest of the codebase can reference Rgbww / RGBWW_MODE / EOrderWW.
Definition in file rgbww.h.
Include dependency graph for rgbww.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| struct | fl::Rgbww |
| Per-strip RGBWW configuration. More... | |
| struct | fl::RgbwwDefault |
| Default RGBWW configuration: colorimetric mode at warm=2700K / cool=6500K, default profile, end-aligned warm-then-cool W byte placement. More... | |
| struct | fl::RgbwwInvalid |
| Sentinel: disables RGBWW (variant should hold fl::Empty instead, but this is kept for symmetry with RgbwInvalid). More... | |
Namespaces | |
| namespace | fl |
| Base definition for an LED controller. | |
| namespace | fl::colorimetric_detail |
Typedefs | |
| typedef void(* | fl::rgb_2_rgbww_function) (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) |
Enumerations | |
| enum | { fl::kRGBWWDefaultWarmCct = 2700 , fl::kRGBWWDefaultCoolCct = 6500 } |
| Default warm / cool reference CCTs for built-in profiles. More... | |
| enum class | fl::EOrderWW : fl::u8 { fl::WwWcEnd = 0x34 , fl::WcWwEnd = 0x43 , fl::WwWcStart = 0x01 , fl::WcWwStart = 0x10 , fl::WWDefault = WwWcEnd } |
| White-byte ordering for 5-channel RGBWW output. More... | |
| enum class | fl::RGBWW_MODE : fl::u8 { fl::kRGBWWInvalid , fl::kRGBWWColorimetric , fl::kRGBWWColorimetricBoosted , fl::kRGBWWUserFunction } |
| RGB -> RGBWW conversion modes (issue #2558, Phase 3 of #2545). More... | |
Functions | |
| const colorimetric_detail::RgbcctProfile * | fl::get_rgbww_colorimetric_profile () FL_NOEXCEPT |
| FASTLED_FORCE_INLINE void | fl::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 | fl::rgb_2_rgbww_colorimetric (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 |
| Colorimetric strict sub-gamut solver for RGBWW (gist sec 5 + sec 11-12, using solve_rgbcct from rgbw_colorimetric.h). | |
| void | fl::rgb_2_rgbww_colorimetric_boosted (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 |
| Colorimetric white-overdrive solver for RGBWW (wx_lp_legacy + RGBCCT layered blend). | |
| void | fl::rgb_2_rgbww_user_function (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 |
| User-installable RGB->RGBWW function. | |
| void | fl::rgbww_partial_reorder (EOrderWW ww_placement, fl::u8 b0, fl::u8 b1, fl::u8 b2, fl::u8 ww, fl::u8 wc, fl::u8 *out_b0, fl::u8 *out_b1, fl::u8 *out_b2, fl::u8 *out_b3, fl::u8 *out_b4) FL_NOEXCEPT |
| Dispatch RGB->RGBWW for a given mode. | |
| void | fl::set_rgb_2_rgbww_function (rgb_2_rgbww_function func) FL_NOEXCEPT |
| void | fl::set_rgbww_colorimetric_profile (const colorimetric_detail::RgbcctProfile *profile) FL_NOEXCEPT |