Join two producer values into a tuple. More...
#include <sensesp/transforms/join.h>
Public Member Functions | |
Join (long max_age=0) | |
![]() | |
JoinBase (long max_age=0) | |
![]() | |
ValueProducer () | |
ValueProducer (const std::tuple< T1, T2 > &initial_value) | |
virtual const std::tuple< T1, T2 > & | get () const |
std::enable_if< std::is_base_of< ValueConsumer< typenameVConsumer::input_type >, VConsumer >::value &&std::is_convertible< std::tuple< T1, T2 >, 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< std::tuple< T1, T2 >, 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< std::tuple< T1, T2 >, typenameVConsumer::input_type >::value, VConsumer * >::type | connect_to (VConsumer &consumer) |
void | emit (const std::tuple< T1, T2 > &new_value) |
![]() | |
Observable () | |
Observable (Observable &&other) | |
Move constructor. | |
void | notify () |
void | attach (std::function< void()> observer) |
Public Attributes | |
std::tuple< LambdaConsumer< T1 >, LambdaConsumer< T2 > > | consumers |
Protected Member Functions | |
void | emit_tuple () override |
![]() | |
void | check_emit () |
Protected Attributes | |
std::tuple< T1, T2 > | values |
![]() | |
elapsedMillis | age_ [N] |
long | max_age_ |
![]() | |
std::tuple< T1, T2 > | output_ |
Join two producer values into a tuple.
Joins the connected producers' values into a tuple. The tuple is emitted when any producer emits a new value and none of the values have aged more than max_age milliseconds.
|
inline |
|
inlineoverrideprotectedvirtual |
Implements sensesp::JoinBase< 2 >.
Definition at line 70 of file join.h.
std::tuple<LambdaConsumer<T1>, LambdaConsumer<T2> > sensesp::Join< T1, T2 >::consumers |
|
protected |