asio_fwd.hpp 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. // Copyright (c) 2016 Klemens D. Morgenstern
  2. //
  3. // Distributed under the Boost Software License, Version 1.0. (See accompanying
  4. // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  5. #ifndef BOOST_PROCESS_DETAIL_WINDOWS_ASIO_FWD_HPP_
  6. #define BOOST_PROCESS_DETAIL_WINDOWS_ASIO_FWD_HPP_
  7. #include <memory>
  8. namespace boost { namespace asio {
  9. class mutable_buffer;
  10. class mutable_buffers_1;
  11. class const_buffer;
  12. class const_buffers_1;
  13. template<typename Allocator>
  14. class basic_streambuf;
  15. typedef basic_streambuf<std::allocator<char>> streambuf;
  16. class io_context;
  17. template <typename Handler>
  18. class basic_yield_context;
  19. namespace windows {
  20. #if defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
  21. class stream_handle_service;
  22. template <typename StreamHandleService>
  23. class basic_stream_handle;
  24. typedef basic_stream_handle<stream_handle_service> stream_handle;
  25. #else /* defined(BOOST_ASIO_ENABLE_OLD_SERVICES) */
  26. class stream_handle;
  27. #endif /* defined(BOOST_ASIO_ENABLE_OLD_SERVICES) */
  28. #if defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
  29. class object_handle_service;
  30. template <typename ObjectHandleService>
  31. class basic_object_handle;
  32. typedef basic_object_handle<object_handle_service> object_handle;
  33. #else /* defined(BOOST_ASIO_ENABLE_OLD_SERVICES) */
  34. class object_handle;
  35. #endif /* defined(BOOST_ASIO_ENABLE_OLD_SERVICES) */
  36. } //windows
  37. } //asio
  38. namespace process { namespace detail { namespace windows {
  39. class async_pipe;
  40. template<typename T>
  41. struct async_in_buffer;
  42. template<int p1, int p2, typename Buffer>
  43. struct async_out_buffer;
  44. template<int p1, int p2, typename Type>
  45. struct async_out_future;
  46. } // windows
  47. } // detail
  48. using ::boost::process::detail::windows::async_pipe;
  49. } // process
  50. } // boost
  51. #endif /* BOOST_PROCESS_DETAIL_WINDOWS_ASIO_FWD_HPP_ */