FastLED 3.9.15
Loading...
Searching...
No Matches

◆ releaseBackend()

void fl::spi::ParallelDevice::Impl::releaseBackend ( )
inline

Definition at line 61 of file parallel_device.cpp.hpp.

61 {
62 if (!backend) return;
63
64 // Stop ISR if in ISR mode
65 if (is_isr_mode) {
66 // ISR backends have stopISR() method
67 if (backend_width == 1) {
68 static_cast<SpiIsr1*>(backend)->stopISR();
69 } else if (backend_width == 2) {
70 static_cast<SpiIsr2*>(backend)->stopISR();
71 } else if (backend_width == 4) {
72 static_cast<SpiIsr4*>(backend)->stopISR();
73 } else if (backend_width == 8) {
74 static_cast<SpiIsr8*>(backend)->stopISR();
75 } else if (backend_width == 16) {
76 static_cast<SpiIsr16*>(backend)->stopISR();
77 } else if (backend_width == 32) {
78 static_cast<SpiIsr32*>(backend)->stopISR();
79 }
80 }
81
82 // Note: SpiIsr* and SpiBlock* backends don't need delete
83 // (they're typically stack-allocated in this impl)
84 backend = nullptr;
85 initialized = false;
86 }

References backend, backend_width, initialized, and is_isr_mode.

Referenced by ~Impl().

+ Here is the caller graph for this function: