Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext
io_req

A convenience bundle of precondition, data and where for reading into a T as specified by its to_asio_buffers() overload. Data MUST stay around until the operation completes.

Synopsis
template<class T>
struct io_req
      : public detail::io_req_impl< false >
{
  future precondition;                          // A precondition containing an open file handle for this operation. 
  std::vector< asio::mutable_buffer > buffers;  // A sequence of mutable Boost.ASIO buffers to read into. 
  off_t where;                                  // The offset from which to read. 
};
Template parameter(s)

Parameter

Description

class T

Any readable (if const) or writable (if non-const) type T as specified by its to_asio_buffers() overload.

Constructor(s)

Function

Description

Parameters

io_req()

Default constructor.

io_req(const io_req & o)

Copy constructor.

const io_req &: o:

io_req(io_req && o)

Move constructor.

io_req &&: o:

io_req(future<> _precondition, T * v, size_t _length,
        off_t _where)

Constructs an instance.

future<>: _precondition: An optional precondition for this operation

T *: v: A pointer to memory or reference to object into which to read or write

size_t: _length: The number of items to transfer

off_t: _where: The offset at which to transfer

template<class U>
io_req(future<> _precondition, U & v, off_t _where)

Constructs an instance.

future<>: _precondition: An optional precondition for this operation

U &: v: A pointer to memory or reference to object into which to read or write

off_t: _where: The offset at which to transfer

template<class U, size_t N>
io_req(future<> _precondition, U(&) v, off_t _where)

Constructs an instance.

future<>: _precondition: An optional precondition for this operation

U(&): v: A pointer to memory or reference to object into which to read or write

off_t: _where: The offset at which to transfer

Member Function(s)

Function

Description

Parameters

Returns

bool validate()

Validates contents for correctness.

True if contents are correct

io_req & operator=(const io_req & o)

Copy assignment.

const io_req &: o:

io_req & operator=(io_req && o)

Move assignment.

io_req &&: o:

Header

#include <boost/afio/v2/afio.hpp>


PrevUpHomeNext