|
CAF 0.17.6
|
A multicast group. More...
#include <abstract_group.hpp>
Public Member Functions | |
| virtual error | save (serializer &sink) const =0 |
Serialize this group to sink. | |
| virtual bool | subscribe (strong_actor_ptr who)=0 |
Subscribes who to this group and returns true on success or false if who is already subscribed. | |
| virtual void | unsubscribe (const actor_control_block *who)=0 |
Unsubscribes who from this group. | |
| virtual void | stop ()=0 |
| Stops any background actors or threads and IO handles. | |
| group_module & | module () const |
| Returns the parent module. | |
| actor_system & | system () const |
| Returns the hosting system. | |
| const std::string & | identifier () const |
| Returns a string representation of the group identifier, e.g., "224.0.0.1" for IPv4 multicast or a user-defined string for local groups. | |
Public Member Functions inherited from caf::ref_counted | |
| ref_counted (const ref_counted &) | |
| ref_counted & | operator= (const 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 |
Public Member Functions inherited from caf::memory_managed | |
| virtual void | request_deletion (bool decremented_rc) const noexcept |
| Default implementations calls `delete this, but can be overriden in case deletion depends on some condition or the class doesn't use default new/delete. | |
Public Member Functions inherited from caf::abstract_channel | |
| virtual void | enqueue (strong_actor_ptr sender, message_id mid, message content, execution_unit *host=nullptr)=0 |
| Enqueues a new message without forwarding stack to the channel. | |
| bool | is_abstract_actor () const |
| bool | is_abstract_group () const |
| bool | is_actor_decorator () const |
Protected Member Functions | |
| abstract_group (group_module &mod, std::string id, node_id nid) | |
Protected Member Functions inherited from caf::abstract_channel | |
| int | flags () const |
| void | flags (int new_value) |
Protected Attributes | |
| actor_system & | system_ |
| group_module & | parent_ |
| std::string | identifier_ |
| node_id | origin_ |
Protected Attributes inherited from caf::ref_counted | |
| std::atomic< size_t > | rc_ |
Friends | |
| class | local_actor |
| class | subscription |
| class | detail::group_manager |
Additional Inherited Members | |
Static Public Attributes inherited from caf::abstract_channel | |
| static constexpr int | is_abstract_actor_flag = 0x01000000 |
| static constexpr int | is_abstract_group_flag = 0x02000000 |
| static constexpr int | is_actor_bind_decorator_flag = 0x04000000 |
| static constexpr int | is_actor_dot_decorator_flag = 0x08000000 |
| static constexpr int | is_actor_decorator_mask = 0x0C000000 |
| static constexpr int | is_hidden_flag = 0x10000000 |
Related Symbols inherited from caf::ref_counted | |
| void | intrusive_ptr_add_ref (const ref_counted *p) |
| void | intrusive_ptr_release (const ref_counted *p) |
A multicast group.