uint32_t get_index_in_parent_() const
Internal method to find this effect's index in the parent light's effect list.
LightEffect(const char *name)
virtual void init()
Internal method called by the LightState when this light effect is registered in it.
virtual void start()
Initialize this LightEffect. Will be called once after creation.
uint32_t get_index() const
Get the index of this effect in the parent light's effect list.
virtual void apply()=0
Apply this effect. Use the provided state for starting transitions, ...
LightState * get_light_state() const
Get a reference to the parent light state.
const char * get_name() const
Returns the name of this effect.
virtual void stop()
Called when this effect is about to be removed.
virtual void start_internal()
void init_internal(LightState *state)
bool is_active() const
Check if this effect is currently active.
This class represents the communication layer between the front-end MQTT layer and the hardware outpu...
Providing packet encoding functions for exchanging data with a remote host.