Go to the source code of this file.
|
| namespace | fl |
| | Base definition for an LED controller.
|
| |
| namespace | fl::detail |
| | Compile-time linker keep-alive hook for a single fl::Bus.
|
| |
|
| bool | fl::buildRgbSolveMatrixFromQ16 (const EmitterChromaticitiesQ16 &profile, EmitterSolveMatrixQ16 *out) FL_NO_EXCEPT |
| | Build the inverse emitter matrix from a Q16 profile, without floats.
|
| |
| bool | fl::buildRgbSolveMatrixQ16 (const colorimetric_response::EmitterProfile &profile, EmitterSolveMatrixQ16 *out) FL_NO_EXCEPT |
| | Invert the emitter matrix for a three-emitter profile.
|
| |
| i32 | fl::detail::dotRowQ16 (const i32(&row)[3], const i32(&v)[3]) FL_NO_EXCEPT |
| | One s16.16 matrix row against a vector, rounded and saturated.
|
| |
| bool | fl::invert3x3Q16 (const i32(&in)[3][3], i32(&out)[3][3]) FL_NO_EXCEPT |
| | Inverse of an s16.16 3x3 matrix, in s16.16, computed without floats.
|
| |
| bool | fl::q16FromFloatBits (float value, i32 *out) FL_NO_EXCEPT |
| | s16.16 of a float, rounded to nearest, computed from its IEEE-754 bits with integer arithmetic only – no soft-float helper on a part without an FPU (FastLED#4458).
|
| |
| i64 | fl::detail::roundedDivideQ16 (i64 numerator, i64 denominator) FL_NO_EXCEPT |
| | The s16.16 building blocks the bind-time builders share.
|
| |
| void | fl::solveRgbDrivesQ16 (const EmitterSolveMatrixQ16 &matrix, const i32(&xyz)[3], i32(&drives)[3]) FL_NO_EXCEPT |
| | One pixel: XYZ in s16.16 to three emitter drives in s16.16.
|
| |
| bool | fl::detail::xyzColumnQ16 (const i32(&xy)[2], i32 luminance, i64(&column)[3]) FL_NO_EXCEPT |
| | XYZ of chromaticity xy at luminance luminance, all s16.16; false for a non-positive or out-of-simplex chromaticity or a non-positive luminance.
|
| |
◆ fl::EmitterChromaticitiesQ16
| struct fl::EmitterChromaticitiesQ16 |
| Class Members |
|
i32 |
lum_b |
|
|
i32 |
lum_g |
|
|
i32 |
lum_r |
Peak luminance per emitter relative to source white, s16.16. |
|
i32 |
xy_b[2] |
|
|
i32 |
xy_g[2] |
|
|
i32 |
xy_r[2] |
CIE 1931 xy per emitter, s16.16, so 0.64 is 41943. |
◆ fl::EmitterSolveMatrixQ16
| struct fl::EmitterSolveMatrixQ16 |
| Class Members |
|
i32 |
m[3][3] |
|