FastLED 3.9.4
|
Representation of an RGB pixel (Red, Green, Blue)
#include <crgb.h>
Public Types | |
enum | HTMLColorCode { AliceBlue =0xF0F8FF , Amethyst =0x9966CC , AntiqueWhite =0xFAEBD7 , Aqua =0x00FFFF , Aquamarine =0x7FFFD4 , Azure =0xF0FFFF , Beige =0xF5F5DC , Bisque =0xFFE4C4 , Black =0x000000 , BlanchedAlmond =0xFFEBCD , Blue =0x0000FF , BlueViolet =0x8A2BE2 , Brown =0xA52A2A , BurlyWood =0xDEB887 , CadetBlue =0x5F9EA0 , Chartreuse =0x7FFF00 , Chocolate =0xD2691E , Coral =0xFF7F50 , CornflowerBlue =0x6495ED , Cornsilk =0xFFF8DC , Crimson =0xDC143C , Cyan =0x00FFFF , DarkBlue =0x00008B , DarkCyan =0x008B8B , DarkGoldenrod =0xB8860B , DarkGray =0xA9A9A9 , DarkGrey =0xA9A9A9 , DarkGreen =0x006400 , DarkKhaki =0xBDB76B , DarkMagenta =0x8B008B , DarkOliveGreen =0x556B2F , DarkOrange =0xFF8C00 , DarkOrchid =0x9932CC , DarkRed =0x8B0000 , DarkSalmon =0xE9967A , DarkSeaGreen =0x8FBC8F , DarkSlateBlue =0x483D8B , DarkSlateGray =0x2F4F4F , DarkSlateGrey =0x2F4F4F , DarkTurquoise =0x00CED1 , DarkViolet =0x9400D3 , DeepPink =0xFF1493 , DeepSkyBlue =0x00BFFF , DimGray =0x696969 , DimGrey =0x696969 , DodgerBlue =0x1E90FF , FireBrick =0xB22222 , FloralWhite =0xFFFAF0 , ForestGreen =0x228B22 , Fuchsia =0xFF00FF , Gainsboro =0xDCDCDC , GhostWhite =0xF8F8FF , Gold =0xFFD700 , Goldenrod =0xDAA520 , Gray =0x808080 , Grey =0x808080 , Green =0x008000 , GreenYellow =0xADFF2F , Honeydew =0xF0FFF0 , HotPink =0xFF69B4 , IndianRed =0xCD5C5C , Indigo =0x4B0082 , Ivory =0xFFFFF0 , Khaki =0xF0E68C , Lavender =0xE6E6FA , LavenderBlush =0xFFF0F5 , LawnGreen =0x7CFC00 , LemonChiffon =0xFFFACD , LightBlue =0xADD8E6 , LightCoral =0xF08080 , LightCyan =0xE0FFFF , LightGoldenrodYellow =0xFAFAD2 , LightGreen =0x90EE90 , LightGrey =0xD3D3D3 , LightPink =0xFFB6C1 , LightSalmon =0xFFA07A , LightSeaGreen =0x20B2AA , LightSkyBlue =0x87CEFA , LightSlateGray =0x778899 , LightSlateGrey =0x778899 , LightSteelBlue =0xB0C4DE , LightYellow =0xFFFFE0 , Lime =0x00FF00 , LimeGreen =0x32CD32 , Linen =0xFAF0E6 , Magenta =0xFF00FF , Maroon =0x800000 , MediumAquamarine =0x66CDAA , MediumBlue =0x0000CD , MediumOrchid =0xBA55D3 , MediumPurple =0x9370DB , MediumSeaGreen =0x3CB371 , MediumSlateBlue =0x7B68EE , MediumSpringGreen =0x00FA9A , MediumTurquoise =0x48D1CC , MediumVioletRed =0xC71585 , MidnightBlue =0x191970 , MintCream =0xF5FFFA , MistyRose =0xFFE4E1 , Moccasin =0xFFE4B5 , NavajoWhite =0xFFDEAD , Navy =0x000080 , OldLace =0xFDF5E6 , Olive =0x808000 , OliveDrab =0x6B8E23 , Orange =0xFFA500 , OrangeRed =0xFF4500 , Orchid =0xDA70D6 , PaleGoldenrod =0xEEE8AA , PaleGreen =0x98FB98 , PaleTurquoise =0xAFEEEE , PaleVioletRed =0xDB7093 , PapayaWhip =0xFFEFD5 , PeachPuff =0xFFDAB9 , Peru =0xCD853F , Pink =0xFFC0CB , Plaid =0xCC5533 , Plum =0xDDA0DD , PowderBlue =0xB0E0E6 , Purple =0x800080 , Red =0xFF0000 , RosyBrown =0xBC8F8F , RoyalBlue =0x4169E1 , SaddleBrown =0x8B4513 , Salmon =0xFA8072 , SandyBrown =0xF4A460 , SeaGreen =0x2E8B57 , Seashell =0xFFF5EE , Sienna =0xA0522D , Silver =0xC0C0C0 , SkyBlue =0x87CEEB , SlateBlue =0x6A5ACD , SlateGray =0x708090 , SlateGrey =0x708090 , Snow =0xFFFAFA , SpringGreen =0x00FF7F , SteelBlue =0x4682B4 , Tan =0xD2B48C , Teal =0x008080 , Thistle =0xD8BFD8 , Tomato =0xFF6347 , Turquoise =0x40E0D0 , Violet =0xEE82EE , Wheat =0xF5DEB3 , White =0xFFFFFF , WhiteSmoke =0xF5F5F5 , Yellow =0xFFFF00 , YellowGreen =0x9ACD32 , FairyLight =0xFFE42D , FairyLightNCC =0xFF9D2A } |
Predefined RGB colors. More... | |
Public Member Functions | |
FASTLED_FORCE_INLINE uint8_t & | operator[] (uint8_t x) |
Array access operator to index into the CRGB object. | |
FASTLED_FORCE_INLINE const uint8_t & | operator[] (uint8_t x) const |
Array access operator to index into the CRGB object. | |
FASTLED_FORCE_INLINE | CRGB ()=default |
Default constructor. | |
constexpr | CRGB (uint8_t ir, uint8_t ig, uint8_t ib) noexcept |
Allow construction from red, green, and blue. | |
constexpr | CRGB (uint32_t colorcode) noexcept |
Allow construction from 32-bit (really 24-bit) bit 0xRRGGBB color code. | |
constexpr uint32_t | as_uint32_t () const noexcept |
constexpr | CRGB (LEDColorCorrection colorcode) noexcept |
Allow construction from a LEDColorCorrection enum. | |
constexpr | CRGB (ColorTemperature colorcode) noexcept |
Allow construction from a ColorTemperature enum. | |
FASTLED_FORCE_INLINE | CRGB (const CRGB &rhs)=default |
Allow copy construction. | |
FASTLED_FORCE_INLINE | CRGB (const CHSV &rhs) |
Allow construction from a CHSV color. | |
FASTLED_FORCE_INLINE CRGB & | operator= (const CRGB &rhs)=default |
Allow assignment from one RGB struct to another. | |
FASTLED_FORCE_INLINE CRGB & | operator= (const uint32_t colorcode) |
Allow assignment from 32-bit (really 24-bit) 0xRRGGBB color code. | |
FASTLED_FORCE_INLINE CRGB & | setRGB (uint8_t nr, uint8_t ng, uint8_t nb) |
Allow assignment from red, green, and blue. | |
FASTLED_FORCE_INLINE CRGB & | setHSV (uint8_t hue, uint8_t sat, uint8_t val) |
Allow assignment from hue, saturation, and value. | |
FASTLED_FORCE_INLINE CRGB & | setHue (uint8_t hue) |
Allow assignment from just a hue. | |
FASTLED_FORCE_INLINE CRGB & | operator= (const CHSV &rhs) |
Allow assignment from HSV color. | |
FASTLED_FORCE_INLINE CRGB & | setColorCode (uint32_t colorcode) |
Allow assignment from 32-bit (really 24-bit) 0xRRGGBB color code. | |
FASTLED_FORCE_INLINE CRGB & | operator+= (const CRGB &rhs) |
Add one CRGB to another, saturating at 0xFF for each channel. | |
FASTLED_FORCE_INLINE CRGB & | addToRGB (uint8_t d) |
Add a constant to each channel, saturating at 0xFF. | |
FASTLED_FORCE_INLINE CRGB & | operator-= (const CRGB &rhs) |
Subtract one CRGB from another, saturating at 0x00 for each channel. | |
FASTLED_FORCE_INLINE CRGB & | subtractFromRGB (uint8_t d) |
Subtract a constant from each channel, saturating at 0x00. | |
FASTLED_FORCE_INLINE CRGB & | operator-- () |
Subtract a constant of '1' from each channel, saturating at 0x00. | |
FASTLED_FORCE_INLINE CRGB | operator-- (int) |
Subtract a constant of '1' from each channel, saturating at 0x00. | |
FASTLED_FORCE_INLINE CRGB & | operator++ () |
Add a constant of '1' from each channel, saturating at 0xFF. | |
FASTLED_FORCE_INLINE CRGB | operator++ (int) |
Add a constant of '1' from each channel, saturating at 0xFF. | |
FASTLED_FORCE_INLINE CRGB & | operator/= (uint8_t d) |
Divide each of the channels by a constant. | |
FASTLED_FORCE_INLINE CRGB & | operator>>= (uint8_t d) |
Right shift each of the channels by a constant. | |
FASTLED_FORCE_INLINE CRGB & | operator*= (uint8_t d) |
Multiply each of the channels by a constant, saturating each channel at 0xFF. | |
FASTLED_FORCE_INLINE CRGB & | nscale8_video (uint8_t scaledown) |
Scale down a RGB to N/256ths of it's current brightness using "video" dimming rules. | |
FASTLED_FORCE_INLINE CRGB & | operator%= (uint8_t scaledown) |
%= is a synonym for nscale8_video(). | |
FASTLED_FORCE_INLINE CRGB & | fadeLightBy (uint8_t fadefactor) |
fadeLightBy is a synonym for nscale8_video(), as a fade instead of a scale | |
FASTLED_FORCE_INLINE CRGB & | nscale8 (uint8_t scaledown) |
Scale down a RGB to N/256ths of its current brightness, using "plain math" dimming rules. | |
FASTLED_FORCE_INLINE CRGB & | nscale8 (const CRGB &scaledown) |
Scale down a RGB to N/256ths of its current brightness, using "plain math" dimming rules. | |
constexpr CRGB | nscale8_constexpr (const CRGB scaledown) const |
FASTLED_FORCE_INLINE CRGB | scale8 (uint8_t scaledown) const |
Return a CRGB object that is a scaled down version of this object. | |
FASTLED_FORCE_INLINE CRGB | scale8 (const CRGB &scaledown) const |
Return a CRGB object that is a scaled down version of this object. | |
FASTLED_FORCE_INLINE CRGB & | fadeToBlackBy (uint8_t fadefactor) |
fadeToBlackBy is a synonym for nscale8(), as a fade instead of a scale | |
FASTLED_FORCE_INLINE CRGB & | operator|= (const CRGB &rhs) |
"or" operator brings each channel up to the higher of the two values | |
FASTLED_FORCE_INLINE CRGB & | operator|= (uint8_t d) |
"or" operator brings each channel up to the higher of the two values | |
FASTLED_FORCE_INLINE CRGB & | operator&= (const CRGB &rhs) |
"and" operator brings each channel down to the lower of the two values | |
FASTLED_FORCE_INLINE CRGB & | operator&= (uint8_t d) |
"and" operator brings each channel down to the lower of the two values | |
constexpr | operator bool () const |
This allows testing a CRGB for zero-ness. | |
constexpr | operator uint32_t () const |
Converts a CRGB to a 32-bit color having an alpha of 255. | |
constexpr CRGB | operator- () const |
Invert each channel. | |
operator rgb24 () const | |
Convert to an rgb24 object, used with the SmartMatrix library. | |
FASTLED_FORCE_INLINE uint8_t | getLuma () const |
Get the "luma" of a CRGB object. | |
FASTLED_FORCE_INLINE uint8_t | getAverageLight () const |
Get the average of the R, G, and B values. | |
FASTLED_FORCE_INLINE void | maximizeBrightness (uint8_t limit=255) |
Maximize the brightness of this CRGB object. | |
FASTLED_FORCE_INLINE CRGB | lerp8 (const CRGB &other, fract8 frac) const |
Return a new CRGB object after performing a linear interpolation between this object and the passed in object. | |
FASTLED_FORCE_INLINE CRGB | lerp16 (const CRGB &other, fract16 frac) const |
Return a new CRGB object after performing a linear interpolation between this object and the passed in object. | |
FASTLED_FORCE_INLINE uint8_t | getParity () |
Returns 0 or 1, depending on the lowest bit of the sum of the color components. | |
FASTLED_FORCE_INLINE void | setParity (uint8_t parity) |
Adjusts the color in the smallest way possible so that the parity of the coloris now the desired value. | |
Static Public Member Functions | |
static CRGB | blend (const CRGB &p1, const CRGB &p2, fract8 amountOfP2) |
static CRGB | computeAdjustment (uint8_t scale, const CRGB &colorCorrection, const CRGB &colorTemperature) |
Calculates the combined color adjustment to the LEDs at a given scale, color correction, and color temperature. | |
Public Attributes | ||
union { | ||
struct { | ||
union { | ||
uint8_t CRGB::r | ||
Red channel value. More... | ||
uint8_t CRGB::red | ||
Red channel value. More... | ||
} | ||
union { | ||
uint8_t CRGB::g | ||
Green channel value. More... | ||
uint8_t CRGB::green | ||
Green channel value. More... | ||
} | ||
union { | ||
uint8_t CRGB::b | ||
Blue channel value. More... | ||
uint8_t CRGB::blue | ||
Blue channel value. More... | ||
} | ||
} | ||
uint8_t CRGB::raw [3] | ||
Access the red, green, and blue data as an array. More... | ||
}; | ||