FastLED 3.6.0
Loading...
Searching...
No Matches
pixeltypes.h File Reference

Detailed Description

Definitions for pixel color data structs.

Definition in file pixeltypes.h.

#include "FastLED.h"
#include <stdint.h>
#include "lib8tion.h"
#include "color.h"

Go to the source code of this file.

Classes

struct  CHSV
 Representation of an HSV pixel (hue, saturation, value (aka brightness)). More...
 
struct  CRGB
 Representation of an RGB pixel (Red, Green, Blue) More...
 

Enumerations

enum  HSVHue {
  HUE_RED = 0 , HUE_ORANGE = 32 , HUE_YELLOW = 64 , HUE_GREEN = 96 ,
  HUE_AQUA = 128 , HUE_BLUE = 160 , HUE_PURPLE = 192 , HUE_PINK = 224
}
 Pre-defined hue values for CHSV objects. More...
 
enum  EOrder {
  RGB =0012 , RBG =0021 , GRB =0102 , GBR =0120 ,
  BRG =0201 , BGR =0210
}
 RGB color channel orderings, used when instantiating controllers to determine what order the controller should send data out in. More...
 

Functions

void hsv2rgb_rainbow (const CHSV &hsv, CRGB &rgb)
 Forward declaration of hsv2rgb_rainbow here, to avoid circular dependencies.
 
bool operator== (const CRGB &lhs, const CRGB &rhs)
 Check if two CRGB objects have the same color data.
 
bool operator!= (const CRGB &lhs, const CRGB &rhs)
 Check if two CRGB objects do not have the same color data.
 
bool operator== (const CHSV &lhs, const CHSV &rhs)
 Check if two CHSV objects have the same color data.
 
bool operator!= (const CHSV &lhs, const CHSV &rhs)
 Check if two CHSV objects do not have the same color data.
 
bool operator< (const CRGB &lhs, const CRGB &rhs)
 Check if the sum of the color channels in one CRGB object is less than another.
 
bool operator> (const CRGB &lhs, const CRGB &rhs)
 Check if the sum of the color channels in one CRGB object is greater than another.
 
bool operator>= (const CRGB &lhs, const CRGB &rhs)
 Check if the sum of the color channels in one CRGB object is greater than or equal to another.
 
bool operator<= (const CRGB &lhs, const CRGB &rhs)
 Check if the sum of the color channels in one CRGB object is less than or equal to another.
 
CRGB operator+ (const CRGB &p1, const CRGB &p2)
 Add one CRGB to another, saturating at 0xFF for each channel.
 
CRGB operator- (const CRGB &p1, const CRGB &p2)
 Subtract one CRGB from another, saturating at 0x00 for each channel.
 
CRGB operator* (const CRGB &p1, uint8_t d)
 Multiply each of the channels by a constant, saturating each channel at 0xFF.
 
CRGB operator/ (const CRGB &p1, uint8_t d)
 Divide each of the channels by a constant.
 
CRGB operator& (const CRGB &p1, const CRGB &p2)
 Combine two CRGB objects, taking the smallest value of each channel.
 
CRGB operator| (const CRGB &p1, const CRGB &p2)
 Combine two CRGB objects, taking the largest value of each channel.
 
CRGB operator% (const CRGB &p1, uint8_t d)
 Scale using CRGB::nscale8_video()