10#include "supervisor_config.h"
11#include "extended_error.h"
12#include "message_stringifier.h"
14#include <system_error>
18#pragma warning(disable : 4251)
32struct ROTOR_API system_context_t :
arc_base_t<system_context_t> {
63 template <typename T> auto &
access() noexcept;
77 friend struct supervisor_t;
Basic namespace for all rotor functionalities.
Definition rotor.hpp:21
intrusive_ptr_t< extended_error_t > extended_error_ptr_t
intrusive pointer to extended error type
Definition extended_error.h:25
std::unique_ptr< message_stringifier_t > message_stringifier_ptr_t
smart pointer for message stringifier
Definition message_stringifier.h:47
boost::intrusive_ref_counter< T, counter_policy_t > arc_base_t
base class to inject ref-counter with the specified policy
Definition arc.hpp:24
intrusive_ptr_t< system_context_t > system_context_ptr_t
intrusive pointer for system context
Definition system_context.h:83
boost::intrusive_ptr< T > intrusive_ptr_t
alias for intrusive pointer
Definition arc.hpp:27
intrusive_ptr_t< supervisor_t > supervisor_ptr_t
intrusive pointer for supervisor
Definition forward.hpp:29
universal primitive of concurrent computation
Definition actor_base.h:47
Abstract interface for making textual/string representation of a message.
Definition message_stringifier.h:36
supervisor is responsible for managing actors (workers) lifetime
Definition supervisor.h:68
The system context holds root supervisor_t (intrusive pointer) and may be loop-related details in der...
Definition system_context.h:32
virtual void on_error(actor_base_t *actor, const extended_error_ptr_t &ec) noexcept
fatal error handler
virtual std::string identity() noexcept
identifies the context.
auto & access() noexcept
generic non-public fields accessor
const message_stringifier_t & get_stringifier()
returns the default stringifier
auto create_supervisor()
returns builder for root supervisor
Definition supervisor.h:351
supervisor_ptr_t get_supervisor() noexcept
returns root supervisor
Definition system_context.h:38
virtual message_stringifier_ptr_t make_stringifier() const noexcept
constructs message stringifier