XTL  0.1
eXtended Template Library
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
General purpose socket communication

Namespaces

 xtd::socket
 General purpose socket communication.
 

Data Structures

class  xtd::socket::bindable_socket< _SuperT >
 Server side binding behavior. More...
 
class  xtd::socket::connectable_socket< _SuperT >
 Client side connecting behavior. More...
 
class  xtd::socket::exception
 Represents an socket error. More...
 
class  xtd::socket::ip_options< _SuperT >
 IP based socket properties. More...
 
class  xtd::socket::ipv4address
 IPv4 address wrapper around sockaddr_in. More...
 
class  xtd::socket::ipv6address
 IPv6 address wrapper around sockaddr_in6. More...
 
class  xtd::socket::listening_socket< _SuperT >
 Server side listening behavior. More...
 
class  xtd::socket::polling_socket< _SuperT >
 Polling behavior policy. More...
 
class  xtd::socket::selectable_socket< _SuperT >
 Async IO select behavior. More...
 
class  xtd::socket::serializer< typename >
 Serializes data on a socket. More...
 
class  xtd::socket::socket_base< _AddressT, _SocketT, _Protocol >
 Base class of the various socket specializations Hierarchy generation TMP pattern to create all the socket object types with the various behavioral policies. More...
 
class  xtd::socket::socket_options< _SuperT >
 Socket properties. More...
 
class  xtd::socket::tcp_options< _SuperT >
 TCP based socket properties. More...
 
class  xtd::socket::udp_options< _SuperT >
 UDP socket properties. More...
 

Typedefs

using xtd::socket::ipv4_tcp_stream = socket_base< ipv4address, socket_type::stream, socket_protocol::tcp, socket_options, ip_options, tcp_options, connectable_socket, bindable_socket, listening_socket, selectable_socket >
 General purpose IPV4 client and server socket type.
 
using xtd::socket::ipv4_udp_socket = socket_base< ipv4address, socket_type::datagram, socket_protocol::udp, socket_options, ip_options, udp_options >
 General purpose UDP socket type.
 

Enumerations

enum  xtd::socket::socket_protocol {
  xtd::socket::socket_protocol::ip = IPPROTO_IP,
  xtd::socket::socket_protocol::icmp = IPPROTO_ICMP,
  xtd::socket::socket_protocol::tcp = IPPROTO_TCP,
  xtd::socket::socket_protocol::udp = IPPROTO_UDP,
  xtd::socket::socket_protocol::ipv6 = IPPROTO_IPV6
}
 IP based protocols. More...
 
enum  xtd::socket::socket_type {
  xtd::socket::socket_type::stream = SOCK_STREAM,
  xtd::socket::socket_type::datagram = SOCK_DGRAM,
  xtd::socket::socket_type::raw = SOCK_RAW
}
 socket communication styles More...
 

Detailed Description


Data Structure Documentation

class xtd::socket::serializer

template<typename>
class xtd::socket::serializer< typename >

Serializes data on a socket.

Definition at line 165 of file socket.hpp.

+ Collaboration diagram for xtd::socket::serializer< typename >:

Enumeration Type Documentation

#include <socket.hpp>

IP based protocols.

Enumerator
ip 

ip Internet Protocol v4

icmp 

icmp Internet Control Message Protocol

tcp 

tcp Transmission Control Protocol

udp 

udp User Datagram Protocol

ipv6 

ipv6 Internet Protocol v6

Definition at line 153 of file socket.hpp.

#include <socket.hpp>

socket communication styles

Enumerator
stream 

stream reliable FIFO stream on a remote socket

datagram 

datagram unreliable connectionless broadcast

raw 

raw interface level data

Definition at line 146 of file socket.hpp.