C++ Actor Framework 1.0.0
Loading...
Searching...
No Matches
caf::flow::op::cold< T > Class Template Reference

Convenience base type for cold observable types. More...

#include <cold.hpp>

Inheritance diagram for caf::flow::op::cold< T >:
caf::detail::atomic_ref_counted caf::flow::op::base< T > caf::flow::coordinated caf::flow::op::empty< T > caf::flow::op::fail< T > caf::flow::op::never< T >

Public Member Functions

 cold (coordinator *parent)
 
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.
 
coordinatorparent () const noexcept override
 Returns the coordinator this object lives on.
 
- Public Member Functions inherited from caf::detail::atomic_ref_counted
 atomic_ref_counted (const atomic_ref_counted &)
 
atomic_ref_countedoperator= (const atomic_ref_counted &)
 
void ref () const noexcept
 Increases reference count by one.
 
void deref () const noexcept
 Decreases reference count by one and calls request_deletion when it drops to zero.
 
bool unique () const noexcept
 Queries whether there is exactly one reference.
 
size_t get_reference_count () const noexcept
 Queries the current reference count for this object.
 
- Public Member Functions inherited from caf::flow::op::base< T >
virtual disposable subscribe (observer< T > what)=0
 Subscribes a new observer to the operator.
 

Protected Attributes

coordinatorparent_
 
- Protected Attributes inherited from caf::detail::atomic_ref_counted
std::atomic< size_t > rc_
 

Additional Inherited Members

- Public Types inherited from caf::flow::op::base< T >
using super = coordinated
 The derived type.
 
using output_type = T
 The type of observed values.
 
using handle_type = observable<T>
 The proper type for holding a type-erased handle to object instances.
 

Detailed Description

template<class T>
class caf::flow::op::cold< T >

Convenience base type for cold observable types.

Member Function Documentation

◆ deref_coordinated()

template<class T >
void caf::flow::op::cold< T >::deref_coordinated ( ) const
overridevirtualnoexcept

Decreases the reference count of the coordinated and destroys the object if necessary.

Implements caf::flow::coordinated.

◆ parent()

template<class T >
coordinator * caf::flow::op::cold< T >::parent ( ) const
overridevirtualnoexcept

Returns the coordinator this object lives on.

Implements caf::flow::coordinated.

◆ ref_coordinated()

template<class T >
void caf::flow::op::cold< T >::ref_coordinated ( ) const
overridevirtualnoexcept

Increases the reference count of the coordinated.

Implements caf::flow::coordinated.


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