Remove all drivers from the manager.
- Note
- Clears the entire driver registry
-
Useful for FastLED.reset() with CHANNEL_DRIVERS flag
-
Waits for all drivers to become READY before clearing (1 second timeout)
-
Also clears any exclusive-driver filter set by
setExclusiveDriver*(). The filter names a driver in the registry being emptied, and addDriver() consults it, so keeping it would silently disable every subsequently added driver.
Definition at line 227 of file manager.cpp.hpp.
227 {
228 FL_DBG(
"ChannelManager: Waiting for all drivers to become READY before clearing");
229
230
231
233
234 FL_DBG(
"ChannelManager: Clearing " <<
mDrivers.size() <<
" drivers");
235
237 if (entry.driver) {
238 entry.driver->setPollNeededCallback(IChannelDriver::PollNeededCallback());
239 }
240 }
241
242
244
245
246
247
248
250}
fl::vector< EngineEntry > mDrivers
Shared drivers sorted by priority descending (higher values first)
fl::string mExclusiveDriver
Exclusive driver name (empty if no exclusive mode)
bool waitForReady(u32 timeoutMs=1000) FL_NO_EXCEPT
Wait for all drivers to become READY.
References FL_DBG, fl::FL_NO_EXCEPT, mDrivers, mExclusiveDriver, and waitForReady().
Referenced by CFastLED::clear().