Lamp-Da 0.1
A compact lantern project
Loading...
Searching...
No Matches
Classes | Namespaces | Functions | Variables
utils.hpp File Reference

Manipulate color representations. More...

Go to the source code of this file.

Classes

struct  lampda::modes::colors::ToRGB
 Exposes (r, g, b) as uint8_t in struct from a single uint32_t color. More...
 

Namespaces

namespace  lampda
 Program scope.
 
namespace  lampda::modes
 Contains basic interface types to implement custom user modes.
 
namespace  lampda::modes::colors
 Tools to manipulate colors and their representation.
 

Functions

static constexpr LMBD_INLINE uint32_t lampda::modes::colors::fromRGB (uint8_t r, uint8_t g, uint8_t b)
 Return color (r, g, b) as a single uint32_t integer.
 
static constexpr LMBD_INLINE uint32_t lampda::modes::colors::fromGrey (uint32_t w)
 Return color (w, w, w) as a single uint32_t integer.
 
static constexpr LMBD_INLINE uint32_t lampda::modes::colors::fromAngleHue (uint16_t angleDegrees)
 Given a 360 degrees angle, return a corresponding color as an integer.
 
template<typename UIntTy = uint8_t>
static constexpr uint32_t lampda::modes::colors::blend (uint32_t leftColor, uint32_t rightColor, UIntTy blendIndex)
 blend to two colors
 
template<bool isVideoMode = false>
static uint32_t lampda::modes::colors::fade (uint32_t inputColor, uint8_t fadeAmount)
 fade the color toward black
 
template<bool isFast = false>
uint32_t lampda::modes::colors::add (uint32_t c1, uint32_t c2)
 Add two colors together.
 
static constexpr uint16_t lampda::modes::colors::get_compressed_16b_color (uint32_t color)
 
static constexpr uint32_t lampda::modes::colors::get_decompressed_32b_color (uint16_t color)
 

Variables

static constexpr uint8_t lampda::modes::colors::colorRotation [360]
 precompiled table for Hue
 
static constexpr uint8_t lampda::modes::colors::__internal::hicolor_256_to_32 []
 
static constexpr uint8_t lampda::modes::colors::__internal::hicolor_256_to_64 []
 
static constexpr uint8_t lampda::modes::colors::__internal::hicolor_32_to_256 []
 
static constexpr uint8_t lampda::modes::colors::__internal::hicolor_64_to_256 []
 

Detailed Description

Manipulate color representations.

Variable Documentation

◆ hicolor_256_to_32

constexpr uint8_t lampda::modes::colors::__internal::hicolor_256_to_32[]
staticconstexpr
Initial value:
= {
0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3,
3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6,
6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12,
13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16,
16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19,
19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22,
22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 25, 25,
26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 28, 29, 29,
29, 29, 29, 29, 29, 29, 30, 30, 30, 30, 30, 30, 30, 30, 31, 31, 31, 31, 31, 31, 31, 31}

◆ hicolor_256_to_64

constexpr uint8_t lampda::modes::colors::__internal::hicolor_256_to_64[]
staticconstexpr
Initial value:
= {
0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6,
6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12,
13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19,
19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22, 23, 23, 23, 23, 24, 24, 24, 24, 25, 25, 25, 25,
26, 26, 26, 26, 27, 27, 27, 27, 28, 28, 28, 28, 29, 29, 29, 29, 30, 30, 30, 30, 31, 31, 31, 31, 32, 32,
32, 32, 33, 33, 33, 33, 34, 34, 34, 34, 35, 35, 35, 35, 36, 36, 36, 36, 37, 37, 37, 37, 38, 38, 38, 38,
39, 39, 39, 39, 40, 40, 40, 40, 41, 41, 41, 41, 42, 42, 42, 42, 43, 43, 43, 43, 44, 44, 44, 44, 45, 45,
45, 45, 46, 46, 46, 46, 47, 47, 47, 47, 48, 48, 48, 48, 49, 49, 49, 49, 50, 50, 50, 50, 51, 51, 51, 51,
52, 52, 52, 52, 53, 53, 53, 53, 54, 54, 54, 54, 55, 55, 55, 55, 56, 56, 56, 56, 57, 57, 57, 57, 58, 58,
58, 58, 59, 59, 59, 59, 60, 60, 60, 60, 61, 61, 61, 61, 62, 62, 62, 62, 63, 63, 63, 63}

◆ hicolor_32_to_256

constexpr uint8_t lampda::modes::colors::__internal::hicolor_32_to_256[]
staticconstexpr
Initial value:
= {0, 8, 16, 24, 33, 41, 49, 57, 66, 74, 82,
90, 99, 107, 115, 123, 132, 140, 148, 156, 165, 173,
181, 189, 198, 206, 214, 222, 231, 239, 247, 255}

◆ hicolor_64_to_256

constexpr uint8_t lampda::modes::colors::__internal::hicolor_64_to_256[]
staticconstexpr
Initial value:
= {
0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 65, 69, 73, 77, 81, 85,
89, 93, 97, 101, 105, 109, 113, 117, 121, 125, 130, 134, 138, 142, 146, 150, 154, 158, 162, 166, 170, 174,
178, 182, 186, 190, 195, 199, 203, 207, 211, 215, 219, 223, 227, 231, 235, 239, 243, 247, 251, 255}