$search
00001 // 00002 // read.hpp 00003 // ~~~~~~~~ 00004 // 00005 // Copyright (c) 2003-2008 Christopher M. Kohlhoff (chris at kohlhoff dot com) 00006 // 00007 // Distributed under the Boost Software License, Version 1.0. (See accompanying 00008 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 00009 // 00010 00011 #ifndef ASIO_READ_HPP 00012 #define ASIO_READ_HPP 00013 00014 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 00015 # pragma once 00016 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200) 00017 00018 #include "asio/detail/push_options.hpp" 00019 00020 #include "asio/detail/push_options.hpp" 00021 #include <cstddef> 00022 #include <boost/config.hpp> 00023 #include "asio/detail/pop_options.hpp" 00024 00025 #include "asio/basic_streambuf.hpp" 00026 #include "asio/error.hpp" 00027 00028 namespace asio { 00029 00037 00039 00074 template <typename SyncReadStream, typename MutableBufferSequence> 00075 std::size_t read(SyncReadStream& s, const MutableBufferSequence& buffers); 00076 00078 00122 template <typename SyncReadStream, typename MutableBufferSequence, 00123 typename CompletionCondition> 00124 std::size_t read(SyncReadStream& s, const MutableBufferSequence& buffers, 00125 CompletionCondition completion_condition); 00126 00128 00165 template <typename SyncReadStream, typename MutableBufferSequence, 00166 typename CompletionCondition> 00167 std::size_t read(SyncReadStream& s, const MutableBufferSequence& buffers, 00168 CompletionCondition completion_condition, asio::error_code& ec); 00169 00171 00194 template <typename SyncReadStream, typename Allocator> 00195 std::size_t read(SyncReadStream& s, basic_streambuf<Allocator>& b); 00196 00198 00229 template <typename SyncReadStream, typename Allocator, 00230 typename CompletionCondition> 00231 std::size_t read(SyncReadStream& s, basic_streambuf<Allocator>& b, 00232 CompletionCondition completion_condition); 00233 00235 00267 template <typename SyncReadStream, typename Allocator, 00268 typename CompletionCondition> 00269 std::size_t read(SyncReadStream& s, basic_streambuf<Allocator>& b, 00270 CompletionCondition completion_condition, asio::error_code& ec); 00271 00280 00283 00338 template <typename AsyncReadStream, typename MutableBufferSequence, 00339 typename ReadHandler> 00340 void async_read(AsyncReadStream& s, const MutableBufferSequence& buffers, 00341 ReadHandler handler); 00342 00345 00406 template <typename AsyncReadStream, typename MutableBufferSequence, 00407 typename CompletionCondition, typename ReadHandler> 00408 void async_read(AsyncReadStream& s, const MutableBufferSequence& buffers, 00409 CompletionCondition completion_condition, ReadHandler handler); 00410 00413 00454 template <typename AsyncReadStream, typename Allocator, typename ReadHandler> 00455 void async_read(AsyncReadStream& s, basic_streambuf<Allocator>& b, 00456 ReadHandler handler); 00457 00460 00509 template <typename AsyncReadStream, typename Allocator, 00510 typename CompletionCondition, typename ReadHandler> 00511 void async_read(AsyncReadStream& s, basic_streambuf<Allocator>& b, 00512 CompletionCondition completion_condition, ReadHandler handler); 00513 00516 } // namespace asio 00517 00518 #include "asio/impl/read.ipp" 00519 00520 #include "asio/detail/pop_options.hpp" 00521 00522 #endif // ASIO_READ_HPP