FastLED 3.10.8
Loading...
Searching...
No Matches
pixel_iterator.h File Reference

Detailed Description

Non-templated low level pixel data writing class.

Definition in file pixel_iterator.h.

+ Include dependency graph for pixel_iterator.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  fl::detail::OnlyIf< B >
 type exists only when B is true: a self-contained enable_if so the binder below can key on a constant that only PixelController declares. More...
 
struct  fl::detail::OnlyIf< true >
 
struct  fl::PixelControllerVtable< PixelControllerT >
 
class  fl::PixelIterator
 
struct  fl::RawPremixBinder< T, typename >
 Raw-pixel thunk + the source's own colour order, for PixelController sources on non-AVR targets. More...
 
struct  fl::RawPremixBinder< T, typename detail::OnlyIf<(T::kColorOrder==T::kColorOrder)>::type >
 
struct  fl::RgbwLoadBinder< T, typename >
 Per-type RGBW/RGBWW thunks. More...
 
struct  fl::RgbwLoadBinder< T, typename detail::OnlyIf<(T::kColorOrder==T::kColorOrder)>::type >
 Any PixelController (it has kColorOrder): no per-type RGBW/RGBWW thunk at all; RawPremixBinder below supplies the raw pixel and the type-erased conversion does the rest (#4795). More...
 
struct  fl::WideLoadBinder< T, typename >
 Binds the wide thunk only when T declares loadAndScaleRGB16. More...
 
struct  fl::WideLoadBinder< T, decltype(static_cast< void >(fl::declval< T & >().loadAndScaleRGB16(static_cast< u16 * >(nullptr), static_cast< u16 * >(nullptr), static_cast< u16 * >(nullptr))))>
 

Namespaces

namespace  fl
 Base definition for an LED controller.
 
namespace  fl::detail
 Compile-time linker keep-alive hook for a single fl::Bus.
 

Typedefs

typedef void(* fl::advanceDataFunction) (void *pixel_controller)
 
typedef void(* fl::getHdScaleFunction) (void *pixel_controller, u8 *c0, u8 *c1, u8 *c2, u8 *brightness)
 
typedef u8(* fl::globalBrightness) (void *pixel_controller)
 
typedef bool(* fl::hasFunction) (void *pixel_controller, int n)
 
typedef void(* fl::loadAndScaleRGB16Function) (void *pixel_controller, u16 *r_out, u16 *g_out, u16 *b_out)
 
typedef void(* fl::loadAndScaleRGBFunction) (void *pixel_controller, u8 *r_out, u8 *g_out, u8 *b_out)
 
typedef void(* fl::loadAndScaleRGBWFunction) (void *pixel_controller, const Rgbw &rgbw, u8 *b0_out, u8 *b1_out, u8 *b2_out, u8 *b3_out)
 
typedef void(* fl::loadAndScaleRGBWUnorderedFunction) (void *pixel_controller, const Rgbw &rgbw, u8 *r_out, u8 *g_out, u8 *b_out, u8 *w_out)
 
typedef void(* fl::loadAndScaleRGBWWFunction) (void *pixel_controller, Rgbww rgbww, u8 *b0_out, u8 *b1_out, u8 *b2_out, u8 *b3_out, u8 *b4_out)
 
typedef void(* fl::loadAndScaleRGBWWUnorderedFunction) (void *pixel_controller, Rgbww rgbww, u8 *r_out, u8 *g_out, u8 *b_out, u8 *ww_out, u8 *wc_out)
 
typedef void(* fl::loadRawPremixedFunction) (void *pixel_controller, u8 *raw, u8 *premix)
 
typedef void(* fl::loadRGBScaleAndBrightnessFunction) (void *pixel_controller, u8 *c0, u8 *c1, u8 *c2, u8 *brightness)
 
typedef int(* fl::sizeFunction) (void *pixel_controller)
 
typedef void(* fl::stepDitheringFunction) (void *pixel_controller)
 

Class Documentation

◆ fl::detail::OnlyIf

struct fl::detail::OnlyIf
+ Inheritance diagram for fl::detail::OnlyIf< B >:

◆ fl::detail::OnlyIf< true >

struct fl::detail::OnlyIf< true >
+ Inheritance diagram for fl::detail::OnlyIf< true >:
+ Collaboration diagram for fl::detail::OnlyIf< true >:
Class Members
typedef void type