ESPHome 2025.12.0-dev
Loading...
Searching...
No Matches
esphome::RepeatLoopContinuation< Ts > Class Template Reference

Loop continuation for RepeatAction that increments iteration and repeats or continues. More...

#include <base_automation.h>

Inheritance diagram for esphome::RepeatLoopContinuation< Ts >:
esphome::Action< uint32_t, Ts... >

Public Member Functions

 RepeatLoopContinuation (RepeatAction< Ts... > *parent)
 
void play (const uint32_t &iteration, const Ts &...x) override
 
- Public Member Functions inherited from esphome::Action< uint32_t, Ts... >
virtual void play_complex (const Ts &...x)
 
virtual void stop_complex ()
 
virtual bool is_running ()
 Check if this or any of the following actions are currently running.
 
int num_running_total ()
 The total number of actions that are currently running in this plus any of the following actions in the chain.
 

Protected Attributes

RepeatAction< Ts... > * parent_
 
- Protected Attributes inherited from esphome::Action< uint32_t, Ts... >
friend ActionList< Ts... >
 
Action< Ts... > * next_
 
int num_running_
 The number of instances of this sequence in the list of actions that is currently being executed.
 

Additional Inherited Members

- Protected Member Functions inherited from esphome::Action< uint32_t, Ts... >
virtual void play (const Ts &...x)=0
 
void play_next_ (const Ts &...x)
 
void play_next_tuple_ (const std::tuple< Ts... > &tuple, seq< S... >)
 
void play_next_tuple_ (const std::tuple< Ts... > &tuple)
 
virtual void stop ()
 
void stop_next_ ()
 
bool is_running_next_ ()
 

Detailed Description

template<typename... Ts>
class esphome::RepeatLoopContinuation< Ts >

Loop continuation for RepeatAction that increments iteration and repeats or continues.

Memory: 4-8 bytes (parent pointer) vs 40 bytes (LambdaAction with std::function).

Definition at line 351 of file base_automation.h.

Constructor & Destructor Documentation

◆ RepeatLoopContinuation()

template<typename... Ts>
esphome::RepeatLoopContinuation< Ts >::RepeatLoopContinuation ( RepeatAction< Ts... > * parent)
inlineexplicit

Definition at line 353 of file base_automation.h.

Member Function Documentation

◆ play()

template<typename... Ts>
void esphome::RepeatLoopContinuation< Ts >::play ( const uint32_t & iteration,
const Ts &... x )
override

Definition at line 391 of file base_automation.h.

Field Documentation

◆ parent_

template<typename... Ts>
RepeatAction<Ts...>* esphome::RepeatLoopContinuation< Ts >::parent_
protected

Definition at line 358 of file base_automation.h.


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