ESPHome 2026.2.1
Loading...
Searching...
No Matches
esphome::text_sensor::Filter Class Referenceabstract

Apply a filter to text sensor values such as to_upper. More...

#include <filter.h>

Inheritance diagram for esphome::text_sensor::Filter:
esphome::text_sensor::AppendFilter esphome::text_sensor::LambdaFilter esphome::text_sensor::MapFilter esphome::text_sensor::PrependFilter esphome::text_sensor::StatelessLambdaFilter esphome::text_sensor::SubstituteFilter esphome::text_sensor::ToLowerFilter esphome::text_sensor::ToUpperFilter

Public Member Functions

virtual bool new_value (std::string &value)=0
 This will be called every time the filter receives a new value.
 
virtual void initialize (TextSensor *parent, Filter *next)
 Initialize this filter, please note this can be called more than once.
 
void input (std::string value)
 
void output (std::string &value)
 

Protected Attributes

friend TextSensor
 
Filternext_ {nullptr}
 
TextSensorparent_ {nullptr}
 

Detailed Description

Apply a filter to text sensor values such as to_upper.

This class is purposefully kept quite simple, since more complicated filters should really be done with the filter sensor in Home Assistant.

Definition at line 16 of file filter.h.

Member Function Documentation

◆ initialize()

void esphome::text_sensor::Filter::initialize ( TextSensor * parent,
Filter * next )
virtual

Initialize this filter, please note this can be called more than once.

Definition at line 26 of file filter.cpp.

◆ input()

void esphome::text_sensor::Filter::input ( std::string value)

Definition at line 12 of file filter.cpp.

◆ new_value()

virtual bool esphome::text_sensor::Filter::new_value ( std::string & value)
pure virtual

This will be called every time the filter receives a new value.

Modify the value in place. Return false to stop the filter chain (value will not be published), or true to continue.

Parameters
valueThe value to filter (modified in place).
Returns
True to continue the filter chain, false to stop.

Implemented in esphome::text_sensor::AppendFilter, esphome::text_sensor::LambdaFilter, esphome::text_sensor::MapFilter, esphome::text_sensor::PrependFilter, esphome::text_sensor::StatelessLambdaFilter, esphome::text_sensor::SubstituteFilter, esphome::text_sensor::ToLowerFilter, and esphome::text_sensor::ToUpperFilter.

◆ output()

void esphome::text_sensor::Filter::output ( std::string & value)

Definition at line 17 of file filter.cpp.

Field Documentation

◆ next_

Filter* esphome::text_sensor::Filter::next_ {nullptr}
protected

Definition at line 38 of file filter.h.

◆ parent_

TextSensor* esphome::text_sensor::Filter::parent_ {nullptr}
protected

Definition at line 39 of file filter.h.

◆ TextSensor

friend esphome::text_sensor::Filter::TextSensor
protected

Definition at line 36 of file filter.h.


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