C++ Actor Framework 0.19
|
Publishes the items from a single operator to multiple subscribers. More...
#include <publish.hpp>
Inherits caf::flow::op::mcast< T >, and observer_impl< T >.
Public Types | |
using | super = mcast< T > |
using | state_type = typename super::state_type |
using | src_ptr = intrusive_ptr< base< T > > |
Public Member Functions | |
publish (coordinator *ctx, src_ptr src, size_t max_buf_size=defaults::flow::buffer_size) | |
void | ref_coordinated () const noexcept override |
Increases the reference count of the coordinated. | |
void | deref_coordinated () const noexcept override |
Decreases the reference count of the coordinated and destroys the object if necessary. | |
disposable | subscribe (observer< T > out) override |
Subscribes a new observer to the operator. | |
disposable | connect () |
void | auto_connect_threshold (size_t new_value) |
void | auto_disconnect (bool new_value) |
bool | connected () const noexcept |
void | on_next (const T &item) override |
void | on_complete () override |
void | on_error (const error &what) override |
void | on_subscribe (subscription in) override |
Protected Member Functions | |
void | try_request_more () |
Friends | |
void | intrusive_ptr_add_ref (const publish *ptr) noexcept |
void | intrusive_ptr_release (const publish *ptr) noexcept |
Publishes the items from a single operator to multiple subscribers.
|
overridevirtualnoexcept |
Decreases the reference count of the coordinated and destroys the object if necessary.
Reimplemented from caf::flow::op::hot< T >.
|
overridevirtualnoexcept |
Increases the reference count of the coordinated.
Reimplemented from caf::flow::op::hot< T >.
|
overridevirtual |
Subscribes a new observer to the operator.
Implements caf::flow::op::base< T >.