FastLED 3.10.6
Loading...
Searching...
No Matches

◆ SlimBridgeController()

template<int DATA_PIN, typename TIMING, EOrder RGB_ORDER, int WAIT_TIME, typename DriverTraits, int XTRA0 = 0, bool DIRECT_SHOW = (FL_SLIM_BRIDGE_DIRECT_SHOW != 0)>
fl::SlimBridgeController< DATA_PIN, TIMING, RGB_ORDER, WAIT_TIME, DriverTraits, XTRA0, DIRECT_SHOW >::SlimBridgeController ( )
inline

Definition at line 108 of file slim_bridge_controller.h.

108 {
110 // (A?) Fold WAIT_TIME (microseconds) into reset_us, mirroring the
111 // historical ClocklessIdf4 behavior: the driver must honor whichever
112 // is longer -- the chipset's own latch/reset requirement, or the
113 // caller-requested minimum inter-frame wait.
114 if (WAIT_TIME > 0 && static_cast<u32>(WAIT_TIME) > timing.reset_us) {
115 timing.reset_us = static_cast<u32>(WAIT_TIME);
116 }
119 FL_STATIC_ASSERT(XTRA0 >= 0 && XTRA0 <= 32, "XTRA0 out of range");
120 mData->setExtraZeroBitsPerByte(static_cast<u8>(XTRA0));
121 // Idempotent by contract -- safe to call from every instantiation's
122 // constructor (mirrors ClocklessIdf5's registerWithManager() call).
123 // A no-op in direct-show mode.
125 }
static ChannelDataPtr create(const ChipsetVariant &chipset, fl::vector_psram< u8 > &&encodedData=fl::vector_psram< u8 >(), ChannelPixelFormat pixelFormat=ChannelPixelFormat::RGB) FL_NO_EXCEPT
Create channel transmission data (modern variant-based API)
Definition data.cpp.hpp:12
Shared legacy addLeds<>() bridge controller over an IChannelDriver.
constexpr ChipsetTimingConfig makeTimingConfig() FL_NO_EXCEPT
Convert compile-time CHIPSET type to runtime timing config.
#define FL_STATIC_ASSERT(...)

References fl::ChannelData::create(), DATA_PIN, fl::FL_NO_EXCEPT, FL_STATIC_ASSERT, fl::makeTimingConfig(), mData, fl::ChipsetTimingConfig::reset_us, and fl::RGB.

+ Here is the call graph for this function: