SensESP 3.0.1
Universal Signal K sensor toolkit ESP32
Loading...
Searching...
No Matches
sensesp::RepeatConstantRate< T > Class Template Reference

Repeat transform that emits the last value at a constant interval. More...

#include <sensesp/transforms/repeat.h>

Inheritance diagram for sensesp::RepeatConstantRate< T >:
[legend]

Public Member Functions

 RepeatConstantRate (unsigned long interval, unsigned long max_age)
 
void set (T input) override
 
- Public Member Functions inherited from sensesp::RepeatExpiring< T >
 RepeatExpiring (unsigned long interval, unsigned long max_age)
 
virtual void set (const T &input) override
 
- Public Member Functions inherited from sensesp::Repeat< T, Nullable< T > >
 Repeat (unsigned long interval)
 
- Public Member Functions inherited from sensesp::Transform< T, Nullable< T > >
 Transform (String config_path="")
 
Transform< T, Nullable< T > > * connect_from (ValueProducer< Nullable< T > > *producer0, ValueProducer< Nullable< T > > *producer1=NULL, ValueProducer< Nullable< T > > *producer2=NULL, ValueProducer< Nullable< T > > *producer3=NULL, ValueProducer< Nullable< T > > *producer4=NULL)
 
- Public Member Functions inherited from sensesp::TransformBase
 TransformBase (const String &config_path)
 
- Public Member Functions inherited from sensesp::FileSystemSaveable
 FileSystemSaveable (const String &config_path)
 
virtual bool load () override
 Load and populate the object from a persistent storage.
 
virtual bool save () override
 Save the object to a persistent storage.
 
virtual bool clear () override
 Delete the data from a persistent storage.
 
bool find_config_file (const String &config_path, String &filename)
 
- Public Member Functions inherited from sensesp::Saveable
 Saveable (const String &config_path)
 
virtual bool refresh ()
 Refresh the object. This may or may not access the persistent storage but is not expected to overwrite the object's state.
 
const String & get_config_path () const
 
- Public Member Functions inherited from sensesp::Serializable
virtual bool to_json (JsonObject &root)
 
virtual bool from_json (const JsonObject &root)
 
- Public Member Functions inherited from sensesp::ValueConsumer< T >
virtual void set_input (const T &new_value)
 
void connect_from (ValueProducer< T > *producer)
 
- Public Member Functions inherited from sensesp::ValueProducer< Nullable< T > >
 ValueProducer ()
 
 ValueProducer (const T &initial_value)
 
virtual const T & get () const
 
std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< T, typenameVConsumer::input_type >::value, std::shared_ptr< VConsumer > >::type connect_to (std::shared_ptr< VConsumer > consumer)
 Connect a producer to a transform with a different input type.
 
std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< T, typenameVConsumer::input_type >::value, VConsumer * >::type connect_to (VConsumer *consumer)
 
std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< T, typenameVConsumer::input_type >::value, VConsumer * >::type connect_to (VConsumer &consumer)
 
void emit (const T &new_value)
 
- Public Member Functions inherited from sensesp::Observable
 Observable ()
 
 Observable (Observable &&other)
 Move constructor.
 
void notify ()
 
void attach (std::function< void()> observer)
 

Additional Inherited Members

- Public Types inherited from sensesp::ValueConsumer< T >
using input_type = T
 
- Static Public Member Functions inherited from sensesp::TransformBase
static const std::set< TransformBase * > & get_transforms ()
 
- Protected Member Functions inherited from sensesp::RepeatExpiring< T >
void repeat_function ()
 
- Protected Attributes inherited from sensesp::RepeatExpiring< T >
elapsedMillis age_
 
unsigned long max_age_
 
- Protected Attributes inherited from sensesp::Repeat< T, Nullable< T > >
unsigned long interval_
 
reactesp::RepeatEvent * repeat_event_
 
- Protected Attributes inherited from sensesp::Saveable
const String config_path_
 
- Protected Attributes inherited from sensesp::ValueProducer< Nullable< T > >
output_
 

Detailed Description

template<typename T>
class sensesp::RepeatConstantRate< T >

Repeat transform that emits the last value at a constant interval.

The last value is emitted at a constant interval, regardless of whether the value has changed or not. If the value age exceeds max_age, expired_value is emitted.

This is particularly useful for outputs that expect a value at a constant rate such as NMEA 2000.

Definition at line 168 of file repeat.h.

Constructor & Destructor Documentation

◆ RepeatConstantRate()

template<typename T >
sensesp::RepeatConstantRate< T >::RepeatConstantRate ( unsigned long interval,
unsigned long max_age )
inline

Definition at line 170 of file repeat.h.

Here is the call graph for this function:

Member Function Documentation

◆ set()

template<typename T >
void sensesp::RepeatConstantRate< T >::set ( T input)
inlineoverride

Definition at line 181 of file repeat.h.


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