FastLED 3.9.15
Loading...
Searching...
No Matches
rgbw.h File Reference

Detailed Description

Functions for red, green, blue, white (RGBW) output.

Definition in file rgbw.h.

#include <stdint.h>
#include "fl/force_inline.h"
#include "fl/namespace.h"
#include "eorder.h"
+ Include dependency graph for rgbw.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Rgbw
 
struct  RgbwDefault
 
struct  RgbwInvalid
 
struct  RgbwWhiteIsOff
 

Typedefs

typedef void(* rgb_2_rgbw_function) (uint16_t w_color_temperature, uint8_t r, uint8_t g, uint8_t b, uint8_t r_scale, uint8_t g_scale, uint8_t b_scale, uint8_t *out_r, uint8_t *out_g, uint8_t *out_b, uint8_t *out_w)
 

Enumerations

enum  { kRGBWDefaultColorTemp = 6000 }
 
enum  RGBW_MODE {
  kRGBWInvalid , kRGBWNullWhitePixel , kRGBWExactColors , kRGBWBoostedWhite ,
  kRGBWMaxBrightness , kRGBWUserFunction
}
 

Functions

FASTLED_FORCE_INLINE void rgb_2_rgbw (RGBW_MODE mode, uint16_t w_color_temperature, uint8_t r, uint8_t g, uint8_t b, uint8_t r_scale, uint8_t g_scale, uint8_t b_scale, uint8_t *out_r, uint8_t *out_g, uint8_t *out_b, uint8_t *out_w)
 Converts RGB to RGBW using one of the functions.
 
template<RGBW_MODE MODE>
FASTLED_FORCE_INLINE void rgb_2_rgbw (uint16_t w_color_temperature, uint8_t r, uint8_t g, uint8_t b, uint8_t r_scale, uint8_t g_scale, uint8_t b_scale, uint8_t *out_r, uint8_t *out_g, uint8_t *out_b, uint8_t *out_w)
 
void rgb_2_rgbw_exact (uint16_t w_color_temperature, uint8_t r, uint8_t g, uint8_t b, uint8_t r_scale, uint8_t g_scale, uint8_t b_scale, uint8_t *out_r, uint8_t *out_g, uint8_t *out_b, uint8_t *out_w)
 Converts RGB to RGBW using a color transfer method from saturated color channels to white.
 
void rgb_2_rgbw_max_brightness (uint16_t w_color_temperature, uint8_t r, uint8_t g, uint8_t b, uint8_t r_scale, uint8_t g_scale, uint8_t b_scale, uint8_t *out_r, uint8_t *out_g, uint8_t *out_b, uint8_t *out_w)
 The minimum brigthness of the RGB channels is used to set the W channel.
 
void rgb_2_rgbw_null_white_pixel (uint16_t w_color_temperature, uint8_t r, uint8_t g, uint8_t b, uint8_t r_scale, uint8_t g_scale, uint8_t b_scale, uint8_t *out_r, uint8_t *out_g, uint8_t *out_b, uint8_t *out_w)
 Converts RGB to RGBW with the W channel set to black, always.
 
void rgb_2_rgbw_user_function (uint16_t w_color_temperature, uint8_t r, uint8_t g, uint8_t b, uint8_t r_scale, uint8_t g_scale, uint8_t b_scale, uint8_t *out_r, uint8_t *out_g, uint8_t *out_b, uint8_t *out_w)
 
void rgb_2_rgbw_white_boosted (uint16_t w_color_temperature, uint8_t r, uint8_t g, uint8_t b, uint8_t r_scale, uint8_t g_scale, uint8_t b_scale, uint8_t *out_r, uint8_t *out_g, uint8_t *out_b, uint8_t *out_w)
 Converts RGB to RGBW with a boosted white channel.
 
void rgbw_partial_reorder (EOrderW w_placement, uint8_t b0, uint8_t b1, uint8_t b2, uint8_t w, uint8_t *out_b0, uint8_t *out_b1, uint8_t *out_b2, uint8_t *out_b3)
 
void set_rgb_2_rgbw_function (rgb_2_rgbw_function func)