66 return clockless->pin;
84 for (
const auto& config :
channels) {
91 for (
const auto& config :
channels) {
constexpr remove_reference< T >::type && move(T &&t) FL_NOEXCEPT
fl::variant< ClocklessChipset, SpiChipsetConfig > ChipsetVariant
shared_ptr< T > make_shared(Args &&... args) FL_NOEXCEPT
EOrder
RGB color channel orderings, used when instantiating controllers to determine what order the controll...
Base definition for an LED controller.
fl::optional< fl::string > mName
Optional user-specified name (if not set, Channel generates one automatically)
int getDataPin() const FL_NOEXCEPT
Get data pin (works for both clockless and SPI)
fl::ScreenMap mScreenMap
Screen mapping.
ChannelOptions options
Optional channel settings (correction, temperature, dither, rgbw, affinity)
fl::span< CRGB > mLeds
LED data array.
ChannelConfig(const fl::string &name, const ChipsetVariant &chipset, fl::span< CRGB > leds, EOrder rgbOrder=RGB, const ChannelOptions &options=ChannelOptions()) FL_NOEXCEPT
Named constructor with chipset variant.
ChipsetVariant chipset
Chipset configuration (clockless or SPI)
int getClockPin() const FL_NOEXCEPT
Get clock pin (returns -1 for clockless chipsets)
EOrder rgb_order
RGB channel ordering.
Optional channel configuration parameters All fields have sensible defaults and can be overridden as ...
Runtime bit-period timing for a clockless chipset.
Clockless chipset configuration (single data pin)
fl::vector< ChannelConfigPtr > mChannels
Vector of shared pointers to channel configurations.
MultiChannelConfig() FL_NOEXCEPT=default
MultiChannelConfig & add(ChannelConfigPtr channel) FL_NOEXCEPT
Add a channel configuration to the multi-channel config.
SPI chipset configuration (data + clock pins)