axmol/thirdparty/yasio/detail/select_interrupter.hpp

48 lines
1.3 KiB
C++

//////////////////////////////////////////////////////////////////////////////////////////
// A multi-platform support c++11 library with focus on asynchronous socket I/O for any
// client application.
//////////////////////////////////////////////////////////////////////////////////////////
//
// detail/select_interrupter.hpp
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Copyright (c) 2012-2022 HALX99 (halx99 at live dot com)
// Copyright (c) 2003-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com)
//
// Distributed under the Boost Software License, Version 1.0. (See accompanying
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
//
// see also: https://github.com/chriskohlhoff/asio
//
#ifndef YASIO__SELECT_INTERRUPTER_HPP
#define YASIO__SELECT_INTERRUPTER_HPP
#include "yasio/compiler/feature_test.hpp"
#if defined(_WIN32)
# include "socket_select_interrupter.hpp"
#elif defined(__linux__)
# include "eventfd_select_interrupter.hpp"
#else
# include "pipe_select_interrupter.hpp"
#endif
namespace yasio
{
YASIO__NS_INLINE
namespace inet
{
#if defined(_WIN32)
typedef socket_select_interrupter select_interrupter;
#elif defined(__linux__)
typedef eventfd_select_interrupter select_interrupter;
#else
typedef pipe_select_interrupter select_interrupter;
#endif
} // namespace inet
} // namespace yasio
#endif // YASIO__SELECT_INTERRUPTER_HPP