ESPHome  2021.10.2
Public Member Functions | Protected Member Functions | Protected Attributes
esphome::fastled_base::FastLEDLightOutput Class Reference

#include <fastled_light.h>

Inheritance diagram for esphome::fastled_base::FastLEDLightOutput:
esphome::light::AddressableLight esphome::light::LightOutput esphome::Component

Public Member Functions

CLEDController * get_controller () const
 Only for custom effects: Get the internal controller. More...
 
int32_t size () const override
 
void set_max_refresh_rate (uint32_t interval_us)
 Set a maximum refresh rate in µs as some lights do not like being updated too often. More...
 
CLEDController & add_leds (CLEDController *controller, int num_leds)
 Add some LEDS, can only be called once. More...
 
template<ESPIChipsets CHIPSET, uint8_t DATA_PIN, uint8_t CLOCK_PIN, EOrder RGB_ORDER, uint32_t SPI_DATA_RATE>
CLEDController & add_leds (int num_leds)
 
template<ESPIChipsets CHIPSET, uint8_t DATA_PIN, uint8_t CLOCK_PIN>
CLEDController & add_leds (int num_leds)
 
template<ESPIChipsets CHIPSET, uint8_t DATA_PIN, uint8_t CLOCK_PIN, EOrder RGB_ORDER>
CLEDController & add_leds (int num_leds)
 
template<template< uint8_t DATA_PIN, EOrder RGB_ORDER > class CHIPSET, uint8_t DATA_PIN, EOrder RGB_ORDER>
CLEDController & add_leds (int num_leds)
 
template<template< uint8_t DATA_PIN, EOrder RGB_ORDER > class CHIPSET, uint8_t DATA_PIN>
CLEDController & add_leds (int num_leds)
 
template<template< uint8_t DATA_PIN > class CHIPSET, uint8_t DATA_PIN>
CLEDController & add_leds (int num_leds)
 
template<template< EOrder RGB_ORDER > class CHIPSET, EOrder RGB_ORDER>
CLEDController & add_leds (int num_leds)
 
template<template< EOrder RGB_ORDER > class CHIPSET>
CLEDController & add_leds (int num_leds)
 
template<EBlockChipsets CHIPSET, int NUM_LANES, EOrder RGB_ORDER>
CLEDController & add_leds (int num_leds)
 
template<EBlockChipsets CHIPSET, int NUM_LANES>
CLEDController & add_leds (int num_leds)
 
light::LightTraits get_traits () override
 
void setup () override
 
void dump_config () override
 
void write_state (light::LightState *state) override
 
float get_setup_priority () const override
 
void clear_effect_data () override
 
- Public Member Functions inherited from esphome::light::AddressableLight
ESPColorView operator[] (int32_t index) const
 
ESPColorView get (int32_t index)
 
ESPRangeView range (int32_t from, int32_t to)
 
ESPRangeView all ()
 
ESPRangeIterator begin ()
 
ESPRangeIterator end ()
 
void shift_left (int32_t amnt)
 
void shift_right (int32_t amnt)
 
bool is_effect_active () const
 
void set_effect_active (bool effect_active)
 
std::unique_ptr< LightTransformercreate_default_transition () override
 
void set_correction (float red, float green, float blue, float white=1.0f)
 
void setup_state (LightState *state) override
 
void update_state (LightState *state) override
 
void schedule_show ()
 
void set_power_supply (power_supply::PowerSupply *power_supply)
 
void call_setup () override
 
- Public Member Functions inherited from esphome::Component
virtual void loop ()
 This method will be called repeatedly. More...
 
float get_actual_setup_priority () const
 
void set_setup_priority (float priority)
 
virtual float get_loop_priority () const
 priority of loop(). More...
 
void call ()
 
virtual void on_shutdown ()
 
virtual void on_safe_shutdown ()
 
uint32_t get_component_state () const
 
virtual void mark_failed ()
 Mark this component as failed. More...
 
bool is_failed ()
 
virtual bool can_proceed ()
 
bool status_has_warning ()
 
bool status_has_error ()
 
void status_set_warning ()
 
void status_set_error ()
 
void status_clear_warning ()
 
void status_clear_error ()
 
void status_momentary_warning (const std::string &name, uint32_t length=5000)
 
void status_momentary_error (const std::string &name, uint32_t length=5000)
 
bool has_overridden_loop () const
 
void set_component_source (const char *source)
 Set where this component was loaded from for some debug messages. More...
 
const char * get_component_source () const
 Get the integration where this component was declared as a string. More...
 

Protected Member Functions

light::ESPColorView get_view_internal (int32_t index) const override
 
- Protected Member Functions inherited from esphome::light::AddressableLight
void mark_shown_ ()
 
- Protected Member Functions inherited from esphome::Component
virtual void call_loop ()
 
virtual void call_dump_config ()
 
void set_interval (const std::string &name, uint32_t interval, std::function< void()> &&f)
 Set an interval function with a unique name. More...
 
void set_interval (uint32_t interval, std::function< void()> &&f)
 
bool cancel_interval (const std::string &name)
 Cancel an interval function. More...
 
void set_timeout (uint32_t timeout, std::function< void()> &&f)
 
void set_timeout (const std::string &name, uint32_t timeout, std::function< void()> &&f)
 Set a timeout function with a unique name. More...
 
bool cancel_timeout (const std::string &name)
 Cancel a timeout function. More...
 
void defer (const std::string &name, std::function< void()> &&f)
 Defer a callback to the next loop() call. More...
 
void defer (std::function< void()> &&f)
 Defer a callback to the next loop() call. More...
 
bool cancel_defer (const std::string &name)
 Cancel a defer callback using the specified name, name must not be empty. More...
 

Protected Attributes

CLEDController * controller_ {nullptr}
 
CRGB * leds_ {nullptr}
 
uint8_t * effect_data_ {nullptr}
 
int num_leds_ {0}
 
uint32_t last_refresh_ {0}
 
optional< uint32_t > max_refresh_rate_ {}
 
- Protected Attributes inherited from esphome::light::AddressableLight
bool effect_active_ {false}
 
ESPColorCorrection correction_ {}
 
power_supply::PowerSupplyRequester power_
 
LightStatestate_parent_ {nullptr}
 
- Protected Attributes inherited from esphome::Component
uint32_t component_state_ {0x0000}
 State of this component. More...
 
float setup_priority_override_ {NAN}
 
const char * component_source_ = nullptr
 

Detailed Description

Definition at line 21 of file fastled_light.h.

Member Function Documentation

◆ add_leds() [1/11]

CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( CLEDController *  controller,
int  num_leds 
)
inline

Add some LEDS, can only be called once.

Definition at line 32 of file fastled_light.h.

◆ add_leds() [2/11]

template<ESPIChipsets CHIPSET, uint8_t DATA_PIN, uint8_t CLOCK_PIN, EOrder RGB_ORDER, uint32_t SPI_DATA_RATE>
CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( int  num_leds)
inline

Definition at line 44 of file fastled_light.h.

◆ add_leds() [3/11]

template<ESPIChipsets CHIPSET, uint8_t DATA_PIN, uint8_t CLOCK_PIN>
CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( int  num_leds)
inline

Definition at line 78 of file fastled_light.h.

◆ add_leds() [4/11]

template<ESPIChipsets CHIPSET, uint8_t DATA_PIN, uint8_t CLOCK_PIN, EOrder RGB_ORDER>
CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( int  num_leds)
inline

Definition at line 113 of file fastled_light.h.

◆ add_leds() [5/11]

template<template< uint8_t DATA_PIN, EOrder RGB_ORDER > class CHIPSET, uint8_t DATA_PIN, EOrder RGB_ORDER>
CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( int  num_leds)
inline

Definition at line 149 of file fastled_light.h.

◆ add_leds() [6/11]

template<template< uint8_t DATA_PIN, EOrder RGB_ORDER > class CHIPSET, uint8_t DATA_PIN>
CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( int  num_leds)
inline

Definition at line 155 of file fastled_light.h.

◆ add_leds() [7/11]

template<template< uint8_t DATA_PIN > class CHIPSET, uint8_t DATA_PIN>
CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( int  num_leds)
inline

Definition at line 160 of file fastled_light.h.

◆ add_leds() [8/11]

template<template< EOrder RGB_ORDER > class CHIPSET, EOrder RGB_ORDER>
CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( int  num_leds)
inline

Definition at line 166 of file fastled_light.h.

◆ add_leds() [9/11]

template<template< EOrder RGB_ORDER > class CHIPSET>
CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( int  num_leds)
inline

Definition at line 171 of file fastled_light.h.

◆ add_leds() [10/11]

template<EBlockChipsets CHIPSET, int NUM_LANES, EOrder RGB_ORDER>
CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( int  num_leds)
inline

Definition at line 177 of file fastled_light.h.

◆ add_leds() [11/11]

template<EBlockChipsets CHIPSET, int NUM_LANES>
CLEDController& esphome::fastled_base::FastLEDLightOutput::add_leds ( int  num_leds)
inline

Definition at line 204 of file fastled_light.h.

◆ clear_effect_data()

void esphome::fastled_base::FastLEDLightOutput::clear_effect_data ( )
inlineoverridevirtual

Implements esphome::light::AddressableLight.

Definition at line 221 of file fastled_light.h.

◆ dump_config()

void esphome::fastled_base::FastLEDLightOutput::dump_config ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 20 of file fastled_light.cpp.

◆ get_controller()

CLEDController* esphome::fastled_base::FastLEDLightOutput::get_controller ( ) const
inline

Only for custom effects: Get the internal controller.

Definition at line 24 of file fastled_light.h.

◆ get_setup_priority()

float esphome::fastled_base::FastLEDLightOutput::get_setup_priority ( ) const
inlineoverridevirtual

Reimplemented from esphome::Component.

Definition at line 219 of file fastled_light.h.

◆ get_traits()

light::LightTraits esphome::fastled_base::FastLEDLightOutput::get_traits ( )
inlineoverridevirtual

Implements esphome::light::LightOutput.

Definition at line 211 of file fastled_light.h.

◆ get_view_internal()

light::ESPColorView esphome::fastled_base::FastLEDLightOutput::get_view_internal ( int32_t  index) const
inlineoverrideprotectedvirtual

Implements esphome::light::AddressableLight.

Definition at line 227 of file fastled_light.h.

◆ set_max_refresh_rate()

void esphome::fastled_base::FastLEDLightOutput::set_max_refresh_rate ( uint32_t  interval_us)
inline

Set a maximum refresh rate in µs as some lights do not like being updated too often.

Definition at line 29 of file fastled_light.h.

◆ setup()

void esphome::fastled_base::FastLEDLightOutput::setup ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 11 of file fastled_light.cpp.

◆ size()

int32_t esphome::fastled_base::FastLEDLightOutput::size ( ) const
inlineoverridevirtual

Implements esphome::light::AddressableLight.

Definition at line 26 of file fastled_light.h.

◆ write_state()

void esphome::fastled_base::FastLEDLightOutput::write_state ( light::LightState state)
overridevirtual

Implements esphome::light::LightOutput.

Definition at line 25 of file fastled_light.cpp.

Field Documentation

◆ controller_

CLEDController* esphome::fastled_base::FastLEDLightOutput::controller_ {nullptr}
protected

Definition at line 232 of file fastled_light.h.

◆ effect_data_

uint8_t* esphome::fastled_base::FastLEDLightOutput::effect_data_ {nullptr}
protected

Definition at line 234 of file fastled_light.h.

◆ last_refresh_

uint32_t esphome::fastled_base::FastLEDLightOutput::last_refresh_ {0}
protected

Definition at line 236 of file fastled_light.h.

◆ leds_

CRGB* esphome::fastled_base::FastLEDLightOutput::leds_ {nullptr}
protected

Definition at line 233 of file fastled_light.h.

◆ max_refresh_rate_

optional<uint32_t> esphome::fastled_base::FastLEDLightOutput::max_refresh_rate_ {}
protected

Definition at line 237 of file fastled_light.h.

◆ num_leds_

int esphome::fastled_base::FastLEDLightOutput::num_leds_ {0}
protected

Definition at line 235 of file fastled_light.h.


The documentation for this class was generated from the following files: