Realistic 3D camera system
3D camera system components
socket_base.hpp
Go to the documentation of this file.
1 //
2 // socket_base.hpp
3 // ~~~~~~~~~~~~~~~
4 //
5 // Copyright (c) 2003-2015 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6 //
7 // Distributed under the Boost Software License, Version 1.0. (See accompanying
8 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9 //
10 
11 #ifndef ASIO_SOCKET_BASE_HPP
12 #define ASIO_SOCKET_BASE_HPP
13 
14 #if defined(_MSC_VER) && (_MSC_VER >= 1200)
15 # pragma once
16 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17 
18 #include "asio/detail/config.hpp"
22 
24 
25 namespace asio {
26 
31 {
32 public:
35  {
36 #if defined(GENERATING_DOCUMENTATION)
37  shutdown_receive = implementation_defined,
39 
41  shutdown_send = implementation_defined,
42 
44  shutdown_both = implementation_defined
45 #else
47  shutdown_send = ASIO_OS_DEF(SHUT_WR),
48  shutdown_both = ASIO_OS_DEF(SHUT_RDWR)
49 #endif
50  };
51 
53  typedef int message_flags;
54 
55 #if defined(GENERATING_DOCUMENTATION)
56  static const int message_peek = implementation_defined;
58 
60  static const int message_out_of_band = implementation_defined;
61 
63  static const int message_do_not_route = implementation_defined;
64 
66  static const int message_end_of_record = implementation_defined;
67 #else
69  message_peek = ASIO_OS_DEF(MSG_PEEK));
71  message_out_of_band = ASIO_OS_DEF(MSG_OOB));
73  message_do_not_route = ASIO_OS_DEF(MSG_DONTROUTE));
75  message_end_of_record = ASIO_OS_DEF(MSG_EOR));
76 #endif
77 
79 
104 #if defined(GENERATING_DOCUMENTATION)
105  typedef implementation_defined broadcast;
106 #else
108  ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_BROADCAST)>
110 #endif
111 
113 
138 #if defined(GENERATING_DOCUMENTATION)
139  typedef implementation_defined debug;
140 #else
142  ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_DEBUG)> debug;
143 #endif
144 
146 
171 #if defined(GENERATING_DOCUMENTATION)
172  typedef implementation_defined do_not_route;
173 #else
175  ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_DONTROUTE)>
177 #endif
178 
180 
205 #if defined(GENERATING_DOCUMENTATION)
206  typedef implementation_defined keep_alive;
207 #else
209  ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_KEEPALIVE)> keep_alive;
210 #endif
211 
213 
238 #if defined(GENERATING_DOCUMENTATION)
239  typedef implementation_defined send_buffer_size;
240 #else
242  ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_SNDBUF)>
244 #endif
245 
247 
272 #if defined(GENERATING_DOCUMENTATION)
273  typedef implementation_defined send_low_watermark;
274 #else
276  ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_SNDLOWAT)>
278 #endif
279 
281 
306 #if defined(GENERATING_DOCUMENTATION)
307  typedef implementation_defined receive_buffer_size;
308 #else
310  ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_RCVBUF)>
312 #endif
313 
315 
340 #if defined(GENERATING_DOCUMENTATION)
341  typedef implementation_defined receive_low_watermark;
342 #else
344  ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_RCVLOWAT)>
346 #endif
347 
350 
375 #if defined(GENERATING_DOCUMENTATION)
376  typedef implementation_defined reuse_address;
377 #else
379  ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_REUSEADDR)>
381 #endif
382 
385 
411 #if defined(GENERATING_DOCUMENTATION)
412  typedef implementation_defined linger;
413 #else
415  ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_LINGER)>
417 #endif
418 
420 
447 #if defined(GENERATING_DOCUMENTATION)
448  typedef implementation_defined enable_connection_aborted;
449 #else
454 #endif
455 
458 
472 #if defined(GENERATING_DOCUMENTATION)
473  typedef implementation_defined non_blocking_io;
474 #else
476 #endif
477 
480 
495 #if defined(GENERATING_DOCUMENTATION)
496  typedef implementation_defined bytes_readable;
497 #else
499 #endif
500 
502 #if defined(GENERATING_DOCUMENTATION)
503  static const int max_connections = implementation_defined;
504 #else
505  ASIO_STATIC_CONSTANT(int, max_connections
506  = ASIO_OS_DEF(SOMAXCONN));
507 #endif
508 
509 protected:
512  {
513  }
514 };
515 
516 } // namespace asio
517 
519 
520 #endif // ASIO_SOCKET_BASE_HPP
asio::detail::socket_option::boolean< ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_REUSEADDR)> reuse_address
int message_flags
Bitmask type for flags that can be passed to send and receive operations.
Definition: socket_base.hpp:53
asio::detail::socket_option::linger< ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_LINGER)> linger
#define ASIO_OS_DEF(c)
asio::detail::socket_option::boolean< ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_BROADCAST)> broadcast
Socket option to permit sending of broadcast messages.
asio::detail::socket_option::integer< ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_RCVBUF)> receive_buffer_size
Socket option for the receive buffer size of a socket.
asio::detail::socket_option::integer< ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_SNDBUF)> send_buffer_size
Socket option for the send buffer size of a socket.
asio::detail::socket_option::boolean< ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_DONTROUTE)> do_not_route
Socket option to prevent routing, use local interfaces only.
asio::detail::io_control::bytes_readable bytes_readable
asio::detail::io_control::non_blocking_io non_blocking_io
asio::detail::socket_option::boolean< ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_KEEPALIVE)> keep_alive
Socket option to send keep-alives.
const int custom_socket_option_level
shutdown_type
Different ways a socket may be shutdown.
Definition: socket_base.hpp:34
asio::detail::socket_option::integer< ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_SNDLOWAT)> send_low_watermark
Socket option for the send low watermark.
~socket_base()
Protected destructor to prevent deletion through this type.
asio::detail::socket_option::boolean< asio::detail::custom_socket_option_level, asio::detail::enable_connection_aborted_option > enable_connection_aborted
Socket option to report aborted connections on accept.
asio::detail::socket_option::integer< ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_RCVLOWAT)> receive_low_watermark
Socket option for the receive low watermark.
asio::detail::socket_option::boolean< ASIO_OS_DEF(SOL_SOCKET), ASIO_OS_DEF(SO_DEBUG)> debug
Socket option to enable socket-level debugging.
ASIO_STATIC_CONSTANT(int, message_peek=ASIO_OS_DEF(MSG_PEEK))
const int enable_connection_aborted_option