SensESP 3.4.1-alpha
Universal Signal K sensor toolkit ESP32
Loading...
Searching...
No Matches
sensesp::ThresholdTransform< C > Class Template Reference

A Transform base class that translates the value of type C into boolean. Base class for classes FloatThreshold and IntThreshold. More...

#include <sensesp/transforms/threshold.h>

Inheritance diagram for sensesp::ThresholdTransform< C >:
[legend]

Public Member Functions

 ThresholdTransform (C min_value, C max_value, bool in_range, String config_path="")
 
virtual void set (const C &new_value) override
 
bool from_json (const JsonObject &root) override
 
bool to_json (JsonObject &root) override
 
- Public Member Functions inherited from sensesp::Transform< C, bool >
 Transform (String config_path="")
 
Transform< C, bool > * connect_from (ValueProducer< bool > *producer0, ValueProducer< bool > *producer1=NULL, ValueProducer< bool > *producer2=NULL, ValueProducer< bool > *producer3=NULL, ValueProducer< bool > *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_input (const C &new_value)
 
void connect_from (ValueProducer< C > *producer)
 
- Public Member Functions inherited from sensesp::ValueProducer< T >
 ValueProducer ()
 
 ValueProducer (const T &initial_value)
 
virtual const T & get () const
 
template<typename VConsumer >
std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< T, 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.
 
template<typename VConsumer >
std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< T, typenameVConsumer::input_type >::value, VConsumer * >::type connect_to (VConsumer *consumer)
 
template<typename VConsumer >
std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< T, typenameVConsumer::input_type >::value, VConsumer * >::type connect_to (VConsumer &consumer)
 
void emit (const T &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.
 

Protected Attributes

min_value_
 
max_value_
 
bool in_range_
 
- Protected Attributes inherited from sensesp::Saveable
const String config_path_
 
- Protected Attributes inherited from sensesp::ValueProducer< T >
output_
 

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 ()
 

Detailed Description

template<typename C>
class sensesp::ThresholdTransform< C >

A Transform base class that translates the value of type C into boolean. Base class for classes FloatThreshold and IntThreshold.

Parameters
min_valueMinimum value of input for output to be the value of in_range.
max_valueMaximum value of input for output to be the value of in_range.
in_rangeOutput value if input value is in range. The output is the negation of this value when the input is out of range.

Definition at line 21 of file threshold.h.

Constructor & Destructor Documentation

◆ ThresholdTransform()

template<typename C >
sensesp::ThresholdTransform< C >::ThresholdTransform ( min_value,
max_value,
bool  in_range,
String  config_path = "" 
)
inline

Definition at line 24 of file threshold.h.

Here is the call graph for this function:

Member Function Documentation

◆ from_json()

template<typename C >
bool sensesp::ThresholdTransform< C >::from_json ( const JsonObject &  root)
inlineoverridevirtual

Deserializes the current object data from a JsonObject.

Reimplemented from sensesp::Serializable.

Definition at line 43 of file threshold.h.

◆ set()

template<typename C >
virtual void sensesp::ThresholdTransform< C >::set ( const C &  new_value)
inlineoverridevirtual

Used to set an input of this consumer. It is called automatically by a ValueProducer but can also be called manually.

Parameters
new_valuethe value of the input

Reimplemented from sensesp::ValueConsumer< C >.

Definition at line 33 of file threshold.h.

Here is the call graph for this function:

◆ to_json()

template<typename C >
bool sensesp::ThresholdTransform< C >::to_json ( JsonObject &  root)
inlineoverridevirtual

Serializes the current object data into a JsonObject.

Reimplemented from sensesp::Serializable.

Definition at line 57 of file threshold.h.

Member Data Documentation

◆ in_range_

template<typename C >
bool sensesp::ThresholdTransform< C >::in_range_
protected

Definition at line 67 of file threshold.h.

◆ max_value_

template<typename C >
C sensesp::ThresholdTransform< C >::max_value_
protected

Definition at line 66 of file threshold.h.

◆ min_value_

template<typename C >
C sensesp::ThresholdTransform< C >::min_value_
protected

Definition at line 65 of file threshold.h.


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