xtd 0.2.0
address_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 address_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::address_family> {
98  explicit operator auto() const noexcept {return xtd::enum_collection<xtd::net::sockets::address_family> {{xtd::net::sockets::address_family::unknown, "unknown"}, {xtd::net::sockets::address_family::unspecified, "unspecified"}, {xtd::net::sockets::address_family::unix, "unix"}, {xtd::net::sockets::address_family::inter_network, "inter_network"}, {xtd::net::sockets::address_family::imp_link, "imp_link"}, {xtd::net::sockets::address_family::pup, "pup"}, {xtd::net::sockets::address_family::chaos, "chaos"}, /*{xtd::net::sockets::address_family::ns, "ns"},*/ {xtd::net::sockets::address_family::ipx, "ipx"}, {xtd::net::sockets::address_family::iso, "iso"}, /*{xtd::net::sockets::address_family::osi, "osi"},*/ {xtd::net::sockets::address_family::ecma, "ecma"}, {xtd::net::sockets::address_family::data_kit, "data_kit"}, {xtd::net::sockets::address_family::ccitt, "ccitt"}, {xtd::net::sockets::address_family::sna, "sna"}, {xtd::net::sockets::address_family::dec_net, "dec_net"}, {xtd::net::sockets::address_family::data_link, "data_link"}, {xtd::net::sockets::address_family::lat, "lat"}, {xtd::net::sockets::address_family::hyper_channel, "hyper_channel"}, {xtd::net::sockets::address_family::apple_talk, "apple_talk"}, {xtd::net::sockets::address_family::net_bios, "net_bios"}, {xtd::net::sockets::address_family::voice_view, "voice_view"}, {xtd::net::sockets::address_family::fire_fox, "fire_fox"}, {xtd::net::sockets::address_family::banyan, "banyan"}, {xtd::net::sockets::address_family::atm, "atm"}, {xtd::net::sockets::address_family::inter_network_v6, "inter_network_v6"}, {xtd::net::sockets::address_family::cluster, "cluster"}, {xtd::net::sockets::address_family::ieee12844, "ieee12844"}, {xtd::net::sockets::address_family::irda, "irda"}, {xtd::net::sockets::address_family::network_designers, "network_designers"}, {xtd::net::sockets::address_family::max, "max"}};}
99 };
Address for Microsoft cluster products.
Address for ISO protocols.
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
address_family
Specifies the addressing scheme that an instance of the xtd::net::sockets::socket class can use...
Definition: address_family.h:28