|
FastLED 3.9.15
|
|
inline |
Register a single driver at a priority above the platform default and disable all others (compile-time TU-linking variant).
Post-#2428 the default build does NOT auto-register every driver – only the platform-default driver TU links (via the legacy clockless controller's Phase 5b pre-bind). This template provides the opt-in path to add another driver and have it win priority dispatch.
Naming BusTraits<B>::instancePtr() here is the ODR-use that links the driver TU; the registration with the manager happens at kExclusivePriority (a value above any platform default) so the new driver wins in selectDriverForChannel().
| B | Bus identifier (must have a BusTraits<B> specialization visible at the call site). |
addLeds<> / FastLED.add() so newly-constructed channels see the override during driver resolution. Legacy clockless controllers that already pre-bound to the platform default via Phase 5b will continue to use that pre-bind – this template does not rewrite existing controllers. Definition at line 322 of file manager.h.
References ChannelManager(), addDriver(), FL_NOEXCEPT, and setExclusiveDriver().
Referenced by CFastLED::setExclusiveDriver(), CFastLED::setExclusiveDriver(), and setExclusiveDriver().
Here is the call graph for this function:
Here is the caller graph for this function: