FastLED 3.10.6
Loading...
Searching...
No Matches
chromatic_adaptation.cpp.hpp File Reference
+ Include dependency graph for chromatic_adaptation.cpp.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  fl
 Base definition for an LED controller.
 
namespace  fl::anonymous_namespace{chromatic_adaptation.cpp.hpp}
 
namespace  fl::detail
 Compile-time linker keep-alive hook for a single fl::Bus.
 

Functions

bool fl::anonymous_namespace{chromatic_adaptation.cpp.hpp}::adaptationWhiteQ16 (Chromaticity c, i32(&out)[2]) FL_NO_EXCEPT
 A white point, converted from float by its bits, inside the open unit square with a non-zero y – the float check (NaN, 0 < x < 1, 1e-6 < y < 1) with y's floor at one s16.16 step.
 
void fl::adaptXyzQ16 (const AdaptationMatrixQ16 &matrix, const i32(&xyz)[3], i32(&out_xyz)[3]) FL_NO_EXCEPT
 Adapt one XYZ triple.
 
bool fl::buildBradfordMatrixQ16 (Chromaticity source_white, Chromaticity destination_white, AdaptationMatrixQ16 *out) FL_NO_EXCEPT
 Build the Bradford transform from source_white to destination_white.
 
i32 fl::anonymous_namespace{chromatic_adaptation.cpp.hpp}::dotAdaptationRowQ16 (const i32(&row)[3], const i32(&v)[3]) FL_NO_EXCEPT
 
void fl::foldAdaptationIntoSourceMatrix (const AdaptationMatrixQ16 &adaptation, SourceMatrixQ16 *source) FL_NO_EXCEPT
 Pre-multiply the adaptation into a source matrix, in place.
 

Variables

constexpr i32 fl::anonymous_namespace{chromatic_adaptation.cpp.hpp}::kAdaptationQ16One = 65536
 
const float fl::detail::kBradford [3][3]
 ICC linear Bradford cone-response matrix.
 
const float fl::detail::kBradfordInverse [3][3]
 Its inverse, precomputed.
 
const i32 fl::detail::kBradfordInverseQ16 [3][3]
 
const i32 fl::detail::kBradfordQ16 [3][3]
 The two matrices above in s16.16, rounded from the float32 values, so the bind-time build needs no float (FastLED#4458).