|
FastLED 3.10.6
|
Shared "slim bridge" legacy addLeds<>() controller for channel drivers.
Extracted (issue #4581, gap register A1-A12 in #4580) from the ESP32 RMT5 legacy bridge prototyped in draft PR #4576 (platforms/esp/32/drivers/rmt/rmt_5/idf5_clockless.h) and the ClocklessIdf4 reset_us folding pattern. This header has NO platform includes – it is pure fl:: glue over IChannelDriver so every platform's legacy bridge controller can share one implementation and one conformance suite instead of re-deriving the enqueue/wait/encode dance per driver.
Definition in file slim_bridge_controller.h.
#include "fl/stl/static_assert.h"#include "fl/stl/noexcept.h"#include "fl/stl/vector.h"#include "cpixel_ledcontroller.h"#include "fl/channels/data.h"#include "fl/channels/driver.h"#include "fl/channels/manager.h"#include "fl/channels/bus_traits.h"#include "fl/channels/config.h"#include "fl/chipsets/encoders/pixel_iterator.h"#include "fl/log/log.h"#include "fl/system/sketch_macros.h"
Include dependency graph for slim_bridge_controller.h:Go to the source code of this file.
Classes | |
| class | fl::SlimBridgeController< DATA_PIN, TIMING, RGB_ORDER, WAIT_TIME, DriverTraits, XTRA0, DIRECT_SHOW > |
Shared legacy addLeds<>() bridge controller over an IChannelDriver. More... | |
| struct | fl::SlimBridgeShowPolicy< false > |
| Default: registered with ChannelManager, which owns enable/disable and flushes every registered driver once at the end of FastLED.show(). More... | |
| struct | fl::SlimBridgeShowPolicy< true > |
| Direct: no registry, so there is no runtime enable/disable or exclusive-driver selection, and no end-of-show flush – the controller shows its own frame, as the pre-bridge LPC controllers did. More... | |
Namespaces | |
| namespace | fl |
| Base definition for an LED controller. | |
Macros | |
| #define | FL_SLIM_BRIDGE_DIRECT_SHOW (!FL_PLATFORM_HAS_LARGE_MEMORY) |
| Small-memory tier: the bridge drives its driver directly instead of through ChannelManager, so the registry (~3 KB) is not linked. | |