FastLED 3.10.8
Loading...
Searching...
No Matches
clockless_encoders.h File Reference

Detailed Description

Link-on-use switch for the clockless half of unified parallel-IO engines (#4793).

The parallel-IO rule (agents/docs/cpp-standards.md -> "Parallel-IO Driver: Unified Clockless + SPI Engine") keeps one engine per peripheral for both modes. On ESP32 / ESP32-S3 that engine is also the default SPI bus, so an SPI-only sketch would otherwise link the whole clockless encode pipeline (wave8/wave3 transposers, clockless peripheral init) for code it can never run.

Every path that creates a clockless channel calls enableClocklessEncoders(). The engines reach their clockless pipeline only through state that this call installs, so a program that never creates a clockless channel never references that code and --gc-sections drops it. The engine and its Bus slot stay unified.

Definition in file clockless_encoders.h.

#include "fl/stl/noexcept.h"
#include "platforms/is_platform.h"
+ Include dependency graph for clockless_encoders.h:

Go to the source code of this file.

Namespaces

namespace  fl
 Base definition for an LED controller.
 
namespace  fl::platforms
 

Functions

void fl::platforms::enableClocklessEncoders () FL_NO_EXCEPT