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 234 of file manager.cpp.hpp.
234 {
235 FL_DBG(
"ChannelManager: Waiting for all drivers to become READY before clearing");
236
237
238
240
241 FL_DBG(
"ChannelManager: Clearing " <<
mDrivers.size() <<
" drivers");
242
244 if (entry.driver) {
245 entry.driver->setPollNeededCallback(IChannelDriver::PollNeededCallback());
246 }
247 }
248
249
251
252
253
254
255
257}
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().