Main rendering function that converts RGB to RGBW and shows pixels.
This function:
- Converts each RGB pixel to RGBW format based on the configured conversion mode
- Packs the RGBW data into a format the RGB controller can transmit
- Temporarily bypasses color correction/temperature on the base controller
- Sends the packed data to the physical LED strip
- Parameters
-
| pixels | The pixel controller containing RGB data to be converted |
Implements CPixelLEDController< GRB, CONTROLLER::LANES_VALUE, CONTROLLER::MASK_VALUE >.
Definition at line 245 of file chipsets.h.
245 {
246
255 }
256
257
258
259
260
261
262
263
264
265
269
273 }
Emulation layer to support RGBW LEDs on RGB controllers.
VIRTUAL_IF_NOT_AVR int size() const FL_NO_EXCEPT
How many LEDs does this controller manage?
Rgbw getRgbw() const FL_NO_EXCEPT
ControllerT mController
The underlying RGB controller instance.
fl::unique_ptr< CRGB[]> mRGBWPixels
Internal buffer for packed RGBW data.
void ensureBuffer(fl::i32 num_leds) FL_NO_EXCEPT
Ensures the internal RGBW buffer is large enough for the LED count.
To * bit_cast_ptr(void *storage) FL_NO_EXCEPT
References fl::bit_cast_ptr(), DISABLE_DITHER, ensureBuffer(), FL_NO_EXCEPT, fl::CLEDController::getRgbw(), mController, mRGBWPixels, rgbw, and Rgbw::size_as_rgb().