C++ Actor Framework 0.18
Loading...
Searching...
No Matches
Classes | Enumerations | Functions | Variables
caf::io::basp Namespace Reference

Contains all classes and functions for the Binary Actor System Protocol. More...

Classes

struct  header
 The header of a Binary Actor System Protocol (BASP) message. More...
 
class  instance
 Describes a protocol instance managing multiple connections. More...
 
class  message_queue
 Enforces strict order of message delivery, i.e., deliver messages in the same order as if they were deserialized by a single thread. More...
 
class  routing_table
 Stores routing information for a single broker participating as BASP peer and provides both direct and indirect paths. More...
 
class  worker
 Deserializes payloads for BASP messages asynchronously. More...
 

Enumerations

enum  connection_state {
  await_header ,
  await_payload ,
  close_connection ,
  incompatible_versions ,
  incompatible_application_ids ,
  malformed_basp_message ,
  serializing_basp_payload_failed ,
  redundant_connection ,
  no_route_to_receiving_node
}
 Denotes the state of a connection between two BASP nodes. More...
 
enum class  message_type : uint8_t {
  message_type::server_handshake = 0x00 ,
  message_type::client_handshake = 0x01 ,
  message_type::direct_message = 0x02 ,
  message_type::routed_message = 0x03 ,
  message_type::monitor_message = 0x04 ,
  message_type::down_message = 0x05 ,
  message_type::heartbeat = 0x06
}
 Describes the first header field of a BASP message and determines the interpretation of the other header fields. More...
 

Functions

constexpr bool requires_shutdown (connection_state x) noexcept
 Returns whether the connection state requires a shutdown of the socket connection.
 
sec to_sec (connection_state x) noexcept
 Converts the connection state to a system error code if it holds one of the overlapping values.
 
CAF_IO_EXPORT std::string to_string (connection_state x)
 
bool is_handshake (const header &hdr)
 Checks whether given header contains a handshake.
 
bool is_heartbeat (const header &hdr)
 Checks whether given header contains a heartbeat.
 
CAF_IO_EXPORT std::string to_string (message_type)
 
CAF_IO_EXPORT bool from_string (string_view, message_type &)
 
CAF_IO_EXPORT bool from_integer (std::underlying_type_t< message_type >, message_type &)
 
template<class Inspector >
bool inspect (Inspector &f, message_type &x)
 

Variables

constexpr uint64_t version = 4
 The current BASP version. Note: BASP is not backwards compatible.
 

Detailed Description

Contains all classes and functions for the Binary Actor System Protocol.