RxCpp
The Reactive Extensions for Native (RxCpp) is a library for composing asynchronous and event-based programs using observable sequences and LINQ-style query operators in both C and C++.
Public Types | Public Member Functions | List of all members
rxcpp::connectable_observable< T, SourceOperator > Class Template Reference

a source of values that is shared across all subscribers and does not start until connectable_observable::connect() is called. More...

#include <rx-connectable_observable.hpp>

Inheritance diagram for rxcpp::connectable_observable< T, SourceOperator >:
Inheritance graph
[legend]
Collaboration diagram for rxcpp::connectable_observable< T, SourceOperator >:
Collaboration graph
[legend]

Public Types

typedef tag_connectable_observable observable_tag
 
- Public Types inherited from rxcpp::observable< T, SourceOperator >
typedef rxu::decay_t< SourceOperator > source_operator_type
 
typedef T value_type
 
- Public Types inherited from rxcpp::observable_base< T >
typedef tag_observable observable_tag
 
typedef T value_type
 

Public Member Functions

 connectable_observable ()
 
 connectable_observable (const SourceOperator &o)
 
 connectable_observable (SourceOperator &&o)
 
template<class SO >
 connectable_observable (const connectable_observable< T, SO > &o)
 
template<class SO >
 connectable_observable (connectable_observable< T, SO > &&o)
 
template<class OperatorFactory >
auto op (OperatorFactory &&of) const -> decltype(of(*(const this_type *) nullptr))
 
connectable_observable< T > as_dynamic ()
 
composite_subscription connect (composite_subscription cs=composite_subscription())
 
template<class... AN>
auto ref_count (AN... an) const
 
template<class... AN>
auto connect_forever (AN... an) const
 
- Public Member Functions inherited from rxcpp::observable< T, SourceOperator >
 ~observable ()
 
 observable ()
 
 observable (const source_operator_type &o)
 
 observable (source_operator_type &&o)
 
template<class SO >
 observable (const observable< T, SO > &o)
 implicit conversion between observables of the same value_type More...
 
template<class SO >
 observable (observable< T, SO > &&o)
 implicit conversion between observables of the same value_type More...
 
template<class... AN>
observable< T > as_dynamic (AN **...) const
 
template<class... AN>
blocking_observable< T, this_typeas_blocking (AN **...) const
 
template<class... ArgN>
auto subscribe (ArgN &&... an) const -> composite_subscription
 
template<class... AN>
auto all (AN &&... an) const
 
template<class... AN>
auto is_empty (AN &&... an) const
 Returns an Observable that emits true if the source Observable is empty, otherwise false. More...
 
template<class... AN>
auto any (AN &&... an) const
 
template<class... AN>
auto exists (AN &&... an) const
 Returns an Observable that emits true if any item emitted by the source Observable satisfies a specified condition, otherwise false. Emits false if the source Observable terminates without emitting any item. More...
 
template<class... AN>
auto contains (AN &&... an) const
 Returns an Observable that emits true if the source Observable emitted a specified item, otherwise false. Emits false if the source Observable terminates without emitting any item. More...
 
template<class... AN>
auto filter (AN &&... an) const
 
template<class... AN>
auto switch_if_empty (AN &&... an) const
 
template<class... AN>
auto default_if_empty (AN &&... an) const
 If the source Observable terminates without emitting any items, emits a default item and completes. More...
 
template<class... AN>
auto sequence_equal (AN... an) const
 
template<class... AN>
auto tap (AN &&... an) const
 
template<class... AN>
auto time_interval (AN &&... an) const
 
template<class... AN>
auto timeout (AN &&... an) const
 
template<class... AN>
auto timestamp (AN &&... an) const
 
template<class... AN>
auto finally (AN &&... an) const
 
template<class... AN>
auto on_error_resume_next (AN &&... an) const
 
template<class... AN>
auto switch_on_error (AN &&... an) const
 
template<class... AN>
auto map (AN &&... an) const
 
template<class... AN>
auto transform (AN &&... an) const
 
template<class... AN>
auto debounce (AN &&... an) const
 
template<class... AN>
auto delay (AN &&... an) const
 
template<class... AN>
auto distinct (AN &&... an) const
 
template<class... AN>
auto distinct_until_changed (AN &&... an) const
 
template<class... AN>
auto element_at (AN &&... an) const
 
template<class... AN>
auto window (AN &&... an) const
 
template<class... AN>
auto window_with_time (AN &&... an) const
 
template<class... AN>
auto window_with_time_or_count (AN &&... an) const
 
template<class... AN>
auto window_toggle (AN &&... an) const
 
template<class... AN>
auto buffer (AN &&... an) const
 
template<class... AN>
auto buffer_with_time (AN &&... an) const
 
template<class... AN>
auto buffer_with_time_or_count (AN &&... an) const
 
template<class... AN>
auto switch_on_next (AN &&... an) const
 
template<class... AN>
auto merge (AN... an) const
 
template<class... AN>
auto merge_delay_error (AN... an) const
 
template<class... AN>
auto amb (AN... an) const
 
template<class... AN>
auto flat_map (AN &&... an) const
 
template<class... AN>
auto merge_transform (AN &&... an) const
 
template<class... AN>
auto concat (AN... an) const
 
template<class... AN>
auto concat_map (AN &&... an) const
 
template<class... AN>
auto concat_transform (AN &&... an) const
 
template<class... AN>
auto with_latest_from (AN... an) const
 
template<class... AN>
auto combine_latest (AN... an) const
 
template<class... AN>
auto zip (AN &&... an) const
 
template<class... AN>
auto group_by (AN &&... an) const
 
template<class... AN>
auto ignore_elements (AN &&... an) const
 
template<class... AN>
auto multicast (AN &&... an) const
 
template<class... AN>
auto publish (AN &&... an) const
 
template<class... AN>
auto publish_synchronized (AN &&... an) const
 Turn a cold observable hot and allow connections to the source to be independent of subscriptions. More...
 
template<class... AN>
auto replay (AN &&... an) const
 
template<class... AN>
auto subscribe_on (AN &&... an) const
 
template<class... AN>
auto observe_on (AN &&... an) const
 
template<class... AN>
auto reduce (AN &&... an) const
 
template<class... AN>
auto accumulate (AN &&... an) const
 
template<class... AN>
auto first (AN **...) const
 For each item from this observable reduce it by sending only the first item. More...
 
template<class... AN>
auto last (AN **...) const
 For each item from this observable reduce it by sending only the last item. More...
 
template<class... AN>
auto count (AN **...) const
 For each item from this observable reduce it by incrementing a count. More...
 
template<class... AN>
auto sum (AN **...) const
 For each item from this observable reduce it by adding to the previous items. More...
 
template<class... AN>
auto average (AN **...) const
 For each item from this observable reduce it by adding to the previous values and then dividing by the number of items at the end. More...
 
template<class... AN>
auto max (AN **...) const
 For each item from this observable reduce it by taking the max value of the previous items. More...
 
template<class... AN>
auto min (AN **...) const
 For each item from this observable reduce it by taking the min value of the previous items. More...
 
template<class... AN>
auto scan (AN... an) const
 
template<class... AN>
auto sample_with_time (AN &&... an) const
 
template<class... AN>
auto skip (AN... an) const
 
template<class... AN>
auto skip_while (AN... an) const
 
template<class... AN>
auto skip_last (AN... an) const
 
template<class... AN>
auto skip_until (AN... an) const
 
template<class... AN>
auto take (AN... an) const
 
template<class... AN>
auto take_last (AN &&... an) const
 
template<class... AN>
auto take_until (AN &&... an) const
 
template<class... AN>
auto take_while (AN &&... an) const
 
template<class... AN>
auto repeat (AN... an) const
 
template<class... AN>
auto retry (AN... an) const
 
template<class... AN>
auto start_with (AN... an) const
 
template<class... AN>
auto pairwise (AN... an) const
 

Additional Inherited Members

- Public Attributes inherited from rxcpp::observable< T, SourceOperator >
source_operator_type source_operator
 

Detailed Description

template<class T, class SourceOperator>
class rxcpp::connectable_observable< T, SourceOperator >

a source of values that is shared across all subscribers and does not start until connectable_observable::connect() is called.

Member Typedef Documentation

◆ observable_tag

template<class T , class SourceOperator >
typedef tag_connectable_observable rxcpp::connectable_observable< T, SourceOperator >::observable_tag

Constructor & Destructor Documentation

◆ connectable_observable() [1/5]

template<class T , class SourceOperator >
rxcpp::connectable_observable< T, SourceOperator >::connectable_observable ( )
inline

◆ connectable_observable() [2/5]

template<class T , class SourceOperator >
rxcpp::connectable_observable< T, SourceOperator >::connectable_observable ( const SourceOperator &  o)
inlineexplicit

◆ connectable_observable() [3/5]

template<class T , class SourceOperator >
rxcpp::connectable_observable< T, SourceOperator >::connectable_observable ( SourceOperator &&  o)
inlineexplicit

◆ connectable_observable() [4/5]

template<class T , class SourceOperator >
template<class SO >
rxcpp::connectable_observable< T, SourceOperator >::connectable_observable ( const connectable_observable< T, SO > &  o)
inline

◆ connectable_observable() [5/5]

template<class T , class SourceOperator >
template<class SO >
rxcpp::connectable_observable< T, SourceOperator >::connectable_observable ( connectable_observable< T, SO > &&  o)
inline

Member Function Documentation

◆ as_dynamic()

template<class T , class SourceOperator >
connectable_observable<T> rxcpp::connectable_observable< T, SourceOperator >::as_dynamic ( )
inline

performs type-forgetting conversion to a new composite_observable

◆ connect()

template<class T , class SourceOperator >
composite_subscription rxcpp::connectable_observable< T, SourceOperator >::connect ( composite_subscription  cs = composite_subscription())
inline

◆ connect_forever()

template<class T , class SourceOperator >
template<class... AN>
auto rxcpp::connectable_observable< T, SourceOperator >::connect_forever ( AN...  an) const
inline

◆ op()

template<class T , class SourceOperator >
template<class OperatorFactory >
auto rxcpp::connectable_observable< T, SourceOperator >::op ( OperatorFactory &&  of) const -> decltype(of(*(const this_type*)nullptr))
inline

takes any function that will take this observable and produce a result value. this is intended to allow externally defined operators, that use subscribe, to be connected into the expression.

◆ ref_count()

template<class T , class SourceOperator >
template<class... AN>
auto rxcpp::connectable_observable< T, SourceOperator >::ref_count ( AN...  an) const
inline


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