FastLED 3.10.9
Loading...
Searching...
No Matches

◆ enqueue()

void fl::SpiChannelEngineAdapter::enqueue ( ChannelDataPtr channelData)
overridevirtual

Enqueue channel data for transmission.

Parameters
channelDataChannel data to transmit
Note
Batches multiple channels for later transmission

Implements fl::IChannelDriver.

Definition at line 217 of file spi_channel_adapter.cpp.hpp.

217 {
218 if (!channelData) {
219 FL_WARN("SpiChannelEngineAdapter: Null channel data passed to enqueue()");
220 return;
221 }
222
223 // Validate that we can handle this data
224 if (!canHandle(channelData)) {
225 FL_WARN("SpiChannelEngineAdapter: Cannot handle non-SPI channel data (chipset mismatch)");
226 return;
227 }
228
229 mEnqueuedChannels.push_back(channelData);
230 FL_DBG("SpiChannelEngineAdapter: Enqueued channel (total: " << mEnqueuedChannels.size() << ")");
231}
bool canHandle(const ChannelDataPtr &data) const FL_NO_EXCEPT override
Check if adapter can handle channel data.
fl::vector< ChannelDataPtr > mEnqueuedChannels
Channels waiting for show()
#define FL_WARN(...)
Definition log.h:437
#define FL_DBG
Definition log.h:553

References canHandle(), FL_DBG, fl::FL_NO_EXCEPT, FL_WARN, and mEnqueuedChannels.

+ Here is the call graph for this function: