11 #ifndef ASIO_DETAIL_REACTIVE_SOCKET_SENDTO_OP_HPP 12 #define ASIO_DETAIL_REACTIVE_SOCKET_SENDTO_OP_HPP 14 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 16 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200) 31 template <
typename ConstBufferSequence,
typename Endpo
int>
36 const ConstBufferSequence&
buffers,
const Endpoint& endpoint,
41 destination_(endpoint),
49 static_cast<reactive_socket_sendto_op_base*>(base));
52 ConstBufferSequence> bufs(o->buffers_);
55 bufs.buffers(), bufs.count(), o->flags_,
56 o->destination_.data(), o->destination_.size(),
62 ConstBufferSequence buffers_;
63 Endpoint destination_;
67 template <
typename ConstBufferSequence,
typename Endpo
int,
typename Handler>
75 const ConstBufferSequence&
buffers,
const Endpoint& endpoint,
89 ptr p = { asio::detail::addressof(o->handler_), o, o };
100 handler(o->handler_, o->ec_, o->bytes_transferred_);
101 p.h = asio::detail::addressof(handler.
handler_);
123 #endif // ASIO_DETAIL_REACTIVE_SOCKET_SENDTO_OP_HPP int message_flags
Bitmask type for flags that can be passed to send and receive operations.
#define ASIO_HANDLER_INVOCATION_END
reactive_socket_sendto_op_base(socket_type socket, const ConstBufferSequence &buffers, const Endpoint &endpoint, socket_base::message_flags flags, func_type complete_func)
Holds a buffer that cannot be modified.
socket_type socket(int af, int type, int protocol, asio::error_code &ec)
static bool do_perform(reactor_op *base)
asio::basic_streambuf< Allocator > & b
class task_io_service io_service_impl
void invoke(Function &function, Context &context)
const MutableBufferSequence & buffers
bool non_blocking_sendto(socket_type s, const buf *bufs, size_t count, int flags, const socket_addr_type *addr, std::size_t addrlen, asio::error_code &ec, size_t &bytes_transferred)
#define ASIO_HANDLER_INVOCATION_BEGIN(args)
Class to represent an error code value.
task_io_service_operation operation
static void do_complete(io_service_impl *owner, operation *base, const asio::error_code &, std::size_t)
std::size_t bytes_transferred_
#define ASIO_DEFINE_HANDLER_PTR(op)
#define ASIO_HANDLER_COMPLETION(args)
#define ASIO_MOVE_CAST(type)
reactive_socket_sendto_op(socket_type socket, const ConstBufferSequence &buffers, const Endpoint &endpoint, socket_base::message_flags flags, Handler &handler)