|
FastLED 3.10.6
|
A compile-time profile channel.
Its identity is carried solely in the vtable override; it adds no per-instance profile pointer or owned storage.
#include <channel.h>
Inheritance diagram for fl::StaticProfileChannel< Profile >:
Collaboration diagram for fl::StaticProfileChannel< Profile >:Public Member Functions | |
| StaticProfileChannel (const ChannelConfig &config) FL_NO_EXCEPT | |
Public Member Functions inherited from fl::Channel | |
| virtual | ~Channel () FL_NO_EXCEPT |
| Destructor. | |
| void | addToDrawList () |
| Add this channel to the global controller draw list. | |
| void | applyConfig (const ChannelConfig &config) |
| Apply reconfigurable settings from a ChannelConfig. | |
| CLEDController * | asController () |
| Get pointer to base CLEDController for linked list traversal. | |
| const CLEDController * | asController () const |
| ColorProfileStatus | colorProfileStatus () const FL_NO_EXCEPT |
| u8 | ditherPhase () const FL_NO_EXCEPT |
| Where this channel is in its dither cycle: the number of frames its driver has accepted, mod 256 (#4347). | |
| const EmitterProfile * | emitterProfile () const FL_NO_EXCEPT |
| const ChipsetVariant & | getChipset () const |
| Get the chipset configuration variant. | |
| int | getClockPin () const |
| Get the clock pin for this channel (SPI only, -1 for clockless) | |
| CRGB | getCorrection () |
| Get the color correction. | |
| u8 | getDither () |
| Get the dither mode. | |
| fl::string | getEngineName () const |
| Get the name of the currently bound driver (if any) | |
| fl::optional< float > | getGamma () const |
| Get gamma correction value. | |
| int | getPin () const |
| Get the pin number for this channel (data pin) | |
| EOrder | getRgbOrder () const |
| Get the RGB channel ordering. | |
| Rgbw | getRgbw () const |
| Get the RGBW conversion mode. | |
| const fl::ScreenMap & | getScreenMap () const |
| Get the current screen map. | |
| CRGB | getTemperature () |
| Get the color temperature. | |
| const ChipsetTimingConfig & | getTiming () const |
| Get the timing configuration for this channel (clockless only) | |
| bool | hasColorProfile () const FL_NO_EXCEPT |
| bool | hasColorProfileFallback () const FL_NO_EXCEPT |
| bool | hasScreenMap () const |
| Check if screen map is configured. | |
| i32 | id () const override |
| Get the channel ID. | |
| bool | isClockless () const |
| Check if this is a clockless chipset. | |
| bool | isColorManaged () const FL_NO_EXCEPT |
True when the streaming transform is actually installed in the output path, which is not the same question as hasColorProfile(): a binding can be accepted and still fail to build a usable pipeline, and that channel stays on the legacy path. | |
| bool | isEnabled () const FL_NO_EXCEPT |
| bool | isInDrawList () const |
| Check if this channel is in the controller draw list. | |
| bool | isSpi () const |
| Check if this is an SPI chipset. | |
| fl::span< CRGB > | leds () |
| Get the LED array as a span (non-const) | |
| fl::span< const CRGB > | leds () const |
| Get the LED array as a span (const) | |
| const fl::string & | name () const override |
| Get the channel name. | |
| bool | profileBindingAccepted () const FL_NO_EXCEPT |
| void | removeFromDrawList () |
| Remove this channel from the global controller draw list. | |
| Channel & | setGamma (float gamma) |
| Set gamma correction value. | |
| Channel & | setScreenMap (const fl::ScreenMap &map) |
| Set screen map for JS canvas visualization. | |
| Channel & | setScreenMap (const fl::XMap &map) |
| Set screen map for 1D strip remapping from XMap. | |
| Channel & | setScreenMap (const fl::XYMap &map, float diameter=-1.f) |
| Set screen map for JS canvas visualization from XYMap. | |
| Channel & | setScreenMap (fl::u16 width, fl::u16 height, float diameter=-1.f) |
| Set screen map for JS canvas visualization from dimensions. | |
| void | showLeds (u8 brightness=255) OVERRIDE_IF_NOT_AVR |
| Show the LEDs with optional brightness scaling. | |
| int | size () const override |
| Get the number of LEDs in this channel. | |
| const SourceProfile & | sourceProfile () const FL_NO_EXCEPT |
| Chromaticity | targetWhite () const FL_NO_EXCEPT |
Public Member Functions inherited from CPixelLEDController< RGB > | |
| CPixelLEDController () | |
| int | lanes () override |
| Get the number of lanes of the Controller. | |
| virtual void | showPixels (PixelController< RGB_ORDER, 1, 0xFFFFFFFF > &pixels)=0 |
| Send the LED data to the strip. | |
Public Member Functions inherited from fl::CLEDController | |
| CLEDController () FL_NO_EXCEPT | |
| Create an led controller object, add it to the chain of controllers. | |
| VIRTUAL_IF_NOT_AVR | ~CLEDController () FL_NO_EXCEPT |
| void | addToList () FL_NO_EXCEPT |
| Add this controller to the linked list. | |
| virtual void * | beginShowLeds (int size) FL_NO_EXCEPT |
| void | bindStaticEmitterProfile (const EmitterProfile *profile) FL_NO_EXCEPT |
| void | clearLedDataInternal (int nLeds=-1) FL_NO_EXCEPT |
| Zero out the LED data managed by this controller. | |
| VIRTUAL_IF_NOT_AVR void | clearLeds (int nLeds=-1) FL_NO_EXCEPT |
| Clear out/zero out the given number of LEDs. | |
| CLEDController & | clearWhiteChannel () FL_NO_EXCEPT |
| Reset this channel to plain 3-channel RGB (clears any RGBW/RGBWW configuration). | |
| const EmitterProfile * | emitterProfile () const FL_NO_EXCEPT |
| virtual void | endShowLeds (void *data) FL_NO_EXCEPT |
| CRGB | getAdjustment (fl::u8 scale) FL_NO_EXCEPT |
| Get the combined brightness/color adjustment for this controller. | |
| ColorAdjustment | getAdjustmentData (fl::u8 brightness) FL_NO_EXCEPT |
| CRGB | getCorrection () FL_NO_EXCEPT |
| Get the correction value used by this controller. | |
| fl::u8 | getDither () const FL_NO_EXCEPT |
| Get the dithering option currently set for this controller. | |
| bool | getEnabled () FL_NO_EXCEPT |
| virtual fl::u16 | getMaxRefreshRate () const FL_NO_EXCEPT |
| Gets the maximum possible refresh rate of the strip. | |
| Rgbw | getRgbw () const FL_NO_EXCEPT |
| Rgbww | getRgbww () const FL_NO_EXCEPT |
| CRGB | getTemperature () FL_NO_EXCEPT |
| Get the color temperature, aka white point, for this controller. | |
| bool | isInList () const FL_NO_EXCEPT |
| Check if this controller is in the linked list. | |
| const CRGB * | leds () const FL_NO_EXCEPT |
| Const pointer to the CRGB array for this controller. | |
| CRGB * | leds () FL_NO_EXCEPT |
| Pointer to the CRGB array for this controller. | |
| fl::span< CRGB > | ledsSpan () FL_NO_EXCEPT |
| Span of LEDs managed by this controller. | |
| const CLEDController * | next () const FL_NO_EXCEPT |
| Get the next controller in the linked list after this one (const version). | |
| CLEDController * | next () FL_NO_EXCEPT |
| Get the next controller in the linked list after this one. | |
| CRGB & | operator[] (int x) FL_NO_EXCEPT |
| Reference to the n'th LED managed by the controller. | |
| void | removeFromDrawList () FL_NO_EXCEPT |
| Remove this controller from the draw list. | |
| CLEDController & | setCorrection (CRGB correction) FL_NO_EXCEPT |
| The color corrction to use for this controller, expressed as a CRGB object. | |
| CLEDController & | setCorrection (LEDColorCorrection correction) FL_NO_EXCEPT |
| The color corrction to use for this controller, expressed as a CRGB object. | |
| CLEDController & | setDither (fl::u8 ditherMode=BINARY_DITHER) FL_NO_EXCEPT |
| Set the dithering mode for this controller to use. | |
| void | setEnabled (bool enabled) FL_NO_EXCEPT |
| CLEDController & | setLeds (CRGB *data, int nLeds) FL_NO_EXCEPT |
| Set the default array of LEDs to be used by this controller. | |
| CLEDController & | setLeds (fl::span< CRGB > leds) FL_NO_EXCEPT |
| Set the default array of LEDs to be used by this controller (span version) | |
| CLEDController & | setRgbw (const Rgbw &arg=RgbwDefault::value()) FL_NO_EXCEPT |
| CLEDController & | setRgbww (const Rgbww &arg=RgbwwDefault::value()) FL_NO_EXCEPT |
| Configure this channel for 5-channel RGBWW (RGB + warm-W + cool-W) output. | |
| CLEDController & | setScreenMap (const fl::ScreenMap &map) FL_NO_EXCEPT |
| CLEDController & | setScreenMap (const fl::XYMap &map, float diameter=-1.f) FL_NO_EXCEPT |
| CLEDController & | setScreenMap (fl::u16 width, fl::u16 height, float diameter=-1.f) FL_NO_EXCEPT |
| virtual CLEDController & | setSpiBus (Esp32SpiBus bus) FL_NO_EXCEPT |
| Select an ESP-IDF SPI host for this clocked controller before init(). | |
| CLEDController & | setTemperature (ColorTemperature temperature) FL_NO_EXCEPT |
| Set the color temperature, aka white point, for this controller. | |
| CLEDController & | setTemperature (CRGB temperature) FL_NO_EXCEPT |
| Set the color temperature, aka white point, for this controller. | |
| void | showColorInternal (const CRGB &data, fl::u8 brightness) FL_NO_EXCEPT |
| void | showColorInternal (const CRGB &data, int nLeds, fl::u8 brightness) FL_NO_EXCEPT |
| void | showInternal (const CRGB *data, int nLeds, fl::u8 brightness) FL_NO_EXCEPT |
| VIRTUAL_IF_NOT_AVR void | showLeds (fl::u8 brightness) FL_NO_EXCEPT |
| void | showLedsInternal (fl::u8 brightness) FL_NO_EXCEPT |
| Write the data to the LEDs managed by this controller. | |
Public Member Functions inherited from fl::IChannel | |
| virtual | ~IChannel () FL_NO_EXCEPT=default |
Protected Member Functions | |
| const EmitterProfile * | staticEmitterProfile () const FL_NO_EXCEPT override |
| Template-derived static-profile controllers override this hook. | |
Protected Member Functions inherited from fl::Channel | |
| void | init () override |
| Initialize the LED controller. | |
| void | showPixels (PixelController< RGB, 1, 0xFFFFFFFF > &pixels) override |
Protected Member Functions inherited from CPixelLEDController< RGB > | |
| CPixelLEDController (RegistrationMode mode) | |
| Protected constructor with registration mode. | |
| virtual void | show (const CRGB *data, int nLeds, fl::u8 brightness) override |
| Write the passed in RGB data out to the LEDs managed by this controller. | |
| virtual void | showColor (const CRGB &data, int nLeds, fl::u8 brightness) override |
| Set all the LEDs on the controller to a given color. | |
Protected Member Functions inherited from fl::CLEDController | |
| CLEDController (RegistrationMode mode) FL_NO_EXCEPT | |
| Protected constructor with registration mode. | |
| void | applyRgbw (const Rgbw &arg) FL_NO_EXCEPT |
| void | clearStaticProfileForLegacySettings () FL_NO_EXCEPT |
| virtual const char * | fixedWhiteChannelChipset () const FL_NO_EXCEPT |
| Return the name of a chipset whose wire format owns its white-channel policy. | |
| bool | rejectFixedWhiteChannelChange (const char *operation) const FL_NO_EXCEPT |
| void | setFixedRgbw (const Rgbw &arg) FL_NO_EXCEPT |
| Configure a chipset-owned RGBW policy that public white-channel setters cannot replace. | |
| bool | staticProfileCleared () const FL_NO_EXCEPT |
Protected Member Functions inherited from fl::IChannel | |
| IChannel () FL_NO_EXCEPT=default | |
| IChannel (const IChannel &) FL_NO_EXCEPT=delete | |
| IChannel (IChannel &&) FL_NO_EXCEPT=delete | |
| IChannel & | operator= (const IChannel &) FL_NO_EXCEPT=delete |
| IChannel & | operator= (IChannel &&) FL_NO_EXCEPT=delete |
Additional Inherited Members | |
Static Public Member Functions inherited from fl::Channel | |
| static ChannelPtr | create (const ChannelConfig &config) |
Create a new channel with optional mBus driver pinning. | |
| template<const EmitterProfile & Profile> | |
| static ChannelPtr | create (const ChannelConfig &config) FL_NO_EXCEPT |
| template<ProfileId Id> | |
| static ChannelPtr | create (const ChannelConfig &config) FL_NO_EXCEPT |
Static Public Member Functions inherited from fl::CLEDController | |
| static CLEDController * | head () FL_NO_EXCEPT |
| Get the first LED controller in the linked list of controllers. | |
| static void | removeFromList (CLEDController *controller) FL_NO_EXCEPT |
| Remove a controller from the linked list. | |
| template<typename Visitor> | |
| static void | visitControllers (Visitor &&visitor) FL_NO_EXCEPT |
| Visit all controllers in the linked list with a visitor The visitor must be a callable that accepts (const CLEDController*, fl::span<const CRGB>) | |
Static Public Attributes inherited from CPixelLEDController< RGB > | |
| static const int | LANES_VALUE |
| The number of lanes for this controller. | |
| static const fl::u32 | MASK_VALUE |
| The mask for the lanes for this controller. | |
| static const EOrder | RGB_ORDER_VALUE |
| The RGB ordering for this controller. | |
Protected Types inherited from fl::Channel | |
| using | PixelEncoder |
Protected Types inherited from fl::CLEDController | |
| enum class | RegistrationMode { AutoRegister , DeferRegister } |
| Registration mode for constructor. More... | |
| enum | StateFlags : u8 { kEnabled = 1 << 0 , kStaticProfileCleared = 1 << 1 } |
Protected Attributes inherited from fl::CLEDController | |
| fl::span< CRGB > | mLeds |
| span of LED data used by this controller | |
| CLEDController * | mPNext = nullptr |
| pointer to the next LED controller in the linked list | |
| ChannelOptions | mSettings |
| Optional channel settings (correction, temperature, dither, rgbw, affinity) | |
| u8 | mStateFlags = kEnabled |
Static Protected Attributes inherited from fl::CLEDController | |
| static CLEDController * | mPHead = nullptr |
| pointer to the first LED controller in the linked list | |
| static CLEDController * | mPTail = nullptr |
| pointer to the last LED controller in the linked list | |