31 using plugin_base_t::plugin_base_t;
36 const std::type_index &
identity() const noexcept override;
39 void deactivate() noexcept override;
47 bool escalate) noexcept;
64 virtual
void on_create(message::create_actor_t &message) noexcept;
74 virtual
void on_init(message::init_response_t &message) noexcept;
84 virtual
void on_shutdown_trigger(message::shutdown_trigger_t &message) noexcept;
87 virtual
void on_shutdown_confirm(message::shutdown_response_t &message) noexcept;
90 virtual
void on_spawn(message::spawn_actor_t &message) noexcept;
92 bool handle_init(message::init_request_t *) noexcept override;
93 bool handle_shutdown(message::shutdown_request_t *) noexcept override;
94 void handle_start(message::start_trigger_t *message) noexcept override;
99 template <typename T> auto &access() noexcept;
102 using actors_map_t = std::unordered_map<
address_ptr_t, detail::child_info_ptr_t>;
103 using spawning_map_t = std::unordered_map<
request_id_t, detail::child_info_ptr_t>;
105 bool has_initializing() const noexcept;
106 void init_continue() noexcept;
109 void request_shutdown(detail::child_info_t &child_state, const
extended_error_ptr_t &ec) noexcept;
110 void on_spawn_timer(
request_id_t timer_id,
bool cancelled) noexcept;
112 size_t active_actors() noexcept;
115 using initializing_actors_t = std::unordered_set<
address_ptr_t>;
118 actors_map_t actors_map;
119 spawning_map_t spawning_map;
intrusive_ptr_t< extended_error_t > extended_error_ptr_t
intrusive pointer to extended error type
Definition extended_error.h:25
intrusive_ptr_t< actor_base_t > actor_ptr_t
intrusive pointer for actor
Definition forward.hpp:23
std::function< actor_ptr_t(supervisor_t &, const address_ptr_t &)> factory_t
factory which allows to create actors lazily or on demand
Definition forward.hpp:45