18 #ifndef INCLUDE_RCF_ASIO_HPP 19 #define INCLUDE_RCF_ASIO_HPP 26 #pragma warning(disable: 4996) // error C4996: 'WSAAddressToStringA': Use WSAAddressToStringW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings 29 #include <RCF/Config.hpp> 30 #include <RCF/AsioFwd.hpp> 32 #if defined(RCF_WINDOWS) || defined(__CYGWIN__) 33 # if defined(_WINSOCKAPI_) && !defined(_WINSOCK2API_) 34 # error WinSock.h has already been included. Define WIN32_LEAN_AND_MEAN in your build, to avoid implicit inclusion of WinSock.h. 35 # endif // defined(_WINSOCKAPI_) && !defined(_WINSOCK2API_) 38 #ifdef RCF_USE_BOOST_ASIO 39 #include <boost/asio.hpp> 41 #include <RCF/external/asio/asio.hpp> 45 #ifdef RCF_USE_BOOST_ASIO 46 #ifdef BOOST_ASIO_HAS_LOCAL_SOCKETS 47 #define RCF_HAS_LOCAL_SOCKETS 50 #ifdef ASIO_HAS_LOCAL_SOCKETS 51 #define RCF_HAS_LOCAL_SOCKETS 55 #include <RCF/AsioDeadlineTimer.hpp> 60 typedef ASIO_NS::ip::tcp::socket AsioSocket;
61 typedef std::shared_ptr<AsioSocket> AsioSocketPtr;
63 typedef ASIO_NS::const_buffer AsioConstBuffer;
65 typedef AsioSocket TcpSocket;
66 typedef std::shared_ptr<TcpSocket> TcpSocketPtr;
68 #ifdef RCF_HAS_LOCAL_SOCKETS 70 using ASIO_NS::local::stream_protocol;
71 typedef stream_protocol::socket UnixLocalSocket;
72 typedef std::shared_ptr<UnixLocalSocket> UnixLocalSocketPtr;
76 typedef TcpSocket UnixLocalSocket;
77 typedef TcpSocketPtr UnixLocalSocketPtr;
87 #endif // ! INCLUDE_RCF_ASIO_HPP Definition: AmiIoHandler.hpp:23