|
ESPHome 2025.12.0-dev
|
Base class for streaming filters (batch windows where window_size == send_every). More...
#include <filter.h>
Public Member Functions | |
| StreamingFilter (size_t window_size, size_t send_first_at) | |
| optional< float > | new_value (float value) final |
Public Member Functions inherited from esphome::sensor::Filter | |
| virtual void | initialize (Sensor *parent, Filter *next) |
| Initialize this filter, please note this can be called more than once. | |
| void | input (float value) |
| void | output (float value) |
Protected Member Functions | |
| virtual void | process_value (float value)=0 |
| Called by new_value() to process each value in the batch. | |
| virtual float | compute_batch_result ()=0 |
| Called by new_value() to compute the result after collecting window_size values. | |
| virtual void | reset_batch ()=0 |
| Called by new_value() to reset internal state after sending a result. | |
Protected Attributes | |
| size_t | window_size_ |
| size_t | count_ {0} |
| size_t | send_first_at_ |
| bool | first_send_ {true} |
Protected Attributes inherited from esphome::sensor::Filter | |
| friend | Sensor |
| Filter * | next_ {nullptr} |
| Sensor * | parent_ {nullptr} |
Base class for streaming filters (batch windows where window_size == send_every).
When window_size equals send_every, we don't need a sliding window. This base class handles the common batching logic.
| esphome::sensor::StreamingFilter::StreamingFilter | ( | size_t | window_size, |
| size_t | send_first_at ) |
Definition at line 482 of file filter.cpp.
|
protectedpure virtual |
Called by new_value() to compute the result after collecting window_size values.
Implemented in esphome::sensor::StreamingMaxFilter, esphome::sensor::StreamingMinFilter, and esphome::sensor::StreamingMovingAverageFilter.
|
finalvirtual |
Implements esphome::sensor::Filter.
Definition at line 485 of file filter.cpp.
|
protectedpure virtual |
Called by new_value() to process each value in the batch.
Implemented in esphome::sensor::StreamingMaxFilter, esphome::sensor::StreamingMinFilter, and esphome::sensor::StreamingMovingAverageFilter.
|
protectedpure virtual |
Called by new_value() to reset internal state after sending a result.
Implemented in esphome::sensor::StreamingMaxFilter, esphome::sensor::StreamingMinFilter, and esphome::sensor::StreamingMovingAverageFilter.
|
protected |
|
protected |
|
protected |
|
protected |