SensESP 3.0.0-beta.6
Universal Signal K sensor toolkit ESP32
Loading...
Searching...
No Matches
sensesp::Transform< C, P > Class Template Reference

The main Transform class. A transform is identified primarily by the type of value that is produces (i.e. a Transform<float> is a ValueProducer<float> that generates float values) More...

#include <sensesp/transforms/transform.h>

Inheritance diagram for sensesp::Transform< C, P >:
[legend]

Public Member Functions

 Transform (String config_path="")
 
Transform< C, P > * connect_from (ValueProducer< P > *producer0, ValueProducer< P > *producer1=NULL, ValueProducer< P > *producer2=NULL, ValueProducer< P > *producer3=NULL, ValueProducer< P > *producer4=NULL)
 
- Public Member Functions inherited from sensesp::TransformBase
 TransformBase (const String &config_path)
 
- 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::Serializable
virtual bool to_json (JsonObject &root)
 
virtual bool from_json (const JsonObject &root)
 
- Public Member Functions inherited from sensesp::ValueConsumer< C >
virtual void set (const C &new_value)
 
virtual void set_input (const C &new_value)
 
void connect_from (ValueProducer< C > *producer)
 
- Public Member Functions inherited from sensesp::ValueProducer< P >
 ValueProducer ()
 
 ValueProducer (const P &initial_value)
 
virtual const P & get () const
 
std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< P, 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.
 
std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< P, typenameVConsumer::input_type >::value, VConsumer * >::type connect_to (VConsumer *consumer)
 
std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< P, typenameVConsumer::input_type >::value, VConsumer * >::type connect_to (VConsumer &consumer)
 
void emit (const P &new_value)
 
- Public Member Functions inherited from sensesp::Observable
 Observable ()
 
 Observable (Observable &&other)
 Move constructor.
 
void notify ()
 
void attach (std::function< void()> observer)
 

Additional Inherited Members

- Public Types inherited from sensesp::ValueConsumer< C >
using input_type
 
- Static Public Member Functions inherited from sensesp::TransformBase
static const std::set< TransformBase * > & get_transforms ()
 
- Protected Attributes inherited from sensesp::Saveable
const String config_path_
 
- Protected Attributes inherited from sensesp::ValueProducer< P >
output_
 

Detailed Description

template<typename C, typename P>
class sensesp::Transform< C, P >

The main Transform class. A transform is identified primarily by the type of value that is produces (i.e. a Transform<float> is a ValueProducer<float> that generates float values)

Definition at line 51 of file transform.h.

Constructor & Destructor Documentation

◆ Transform()

template<typename C , typename P >
sensesp::Transform< C, P >::Transform ( String config_path = "")
inline

Definition at line 55 of file transform.h.

Member Function Documentation

◆ connect_from()

template<typename C , typename P >
Transform< C, P > * sensesp::Transform< C, P >::connect_from ( ValueProducer< P > * producer0,
ValueProducer< P > * producer1 = NULL,
ValueProducer< P > * producer2 = NULL,
ValueProducer< P > * producer3 = NULL,
ValueProducer< P > * producer4 = NULL )
inline

A convenience method that allows up to five producers to be quickly connected to the input of the ValueConsumer side of this transform. The first producer will be connected to input channel zero, the second one to input channel 1, etc. "this" is returned, which allows the ValueProducer side of this transform to then be wired to other transforms via a call to connect_to().

Definition at line 67 of file transform.h.

Here is the call graph for this function:

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