FastLED 3.9.15
Loading...
Searching...
No Matches
fl::ChannelOptions Struct Reference

Detailed Description

Optional channel configuration parameters All fields have sensible defaults and can be overridden as needed.

Driver selection (#2459). mBus is the single typed selector:

  • Bus::AUTO (default) — let ChannelManager pick by priority dispatch.
  • Any other value — pin this channel to the named driver via ChannelManager::findDriverByName(busName(mBus)). If the named driver isn't registered, Channel::showPixels emits a one-shot FL_ERROR with the resolution hint (fl::enableDrivers<fl::Bus::X>() or FastLED.enableAllDrivers()) and falls back to AUTO/priority.

White-channel configuration (#2558). mWhiteCfg is a 3-way variant:

  • fl::Empty (default) — plain 3-channel RGB output, no white extraction. Replaces the legacy Rgbw{rgbw_mode=kRGBWInvalid} sentinel.
  • Rgbw — 4-channel RGBW output. Mode + CCT inside the Rgbw value.
  • Rgbww — 5-channel RGB + warm-W + cool-W output. Mode + two CCTs + optional profile pointer inside the Rgbww value.

setRgbw() / getRgbw() on CLEDController remain backward-compatible — they wrap the variant. New 5-channel callers use setRgbww()/getRgbww().

Custom / third-party / mock drivers whose names aren't in the fl::Bus enum should be bound either by priority (clear competing drivers via clearAllDrivers() and let the mock win priority dispatch) or via ChannelManager::setExclusiveDriverByName(name) for process-wide binding. There is no string-typed affinity field on ChannelOptions.

Examples
Sailboat.ino.

Definition at line 43 of file options.h.

#include <options.h>

+ Collaboration diagram for fl::ChannelOptions:

Public Member Functions

bool isRgbw () const FL_NOEXCEPT
 True if this channel emits 4-channel RGBW.
 
bool isRgbww () const FL_NOEXCEPT
 True if this channel emits 5-channel RGBWW.
 
Rgbw rgbw () const FL_NOEXCEPT
 
Rgbww rgbww () const FL_NOEXCEPT
 

Public Attributes

Bus mBus = Bus::AUTO
 
CRGB mCorrection = UncorrectedColor
 
fl::u8 mDitherMode = BINARY_DITHER
 
fl::optional< float > mGamma
 
CRGB mTemperature = UncorrectedTemperature
 
fl::variant< fl::Empty, Rgbw, RgbwwmWhiteCfg
 White-channel selection (variant): Empty = plain RGB, Rgbw = 4-channel, Rgbww = 5-channel.
 

The documentation for this struct was generated from the following file: