Core Library 1.7.0.0 Library containing core utilities and tools for threading, networking, logging, INI and CSV file management etc.

Classes | Typedefs | Enumerations | Functions | Variables
core_lib::asio::defs Namespace Reference

The asio_defs namespace. More...

## Classes
struct | MessageHeader
| Default message header structure that is also POD. More...
struct | ReceivedMessage
| Template class to act as a generic wrapper around a received message for a given header type. More...

## Typedefs
using | connection_t = std::pair< std::string, uint16_t >
| Typedef describing a network connection as (address, port).
using | tcp_conn_ptr_t = std::shared_ptr< tcp::TcpConnection >
| Typedef describing shared_ptr to a TcpConnection object.
using | char_buffer_t = std::vector< char >
| Typedef to generic char buffer based on s std::vector<char>.
using | default_received_message_t = ReceivedMessage< MessageHeader >
| Typedef to default version of received message typed to default message header struct.
using | default_received_message_ptr_t = std::shared_ptr< default_received_message_t >
| Typedef to default version of received message shared pointer.
using | default_message_dispatcher_t = std::function< void(default_received_message_ptr_t)>
| Typedef to default message dispatcher function object.
using | check_bytes_left_to_read_t = std::function< size_t(const char_buffer_t &)>
| Typedef to bytes left to reading checking utility function object.
using | message_received_handler_t = std::function< void(const char_buffer_t &)>
| Typedef to message received handler function object.

## Enumerations
enum | eRespAddressLen : uint32_t { RESPONSE_ADDRESS_LEN = 16 }
| Constant defining response IP address length in bytes.
enum | eMagicStringLen : uint32_t { MAGIC_STRING_LEN = 16 }
| Constant defining message header magic string length in bytes.
enum | eArchiveType : uint8_t { eArchiveType::portableBinary, eArchiveType::binary, eArchiveType::json, eArchiveType::xml, eArchiveType::raw, eArchiveType::protobuf }
| Message serialization archive type enumeration. More...
enum | eMessageHeaderLen : size_t { MESSAGE_HEADER_LEN = sizeof(MessageHeader) }
| Constant defining message header magic string length in bytes.

## Functions
const connection_t | NULL_CONNECTION ("0.0.0.0", 0)

## Variables
const connection_t | NULL_CONNECTION
| Constant defining a null network connection as ("0.0.0.0", 0).
const char | DEFAULT_MAGIC_STRING [] {"_BEGIN_MESSAGE_"}
| Constant defining default magc string as "_BEGIN_MESSAGE_".

## Detailed Description

The asio_defs namespace.

## Enumeration Type Documentation

## ◆ eArchiveType

enum core_lib::asio::defs::eArchiveType : uint8_t
| strong

Message serialization archive type enumeration.

Enumerator
portableBinary | Portable binary archive, requires Cereal serialization.
binary | Binary archive, requires Cereal serialization.
json | JSON archive, requires Cereal serialization.
xml | XML archive, requires Cereal serialization.
raw | Raw data, only for POD objects.
protobuf | Google protocol buffer.