libcaf  0.16.0
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
 Ccaf::byte_address< ipv4_address >
 Ccaf::byte_address< ipv6_address >
 Ccaf::abstract_channelInterface for all message receivers
 Ccaf::abstract_composable_behaviorMarker type that allows CAF to spawn actors from composable states
 Ccaf::actorIdentifies an untyped actor
 Ccaf::actor_addrStores the address of typed as well as untyped actors
 Ccaf::actor_clockA monotonic clock for scheduling timeouts and delayed messages
 Ccaf::actor_companionAn co-existing actor forwarding all messages through a user-defined callback to another object, thus serving as gateway to allow any object to interact with other actors
 Ccaf::actor_configStores spawn-time flags and groups
 Ccaf::actor_control_blockActors are always allocated with a control block that stores its identity as well as strong and weak reference counts to it
 Ccaf::actor_ostreamProvides support for thread-safe output operations on character streams
 Ccaf::actor_registryA registry is used to associate actors to IDs or atoms (names)
 Ccaf::actor_systemActor environment including scheduler, registry, and optional components such as a middleman
 Ccaf::actor_system::moduleAn (optional) component of the actor system
 Ccaf::actor_system_configConfigures an actor_system on startup
 Ccaf::allowed_unsafe_message_type< T >Template specializations can whitelist individual types for unsafe message passing operations
 Ccaf::atom_constant< V >Lifts an atom_value to a compile-time constant
 Ccaf::attachableCallback utility class
 Ccaf::attachable::tokenRepresents a pointer to a value with its subtype as type ID number
 Ccaf::behaviorDescribes the behavior of an actor, i.e., provides a message handler and an optional timeout
 Ccaf::blocking_actorA thread-mapped or context-switching actor using a blocking receive rather than a behavior-stack based message processing
 Ccaf::blocking_actor::do_receive_helperImplementation helper for blocking_actor::do_receive
 Ccaf::blocking_actor::mailbox_policyConfigures the FIFO inbox with two nested queues:
 Ccaf::blocking_actor::receive_condRepresents pre- and postconditions for receive loops
 Ccaf::blocking_actor::receive_for_helper< T >Implementation helper for blocking_actor::receive_for
 Ccaf::blocking_actor::receive_while_helperImplementation helper for blocking_actor::receive_while
 Ccaf::byte_address< Derived >Base type for addresses based on a byte representation such as IP or Ethernet addresses
 Ccaf::callback< Ts >Describes a simple callback, usually implemented via lambda expression
 Ccaf::composable_behavior< TypedActor >Base type for composable actor states
 Ccaf::composable_behavior_base< MPI >Generates an interface class that provides operator()
 Ccaf::composed_type< Xs, Ys, Zs, Rs >Computes the type for f*g (actor composition)
 Ccaf::config_optionDefines a configuration option for the application
 Ccaf::config_option::meta_stateCustom vtable-like struct for delegating to type-specific functions and storing type-specific information shared by several config options
 Ccaf::config_option_adderAdds config options of the same category to a config_option_set
 Ccaf::config_option_setA set of config_option objects that parses CLI arguments into a config_value::dictionary
 Ccaf::config_valueA type for config parameters with similar interface to a variant
 Ccaf::config_value_access< T >
 Ccaf::config_value_access< dictionary< V > >Implements automagic unboxing of dictionary<V> from a homogeneous config_value::dictionary
 Ccaf::config_value_access< std::vector< T > >Implements automagic unboxing of std::vector<T> from a homogeneous config_value::list
 Ccaf::data_processor< Derived >A data processor translates an object into a format that can be stored or vice versa
 Ccaf::default_downstream_manager< F >Selects a downstream manager implementation based on the signature of various handlers
 Ccaf::default_sum_type_access< T >Allows specializing the sum_type_access trait for any type that simply wraps a variant and exposes it with a get_data() member function
 Ccaf::delegated< Ts >Helper class to indicate that a request has been forwarded
 Ccaf::dictionary< V >Maps strings to values of type V, but unlike std::map<std::string, V> accepts string_view for looking up keys efficiently
 Ccaf::down_msgSent to all actors monitoring an actor when it is terminated
 Ccaf::downstream< T >Grants access to an output stream buffer
 Ccaf::downstream_managerManages downstream communication for a stream_manager
 Ccaf::downstream_manager::path_predicatePredicate object for paths
 Ccaf::downstream_manager::path_visitorFunction object for iterating over all paths
 Ccaf::downstream_msgStream messages that travel downstream, i.e., batches and close messages
 Ccaf::downstream_msg::batchTransmits stream data
 Ccaf::downstream_msg::closeOrderly shuts down a stream after receiving an ACK for the last batch
 Ccaf::downstream_msg::forced_closePropagates a fatal error from sources to sinks
 Ccaf::durationTime duration consisting of a time_unit and a 64 bit unsigned integer
 Ccaf::errorA serializable type for storing error codes with category and optional, human-readable context information
 Ccaf::execution_unitIdentifies an execution unit, e.g., a worker thread of the scheduler
 Ccaf::exit_msgSent to all links when an actor is terminated
 Ccaf::expected< T >Represents the result of a computation which can either complete successfully with an instance of type T or fail with an error
 Ccaf::expected< void >The pattern expected<void> shall be used for functions that may generate an error but would otherwise return bool
 Ccaf::extend< Base, Derived >Allows convenient definition of types using mixins
 Ccaf::function_view< Actor >A function view for an actor hides any messaging from the caller
 Ccaf::fused_downstream_manager< T, Ts >::non_owning_ptrState held for each slot
 Ccaf::group_down_msgSent to all members of a group when it goes offline
 Ccaf::group_moduleInterface for user-defined multicast implementations
 Ccaf::handle< Subtype, InvalidType, InvalidId >Base class for IO handles such as accept_handle or connection_handle
 Ccaf::has_make_error< T >Evaluates to true if T is an enum with a free function make_error for converting it to an error
 Ccaf::has_sum_type_access< T >Evaluates to true if T specializes sum_type_access
 Ccaf::illegal_message_elementMarker class identifying classes in CAF that are not allowed to be used as message element
 Ccaf::inbound_pathState for a path to an upstream actor (source)
 Ccaf::inbound_path::stats_tStores statistics for measuring complexity of incoming batches
 Ccaf::inbound_path::stats_t::calculation_resultWraps the resulf of stats_t::calculate()
 Ccaf::inbound_path::stats_t::measurementWraps a time measurement for a single processed batch
 Ccaf::inbound_stream_slot< In >Wraps a stream slot ID for inbound paths with the full type information of the path creation
 Ccaf::index_mappingMarker for representing placeholders at runtime
 Ccaf::infer_handle_from_class< T, bool >Deduces actor for dynamically typed actors, otherwise typed_actor<...> is deduced
 Ccaf::infer_handle_from_fun< F, Trait >Deduces an actor handle type from a function or function object
 Ccaf::infinite_tRepresents an infinite amount of timeout for specifying "invalid" timeouts
 Ccaf::intrusive_ptr< T >An intrusive, reference counting smart pointer implementation
 Ccaf::io::acceptor_closed_msgSignalizes that a broker acceptor has been closed
 Ccaf::io::acceptor_passivated_msgSignalizes that an acceptor has entered passive mode
 Ccaf::io::broker_servant< Base, Handle, SysMsgType >Base class for scribe and doorman
 Ccaf::io::connection_closed_msgSignalizes that a broker connection has been closed
 Ccaf::io::connection_passivated_msgSignalizes that a connection has entered passive mode
 Ccaf::io::data_transferred_msgSignalizes that a certain amount of bytes has been written
 Ccaf::io::datagram_sent_msgSignalizes that a datagram with a certain size has been sent
 Ccaf::io::datagram_servant_closed_msgSignalizes that a datagram endpoint has entered passive mode
 Ccaf::io::datagram_servant_passivated_msgSignalizes that a datagram sink has entered passive mode
 Ccaf::io::hookInterface to define hooks into the IO layer
 Ccaf::io::network::datagram_handler_impl< ProtocolPolicy >A concrete datagram_handler with a technology-dependent policy
 Ccaf::io::network::event_handlerA socket I/O event handler
 Ccaf::io::network::interfacesUtility class bundling access to network interface names and addresses
 Ccaf::io::network::ip_endpointA hashable wrapper for a sockaddr storage
 Ccaf::io::network::multiplexer::supervisorMakes sure the multipler does not exit its event loop until the destructor of supervisor has been called
 Ccaf::io::network::protocolBundles protocol information for network and transport layer communication
 Ccaf::io::network::receive_bufferA container that does not call constructors and destructors for its values
 Ccaf::io::new_connection_msgSignalizes a newly accepted connection from a broker
 Ccaf::io::new_data_msgSignalizes newly arrived data for a broker
 Ccaf::io::new_datagram_msgSignalizes that a datagram with a certain size has been sent
 Ccaf::is_typed_actor< T >Evaluates to true if T is a typed_actor<...>
 Ccaf::logger::eventEncapsulates a single logging event
 Ccaf::logger::fieldRepresents a single format string field
 Ccaf::logger::line_builderUtility class for building user-defined log messages with CAF_ARG
 Ccaf::mailbox_category_corrector<... >Corrects the message ID for down- and upstream messages to make sure the category for a mailbox_element matches its content
 Ccaf::mailbox_element_vals< Ts >Encapsulates arbitrary data in a message element
 Ccaf::mailbox_element_view< Ts >Provides a view for treating arbitrary data as message element
 Ccaf::make_message_id_tUtility class for generating a message_id from integer values or priorities
 Ccaf::make_sink_result< In >Returns a stream sink with the slot ID of its first inbound path
 Ccaf::make_source_result< DownstreamManager, Ts >Returns a stream source with the slot ID of its first outbound path
 Ccaf::make_stage_result< In, DownstreamManager, Ts >Returns a stream stage with the slot IDs of its first in- and outbound paths
 Ccaf::memory_managedThis base enables derived classes to enforce a different allocation strategy than new/delete by providing a virtual protected request_deletion() function and non-public destructor
 Ccaf::message::cli_argStores the name of a command line option ("<long name>[,<short name>]") along with a description and a callback
 Ccaf::message::cli_resStores the result of message::extract_opts
 Ccaf::message_builderProvides a convenient interface for createing message objects from a series of values using the member function append
 Ccaf::message_handlerA partial function implementation used to process a message
 Ccaf::message_idDenotes whether a message is asynchronous or synchronous
 Ccaf::message_viewRepresents an object pointing to a type_erased_tuple that is convertible to a message
 Ccaf::meta::annotationType tag for all meta annotations in CAF
 Ccaf::mixin::behavior_changer< Base, Subtype >A behavior_changer is an actor that supports self->become(...) and self->unbecome()
 Ccaf::mixin::requester< Base, Subtype >A requester is an actor that supports `self->request(...)
 Ccaf::mixin::sender< Base, Subtype >A sender is an actor that supports self->send(...)
 Ccaf::mixin::subscriber_baseMarker for subscriber
 Ccaf::named_actor_configStores a flow-control configuration
 Ccaf::no_error_tHelper class to construct an expected<T> that represents no error
 Ccaf::no_stages_tConvenience tag type for producing empty forwarding stacks
 Ccaf::node_idA node ID consists of a host ID and process ID
 Ccaf::none_tRepresents "nothing", e.g., for clearing an optional by assigning none
 Ccaf::open_stream_msgDemands the receiver to open a new stream from the sender to the receiver
 Ccaf::optional< T >A C++17 compatible optional implementation
 Ccaf::optional< T & >Template specialization to allow optional to hold a reference rather than an actual value with minimal overhead
 Ccaf::outbound_pathState for a single path to a sink of a downstream_manager
 Ccaf::outbound_stream_slot< OutputType, HandshakeArgs >Wraps a stream slot ID for outbound paths with the full type information of the path creation
 Ccaf::output_stream< T, Ts >Empty marker type for type-checking of stream sources and stages
 Ccaf::param< T >Represents a message handler parameter of type T and guarantees copy-on-write semantics
 Ccaf::param_decay< T >Convenience struct for remove_param<std::decay<T>>
 Ccaf::policy::arg< Ts >Provides a wrapper to pass policy types as values to functions
 Ccaf::policy::categorizedConfigures a cached WDRR fixed multiplexed queue for dispatching to four nested queue (one for each message category type)
 Ccaf::policy::downstream_messagesConfigures a dynamic WDRR queue for holding downstream messages
 Ccaf::policy::downstream_messages::nestedConfigures a nested DRR queue
 Ccaf::policy::normal_messagesConfigures a cached DRR queue for holding asynchronous messages with default priority
 Ccaf::policy::priority_awareConfigures a cached WDRR fixed multiplexed queue for dispatching to two nested queue (one for each message priority)
 Ccaf::policy::profiled< Policy >An enhancement of CAF's scheduling policy which records fine-grained resource utiliziation for worker threads and actors in the parent coordinator of the workers
 Ccaf::policy::scheduler_policyThis concept class describes a policy for worker and coordinator of the scheduler
 Ccaf::policy::scheduler_policy::coordinator_dataPolicy-specific data fields for the coordinator
 Ccaf::policy::scheduler_policy::worker_dataPolicy-specific data fields for the worker
 Ccaf::policy::unprofiledThis class is intended to be used as a base class for actual polices
 Ccaf::policy::upstream_messagesConfigures a DRR queue for holding upstream messages
 Ccaf::policy::urgent_messagesConfigures a cached DRR queue for holding asynchronous messages with default priority
 Ccaf::proxy_registryGroups a (distributed) set of actors and allows actors in the same namespace to exchange messages
 Ccaf::proxy_registry::backendResponsible for creating proxy actors
 Ccaf::ratio_to_time_unit_helper< Num, Denom >Converts the ratio Num/Denom to a time_unit if the ratio describes seconds, milliseconds, microseconds, or minutes
 Ccaf::remove_param< T >Unpacks param<T> to T
 Ccaf::response_handle< Self, Output, IsBlocking >This helper class identifies an expected response message and enables request(...).then(...)
 Ccaf::response_promiseA response promise can be used to deliver a uniquely identifiable response message from the server (i.e
 Ccaf::response_type< Ts, Xs >Defines:
 Ccaf::response_type_unbox< Ts, Xs >Unboxes Xs and calls response_type
 Ccaf::resumableA cooperatively executed task managed by one or more instances of execution_unit
 Ccaf::runtime_settings_mapThread-safe container for mapping atoms to arbitrary settings
 Ccaf::scheduled_actor::mailbox_policyConfigures the FIFO inbox with four nested queues:
 Ccaf::scheduled_actor::mailbox_visitorConsumes messages from the mailbox
 Ccaf::scoped_actorA scoped handle to a blocking actor
 Ccaf::select_callback< F, Args >Utility class for selecting a callback_impl
 Ccaf::select_config_value_access< T, IsIntegral >Delegates to config_value_access for all specialized versions
 Ccaf::select_config_value_access< T, true >Catches all non-specialized integer types
 Ccaf::spawn_optionsStores options passed to the spawn function family
 Ccaf::stateful_actor< State, Base >An event-based actor with managed state
 Ccaf::stream< T >Empty marker type for streaming handshakes
 Ccaf::stream_buffer< CharT, Traits >The base class for all stream buffer implementations
 Ccaf::stream_finalize_trait< Fun, State, AcceptsTwoArgs >Dispatches a finalize call to a function taking either one or two arguments
 Ccaf::stream_finalize_trait< Fun, State, false >Specializes the trait for callbacks that only take the state
 Ccaf::stream_finalize_trait< Fun, State, true >Specializes the trait for callbacks that take state and error
 Ccaf::stream_sink_driver< Input >Identifies an unbound sequence of messages
 Ccaf::stream_sink_trait< Fun >Defines required type aliases for stream sinks
 Ccaf::stream_sink_trait_base< State, In >Base type for all sink traits
 Ccaf::stream_slotsMaps two stream_slot values into a pair for storing sender and receiver slot information
 Ccaf::stream_source_driver< DownstreamManager >Identifies an unbound sequence of messages
 Ccaf::stream_source_trait< Pull >Deduces the output type and the state type for a stream source from its pull implementation
 Ccaf::stream_stage_driver< Input, DownstreamManager >Encapsulates user-provided functionality for generating a stream stage
 Ccaf::stream_stage_trait< void(State &, downstream< Out > &, In)>Deduces the input type, output type and the state type for a stream stage from its process implementation
 Ccaf::string_viewDrop-in replacement for C++17 std::string_view
 Ccaf::sum_type_access< T >Specializing this trait allows users to enable holds_alternative, get, get_if, and visit for any user-defined sum type
 Ccaf::thread_hookInterface to define thread hooks
 Ccaf::timeout_msgSignalizes a timeout event
 Ccaf::type_erased_tupleRepresents a tuple of type-erased values
 Ccaf::type_erased_valueRepresents a single type-erased value
 Ccaf::type_nr< T, IsIntegral >Computes the type number for T
 Ccaf::typed_actor< Sigs >Identifies a statically typed actor
 Ccaf::typed_behavior< Sigs >::unsafe_initEmpty struct tag for constructing from an untyped behavior
 Ccaf::typed_event_based_actor< Sigs >A cooperatively scheduled, event-based actor implementation with static type-checking
 Ccaf::typed_response_promise< Ts >A response promise can be used to deliver a uniquely identifiable response message from the server (i.e
 Ccaf::unbox_message_element< T, IsPlaceholderRes >Unboxes atom constants, i.e., converts atom_constant<V> to V
 Ccaf::unit_tUnit is analogous to void, but can be safely returned, stored, etc
 Ccaf::unsafe_actor_handle_init_tTag type to select the unsafe constructor of actor handles
 Ccaf::upstream_msgStream messages that flow upstream, i.e., acks and drop messages
 Ccaf::upstream_msg::ack_batchCumulatively acknowledges received batches and signalizes new demand from a sink to its source
 Ccaf::upstream_msg::ack_openAcknowledges a previous open message and finalizes a stream handshake
 Ccaf::upstream_msg::dropInforms a source that a sink orderly drops out of a stream
 Ccaf::upstream_msg::forced_dropPropagates a fatal error from sinks to sources
 Ccaf::uriA URI according to RFC 3986
 Ccaf::uri::authority_typeBundles the authority component of the URI, i.e., userinfo, host, and port
 Ccaf::variant< Ts >A variant represents always a valid value of one of the types Ts...
 Ccaf::variant_compare_helper< Predicate >
 Ccaf::variant_reader< T >
 Ccaf::variant_writer< T >
 Ccaf::weak_intrusive_ptr< T >An intrusive, reference counting smart pointer implementation
 Ccaf::callback< Ts... >
 Ccaf::composable_behavior_base< Clauses >
 Ccaf::composed_type< detail::type_list< typed_mpi< In, Out >, Xs... >, Ys, detail::type_list< Zs... >, Rs >
 Ccaf::composed_type< detail::type_list< Xs... >, Ys, Ys, detail::type_list< Rs..., typed_mpi< detail::type_list< In... >, output_stream< M, Ms... > > > >
 Ccaf::composed_type< detail::type_list< Xs... >, Ys, Ys, detail::type_list< Rs..., typed_mpi< detail::type_list< In... >, output_tuple< MapsTo... > > > >
 Ccaf::composed_type< detail::type_list< Xs... >, Ys, Ys, Rs >
 Ccaf::data_processor< deserializer >
 Ccaf::data_processor< serializer >
 Ccaf::io::network::datagram_handler_impl< policy::udp >
 Ccaf::default_sum_type_access< variant< Ts... > >
 Ccaf::dictionary< caf::dictionary >
 Ccaf::handle< accept_handle, invalid_accept_handle_t >
 Ccaf::handle< connection_handle, invalid_connection_handle_t >
 Ccaf::handle< datagram_handle, invalid_datagram_handle_t >
 Ccaf::intrusive_ptr< abstract_group >
 Ccaf::intrusive_ptr< actor_control_block >
 Ccaf::intrusive_ptr< caf::io::scribe >
 Ccaf::intrusive_ptr< caf::logger >
 Ccaf::intrusive_ptr< caf::ref_counted >
 Ccaf::intrusive_ptr< caf::resumable >
 Ccaf::intrusive_ptr< const detail::uri_impl >
 Ccaf::intrusive_ptr< data >
 Ccaf::intrusive_ptr< datagram_manager >
 Ccaf::intrusive_ptr< datagram_servant >
 Ccaf::intrusive_ptr< detail::behavior_impl >
 Ccaf::intrusive_ptr< detail::uri_impl >
 Ccaf::intrusive_ptr< doorman >
 Ccaf::intrusive_ptr< manager_type >
 Ccaf::intrusive_ptr< scribe >
 Ccaf::intrusive_ptr< sink_type >
 Ccaf::intrusive_ptr< source_type >
 Ccaf::intrusive_ptr< stage_type >
 Ccaf::intrusive_ptr< stream_manager >
 Ccaf::mailbox_element_vals< SysMsgType >
 Ccaf::optional< size_t >
 Ccaf::response_type< detail::type_list< Ts... >, Xs... >
 Ccaf::response_type< Ts, message >
 Ccaf::response_type< Ts, Xs... >
 Ccaf::stateful_actor< basp_broker_state, broker >
 Ccaf::stream_buffer< Container::value_type, std::char_traits< Container::value_type > >
 Ccaf::typed_actor< replies_to< publish_atom, uint16_t, strong_actor_ptr, std::set< std::string >, std::string, bool > ::with< uint16_t >, replies_to< publish_udp_atom, uint16_t, strong_actor_ptr, std::set< std::string >, std::string, bool > ::with< uint16_t >, replies_to< open_atom, uint16_t, std::string, bool > ::with< uint16_t >, replies_to< connect_atom, std::string, uint16_t > ::with< node_id, strong_actor_ptr, std::set< std::string > >, replies_to< contact_atom, std::string, uint16_t > ::with< node_id, strong_actor_ptr, std::set< std::string > >, reacts_to< unpublish_atom, actor_addr, uint16_t >, reacts_to< unpublish_udp_atom, actor_addr, uint16_t >, reacts_to< close_atom, uint16_t >, replies_to< spawn_atom, node_id, std::string, message, std::set< std::string > > ::with< strong_actor_ptr >, replies_to< get_atom, node_id >::with< node_id, std::string, uint16_t > >
 Ccaf::typed_actor< Ts... >
 Ccaf::variant< ack_open, ack_batch, drop, forced_drop >
 Ccaf::variant< batch, close, forced_close >
 Ccaf::variant< std::string, ip_address >
 Ccaf::weak_intrusive_ptr< actor_control_block >