xtd 0.2.0
protocol_family.h
Go to the documentation of this file.
1 #pragma once
5 #include "../../enum.h"
6 
8 #undef unix
9 
12 namespace xtd {
14  namespace net {
16  namespace sockets {
28  enum class protocol_family {
30  unknown = -1,
32  unspecified = 0,
34  unix = 1,
36  inter_network = 2,
38  imp_link = 3,
40  pup = 4,
42  chaos = 5,
44  ns = 6,
46  ipx = 6,
48  iso = 7,
50  osi = 7,
52  ecma = 8,
54  data_kit = 9,
56  ccitt = 10,
58  sna = 11,
60  dec_net = 12,
62  data_link = 13,
64  lat = 14,
66  hyper_channel = 15,
68  apple_talk = 16,
70  net_bios = 17,
72  voice_view = 18,
74  fire_fox = 19,
76  banyan = 21,
78  atm = 22,
80  inter_network_v6 = 23,
82  cluster = 24,
84  ieee12844 = 25,
86  irda = 26,
88  network_designers = 28,
90  max = 29,
91  };
92  }
93  }
94 }
95 
97 template<> struct xtd::enum_register<xtd::net::sockets::protocol_family> {
98  explicit operator auto() const noexcept {return xtd::enum_collection<xtd::net::sockets::protocol_family> {{xtd::net::sockets::protocol_family::unknown, "unknown"}, {xtd::net::sockets::protocol_family::unspecified, "unspecified"}, {xtd::net::sockets::protocol_family::unix, "unix"}, {xtd::net::sockets::protocol_family::inter_network, "inter_network"}, {xtd::net::sockets::protocol_family::imp_link, "imp_link"}, {xtd::net::sockets::protocol_family::pup, "pup"}, {xtd::net::sockets::protocol_family::chaos, "chaos"}, {xtd::net::sockets::protocol_family::ipx, "ipx"}, {xtd::net::sockets::protocol_family::iso, "iso"}, {xtd::net::sockets::protocol_family::ecma, "ecma"}, {xtd::net::sockets::protocol_family::data_kit, "data_kit"}, {xtd::net::sockets::protocol_family::ccitt, "ccitt"}, {xtd::net::sockets::protocol_family::sna, "sna"}, {xtd::net::sockets::protocol_family::dec_net, "dec_net"}, {xtd::net::sockets::protocol_family::data_link, "data_link"}, {xtd::net::sockets::protocol_family::lat, "lat"}, {xtd::net::sockets::protocol_family::hyper_channel, "hyper_channel"}, {xtd::net::sockets::protocol_family::apple_talk, "apple_talk"}, {xtd::net::sockets::protocol_family::net_bios, "net_bios"}, {xtd::net::sockets::protocol_family::voice_view, "voice_view"}, {xtd::net::sockets::protocol_family::fire_fox, "fire_fox"}, {xtd::net::sockets::protocol_family::banyan, "banyan"}, {xtd::net::sockets::protocol_family::atm, "atm"}, {xtd::net::sockets::protocol_family::inter_network_v6, "inter_network_v6"}, {xtd::net::sockets::protocol_family::cluster, "cluster"}, {xtd::net::sockets::protocol_family::ieee12844, "ieee12844"}, {xtd::net::sockets::protocol_family::irda, "irda"}, {xtd::net::sockets::protocol_family::network_designers, "network_designers"}, {xtd::net::sockets::protocol_family::max, "max"}};}
99 };
Address for Microsoft cluster products.
Address for ISO protocols.
protocol_family
Specifies the type of protocol that an instance of the xtd::net::sockets::socket class can use...
Definition: protocol_family.h:28
European Computer Manufacturers Association (ECMA) address.
IEEE 1284.4 workgroup address.
The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.
Definition: system_report.h:17
Address for Network Designers OSI gateway-enabled protocols.
std::vector< std::pair< enum_t, xtd::ustring > > enum_collection
Represents a pair of an enum_t value and a string of an enum of type enum_t.
Definition: enum_collection.h:19
Address for PUP protocols.
Address for OSI protocols.
Unix local to host address.
Address for Xerox NS protocols.
Direct data-link interface address.
Native ATM services address.
Address for Datakit protocols.
Addresses for CCITT protocols, such as X.25.
Address for MIT CHAOS protocols.
Provides the registration struct for enumerations.
Definition: enum_register.h:36