|
SensESP 3.4.1-alpha
Universal Signal K sensor toolkit ESP32
|
Outputs the moving average of the last sample_size inputs. More...
#include <sensesp/transforms/moving_average.h>
Public Member Functions | |
| MovingAverage (int sample_size, float multiplier=1.0, const String &config_path="") | |
| virtual void | set (const float &input) override |
| virtual bool | to_json (JsonObject &root) override |
| virtual bool | from_json (const JsonObject &config) override |
Public Member Functions inherited from sensesp::SymmetricTransform< float > | |
| SymmetricTransform (String config_path="") | |
Public Member Functions inherited from sensesp::Transform< C, P > | |
| Transform (String config_path="") | |
| Transform< C, P > * | connect_from (ValueProducer< P > *producer0, ValueProducer< P > *producer1=NULL, ValueProducer< P > *producer2=NULL, ValueProducer< P > *producer3=NULL, ValueProducer< P > *producer4=NULL) |
Public Member Functions inherited from sensesp::TransformBase | |
| TransformBase (const String &config_path) | |
| virtual | ~TransformBase () |
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::ValueConsumer< C > | |
| virtual void | set (const C &new_value) |
| virtual void | set_input (const C &new_value) |
| void | connect_from (ValueProducer< C > *producer) |
Public Member Functions inherited from sensesp::ValueProducer< P > | |
| ValueProducer () | |
| ValueProducer (const P &initial_value) | |
| virtual const P & | get () const |
| std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< P, 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< P, 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< P, typenameVConsumer::input_type >::value, VConsumer * >::type | connect_to (VConsumer &consumer) |
| void | emit (const P &new_value) |
Public Member Functions inherited from sensesp::Observable | |
| Observable () | |
| Observable (Observable &&other) | |
| Move constructor. | |
| void | notify () |
| int | attach (std::function< void()> observer) |
| Attach an observer callback. | |
| void | detach (int id) |
| Remove a previously attached observer by its ID. | |
Additional Inherited Members | |
Public Types inherited from sensesp::ValueConsumer< C > | |
| using | input_type = C |
Static Public Member Functions inherited from sensesp::TransformBase | |
| static const std::set< TransformBase * > & | get_transforms () |
| static void | clear_registry () |
Protected Attributes inherited from sensesp::Saveable | |
| const String | config_path_ |
Protected Attributes inherited from sensesp::ValueProducer< P > | |
| P | output_ |
Outputs the moving average of the last sample_size inputs.
Used to smooth the output of a value (signal) that has frequent variations. For example, the output of a temperature sensor may vary from 180 to 185 several times over a short period, but you just want to see the average of that. MovingAverage outputs the average of the most recent sample_size values. It also incorporates a "scale" factor, in case you want to increase or decrease your final output by a fixed percentage.
Definition at line 23 of file moving_average.h.
| sensesp::MovingAverage::MovingAverage | ( | int | sample_size, |
| float | multiplier = 1.0, |
||
| const String & | config_path = "" |
||
| ) |
| sample_size | The number of most recent values you want to average for your output. |
| multiplier | Moving average will be multiplied by multiplier before it is output - make it something other than 1. if you need to scale your output up or down by a fixed percentage. |
| config_path | The path used to configure this transform in the Config UI. |
Definition at line 7 of file moving_average.cpp.
|
overridevirtual |
Deserializes the current object data from a JsonObject.
Reimplemented from sensesp::Serializable.
Definition at line 42 of file moving_average.cpp.
|
overridevirtual |
|
overridevirtual |
Serializes the current object data into a JsonObject.
Reimplemented from sensesp::Serializable.
Definition at line 36 of file moving_average.cpp.