22template <
typename T>
class LUT;
35template <
typename T>
class LUT {
69 u32
pos = u32(alpha) * maxIndex;
71 u32 idx1 = idx0 < maxIndex ? idx0 + 1 : maxIndex;
74 const T &a =
data[idx0];
75 const T &b =
data[idx1];
77 return a + (b - a) *
blend / 255;
90 u32
pos = u32(alpha) * maxIndex;
91 u32 idx0 =
pos / 65535;
92 u32 idx1 = idx0 < maxIndex ? idx0 + 1 : maxIndex;
95 const T &a =
data[idx0];
96 const T &b =
data[idx1];
98 return a + (b - a) *
blend / 65535;
const T & operator[](u16 index) const FL_NOEXCEPT
T interp16(u16 alpha) FL_NOEXCEPT
LUT(u32 length, T *data) FL_NOEXCEPT
const T & operator[](u32 index) const FL_NOEXCEPT
fl::unique_ptr< u16 > mDataHandle
T * getDataMutable() FL_NOEXCEPT
const T * getData() const FL_NOEXCEPT
u32 size() const FL_NOEXCEPT
T interp8(u8 alpha) FL_NOEXCEPT
LUT(u32 length) FL_NOEXCEPT
static void Free(T *p) FL_NOEXCEPT
static T * Alloc(fl::size n) FL_NOEXCEPT
LUT< vec2< u16 > > LUTXY16
CRGB blend(const CRGB &p1, const CRGB &p2, fract8 amountOfP2)
Base definition for an LED controller.
#define FASTLED_SHARED_PTR_NO_FWD(type)