ESPHome 2025.12.0-dev
Loading...
Searching...
No Matches
esphome::sensor::MinFilter Class Reference

Simple min filter. More...

#include <filter.h>

Inheritance diagram for esphome::sensor::MinFilter:
esphome::sensor::MinMaxFilter esphome::sensor::SlidingWindowFilter esphome::sensor::Filter

Protected Member Functions

float compute_result () override
 
- Protected Member Functions inherited from esphome::sensor::MinMaxFilter
template<typename Compare >
float find_extremum_ ()
 Helper to find min or max value in window, skipping NaN values Usage: find_extremum_<std::less<float>>() for min, find_extremum_<std::greater<float>>() for max.
 
- Protected Member Functions inherited from esphome::sensor::SlidingWindowFilter

Additional Inherited Members

- Public Member Functions inherited from esphome::sensor::MinMaxFilter
 SlidingWindowFilter (size_t window_size, size_t send_every, size_t send_first_at)
 
- Public Member Functions inherited from esphome::sensor::SlidingWindowFilter
 SlidingWindowFilter (size_t window_size, size_t send_every, 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 Attributes inherited from esphome::sensor::SlidingWindowFilter
FixedVector< float > window_
 Access the sliding window values (ring buffer implementation) Use: for (size_t i = 0; i < window_count_; i++) { float val = window_[i]; }.
 
size_t window_head_ {0}
 Index where next value will be written.
 
size_t window_count_ {0}
 Number of valid values in window (0 to window_size_)
 
size_t window_size_
 Maximum window size.
 
size_t send_every_
 Send result every N values.
 
size_t send_at_
 Counter for send_every.
 
- Protected Attributes inherited from esphome::sensor::Filter
friend Sensor
 
Filternext_ {nullptr}
 
Sensorparent_ {nullptr}
 

Detailed Description

Simple min filter.

Takes the min of the last <window_size> values and pushes it out every <send_every>.

Definition at line 177 of file filter.h.

Member Function Documentation

◆ compute_result()

float esphome::sensor::MinFilter::compute_result ( )
overrideprotectedvirtual

Implements esphome::sensor::SlidingWindowFilter.

Definition at line 136 of file filter.cpp.


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