ESPHome 2026.3.2
Loading...
Searching...
No Matches
esphome::sensor::StatelessLambdaFilter Class Reference

Optimized lambda filter for stateless lambdas (no capture). More...

#include <filter.h>

Inheritance diagram for esphome::sensor::StatelessLambdaFilter:
esphome::sensor::Filter

Public Member Functions

 StatelessLambdaFilter (optional< float >(*lambda_filter)(float))
 
optional< float > new_value (float value) override
 
- 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

optional< float >(* lambda_filter_ )(float)
 
- Protected Attributes inherited from esphome::sensor::Filter
friend Sensor
 
Filternext_ {nullptr}
 
Sensorparent_ {nullptr}
 

Detailed Description

Optimized lambda filter for stateless lambdas (no capture).

Uses function pointer instead of std::function to reduce memory overhead. Memory: 4 bytes (function pointer on 32-bit) vs 32 bytes (std::function).

Definition at line 305 of file filter.h.

Constructor & Destructor Documentation

◆ StatelessLambdaFilter()

esphome::sensor::StatelessLambdaFilter::StatelessLambdaFilter ( optional< float >(* lambda_filter )(float))
inlineexplicit

Definition at line 307 of file filter.h.

Member Function Documentation

◆ new_value()

optional< float > esphome::sensor::StatelessLambdaFilter::new_value ( float value)
inlineoverridevirtual

Implements esphome::sensor::Filter.

Definition at line 309 of file filter.h.

Field Documentation

◆ lambda_filter_

optional< float >(* esphome::sensor::StatelessLambdaFilter::lambda_filter_) (float)
protected

Definition at line 309 of file filter.h.


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