Realistic 3D camera system
3D camera system components
write_at.hpp
Go to the documentation of this file.
1 //
2 // write_at.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_WRITE_AT_HPP
12 #define ASIO_WRITE_AT_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"
19 #include <cstddef>
20 #include "asio/async_result.hpp"
22 #include "asio/detail/cstdint.hpp"
23 #include "asio/error.hpp"
24 
26 
27 namespace asio {
28 
35 
37 
75 template <typename SyncRandomAccessWriteDevice, typename ConstBufferSequence>
76 std::size_t write_at(SyncRandomAccessWriteDevice& d,
77  uint64_t offset, const ConstBufferSequence& buffers);
78 
80 
119 template <typename SyncRandomAccessWriteDevice, typename ConstBufferSequence>
120 std::size_t write_at(SyncRandomAccessWriteDevice& d,
121  uint64_t offset, const ConstBufferSequence& buffers,
122  asio::error_code& ec);
123 
125 
173 template <typename SyncRandomAccessWriteDevice, typename ConstBufferSequence,
174  typename CompletionCondition>
175 std::size_t write_at(SyncRandomAccessWriteDevice& d,
176  uint64_t offset, const ConstBufferSequence& buffers,
177  CompletionCondition completion_condition);
178 
180 
221 template <typename SyncRandomAccessWriteDevice, typename ConstBufferSequence,
222  typename CompletionCondition>
223 std::size_t write_at(SyncRandomAccessWriteDevice& d,
224  uint64_t offset, const ConstBufferSequence& buffers,
225  CompletionCondition completion_condition, asio::error_code& ec);
226 
227 #if !defined(ASIO_NO_IOSTREAM)
228 
230 
258 template <typename SyncRandomAccessWriteDevice, typename Allocator>
259 std::size_t write_at(SyncRandomAccessWriteDevice& d,
260  uint64_t offset, basic_streambuf<Allocator>& b);
261 
263 
291 template <typename SyncRandomAccessWriteDevice, typename Allocator>
292 std::size_t write_at(SyncRandomAccessWriteDevice& d,
293  uint64_t offset, basic_streambuf<Allocator>& b,
294  asio::error_code& ec);
295 
297 
334 template <typename SyncRandomAccessWriteDevice, typename Allocator,
335  typename CompletionCondition>
336 std::size_t write_at(SyncRandomAccessWriteDevice& d, uint64_t offset,
337  basic_streambuf<Allocator>& b, CompletionCondition completion_condition);
338 
340 
378 template <typename SyncRandomAccessWriteDevice, typename Allocator,
379  typename CompletionCondition>
380 std::size_t write_at(SyncRandomAccessWriteDevice& d, uint64_t offset,
381  basic_streambuf<Allocator>& b, CompletionCondition completion_condition,
382  asio::error_code& ec);
383 
384 #endif // !defined(ASIO_NO_IOSTREAM)
385 
394 
397 
451 template <typename AsyncRandomAccessWriteDevice, typename ConstBufferSequence,
452  typename WriteHandler>
453 ASIO_INITFN_RESULT_TYPE(WriteHandler,
454  void (asio::error_code, std::size_t))
455 async_write_at(AsyncRandomAccessWriteDevice& d, uint64_t offset,
456  const ConstBufferSequence& buffers,
457  ASIO_MOVE_ARG(WriteHandler) handler);
458 
461 
530 template <typename AsyncRandomAccessWriteDevice, typename ConstBufferSequence,
531  typename CompletionCondition, typename WriteHandler>
532 ASIO_INITFN_RESULT_TYPE(WriteHandler,
533  void (asio::error_code, std::size_t))
534 async_write_at(AsyncRandomAccessWriteDevice& d,
535  uint64_t offset, const ConstBufferSequence& buffers,
536  CompletionCondition completion_condition,
537  ASIO_MOVE_ARG(WriteHandler) handler);
538 
539 #if !defined(ASIO_NO_IOSTREAM)
540 
543 
586 template <typename AsyncRandomAccessWriteDevice, typename Allocator,
587  typename WriteHandler>
588 ASIO_INITFN_RESULT_TYPE(WriteHandler,
589  void (asio::error_code, std::size_t))
590 async_write_at(AsyncRandomAccessWriteDevice& d, uint64_t offset,
591  basic_streambuf<Allocator>& b, ASIO_MOVE_ARG(WriteHandler) handler);
592 
595 
652 template <typename AsyncRandomAccessWriteDevice, typename Allocator,
653  typename CompletionCondition, typename WriteHandler>
654 ASIO_INITFN_RESULT_TYPE(WriteHandler,
655  void (asio::error_code, std::size_t))
656 async_write_at(AsyncRandomAccessWriteDevice& d, uint64_t offset,
657  basic_streambuf<Allocator>& b, CompletionCondition completion_condition,
658  ASIO_MOVE_ARG(WriteHandler) handler);
659 
660 #endif // !defined(ASIO_NO_IOSTREAM)
661 
664 } // namespace asio
665 
667 
668 #include "asio/impl/write_at.hpp"
669 
670 #endif // ASIO_WRITE_AT_HPP
STL namespace.
uint64_t offset
Definition: read_at.hpp:571
asio::basic_streambuf< Allocator > & b
Definition: read.hpp:702
ASIO_INITFN_RESULT_TYPE(ComposedConnectHandler, void(asio::error_code, Iterator)) async_connect(basic_socket< Protocol
std::size_t write_at(SyncRandomAccessWriteDevice &d, uint64_t offset, const ConstBufferSequence &buffers, CompletionCondition completion_condition, asio::error_code &ec)
Write a certain amount of data at a specified offset before returning.
Definition: write_at.hpp:37
const MutableBufferSequence & buffers
Definition: read.hpp:521
asio::basic_streambuf< Allocator > CompletionCondition ASIO_MOVE_ARG(ReadHandler) handler)
Definition: read.hpp:704
Class to represent an error code value.
Definition: error_code.hpp:80
const MutableBufferSequence CompletionCondition completion_condition
Definition: read.hpp:521