Lumitronix_Iflex_Pro_Workshop
Library to interact with the iFlexPro
Rgb16Color Struct Reference

#include <Rgb16Color.h>

Inheritance diagram for Rgb16Color:
RgbColorBase

Public Types

typedef NeoRgbCurrentSettings SettingsObject
 

Public Member Functions

 Rgb16Color (uint8_t r, uint8_t g, uint8_t b)
 
 Rgb16Color (uint8_t brightness)
 
 Rgb16Color (uint16_t color)
 
 Rgb16Color (const RgbColor &color)
 
 Rgb16Color (const HtmlColor &color)
 
 Rgb16Color (const HslColor &color)
 
 Rgb16Color (const HsbColor &color)
 
 Rgb16Color ()
 
void setR (uint8_t r)
 
uint8_t getR () const
 
void setG (uint8_t g)
 
uint8_t getG () const
 
void setB (uint8_t b)
 
uint8_t getB () const
 
uint8_t operator[] (size_t idx) const
 
bool operator== (const Rgb16Color &other) const
 
bool operator!= (const Rgb16Color &other) const
 
uint8_t CalculateBrightness () const
 
Rgb16Color Dim (uint8_t ratio) const
 
Rgb16Color Brighten (uint8_t ratio) const
 
void Darken (uint8_t delta)
 
void Lighten (uint8_t delta)
 
uint32_t CalcTotalTenthMilliAmpere (const SettingsObject &settings)
 

Static Public Member Functions

static Rgb16Color LinearBlend (const Rgb16Color &left, const Rgb16Color &right, float progress)
 
static Rgb16Color LinearBlend (const Rgb16Color &left, const Rgb16Color &right, uint8_t progress)
 
static Rgb16Color BilinearBlend (const Rgb16Color &c00, const Rgb16Color &c01, const Rgb16Color &c10, const Rgb16Color &c11, float x, float y)
 

Public Attributes

uint16_t Color565
 

Static Public Attributes

static const uint8_t Max = 255
 
static const size_t Count = 3
 

Additional Inherited Members

- Static Protected Member Functions inherited from RgbColorBase
static float _CalcColor (float p, float q, float t)
 
static void _HslToRgb (const HslColor &color, float *r, float *g, float *b)
 
static void _HsbToRgb (const HsbColor &color, float *r, float *g, float *b)
 
template<typename T_COLOR , typename T_RESULT >
static T_RESULT _Compare (const T_COLOR &left, const T_COLOR &right, T_RESULT epsilon)
 

Member Typedef Documentation

◆ SettingsObject

Constructor & Destructor Documentation

◆ Rgb16Color() [1/8]

Rgb16Color::Rgb16Color ( uint8_t  r,
uint8_t  g,
uint8_t  b 
)
inline

◆ Rgb16Color() [2/8]

Rgb16Color::Rgb16Color ( uint8_t  brightness)
inline

◆ Rgb16Color() [3/8]

Rgb16Color::Rgb16Color ( uint16_t  color)
inline

◆ Rgb16Color() [4/8]

Rgb16Color::Rgb16Color ( const RgbColor color)
inline

◆ Rgb16Color() [5/8]

Rgb16Color::Rgb16Color ( const HtmlColor color)
inline

◆ Rgb16Color() [6/8]

Rgb16Color::Rgb16Color ( const HslColor color)
inline

◆ Rgb16Color() [7/8]

Rgb16Color::Rgb16Color ( const HsbColor color)
inline

◆ Rgb16Color() [8/8]

Rgb16Color::Rgb16Color ( )
inline

Member Function Documentation

◆ BilinearBlend()

static Rgb16Color Rgb16Color::BilinearBlend ( const Rgb16Color c00,
const Rgb16Color c01,
const Rgb16Color c10,
const Rgb16Color c11,
float  x,
float  y 
)
inlinestatic

◆ Brighten()

Rgb16Color Rgb16Color::Brighten ( uint8_t  ratio) const
inline

◆ CalcTotalTenthMilliAmpere()

uint32_t Rgb16Color::CalcTotalTenthMilliAmpere ( const SettingsObject settings)
inline

◆ CalculateBrightness()

uint8_t Rgb16Color::CalculateBrightness ( ) const
inline

◆ Darken()

void Rgb16Color::Darken ( uint8_t  delta)
inline

◆ Dim()

Rgb16Color Rgb16Color::Dim ( uint8_t  ratio) const
inline

◆ getB()

uint8_t Rgb16Color::getB ( ) const
inline

◆ getG()

uint8_t Rgb16Color::getG ( ) const
inline

◆ getR()

uint8_t Rgb16Color::getR ( ) const
inline

◆ Lighten()

void Rgb16Color::Lighten ( uint8_t  delta)
inline

◆ LinearBlend() [1/2]

static Rgb16Color Rgb16Color::LinearBlend ( const Rgb16Color left,
const Rgb16Color right,
float  progress 
)
inlinestatic

◆ LinearBlend() [2/2]

static Rgb16Color Rgb16Color::LinearBlend ( const Rgb16Color left,
const Rgb16Color right,
uint8_t  progress 
)
inlinestatic

◆ operator!=()

bool Rgb16Color::operator!= ( const Rgb16Color other) const
inline

◆ operator==()

bool Rgb16Color::operator== ( const Rgb16Color other) const
inline

◆ operator[]()

uint8_t Rgb16Color::operator[] ( size_t  idx) const
inline

◆ setB()

void Rgb16Color::setB ( uint8_t  b)
inline

◆ setG()

void Rgb16Color::setG ( uint8_t  g)
inline

◆ setR()

void Rgb16Color::setR ( uint8_t  r)
inline

Member Data Documentation

◆ Color565

uint16_t Rgb16Color::Color565

◆ Count

const size_t Rgb16Color::Count = 3
static

◆ Max

const uint8_t Rgb16Color::Max = 255
static