Boost.AFIO    Boost C++ Libraries
Public Member Functions | Public Attributes
boost::afio::io_req< T > Struct Template Reference

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. More...

Inheritance diagram for boost::afio::io_req< T >:
boost::afio::detail::io_req_impl< false >

List of all members.

Public Member Functions

 io_req ()
 Default constructor.
 io_req (const io_req &o)
 Copy constructor.
 io_req (io_req &&o) noexcept
 Move constructor.
io_reqoperator= (const io_req &o)
 Copy assignment.
io_reqoperator= (io_req &&o) noexcept
 Move assignment.
 io_req (future<> _precondition, T *v, size_t _length, off_t _where)
 Constructs an instance.
template<class U >
 io_req (future<> _precondition, U &v, off_t _where)
 Constructs an instance.
template<class U , size_t N>
 io_req (future<> _precondition, U(&v)[N], off_t _where)
 Constructs an instance.
bool validate () const
 Validates contents for correctness.

Public Attributes

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.

Detailed Description

template<class T>
struct boost::afio::io_req< T >

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.

Template Parameters:
class TAny readable (if const) or writable (if non-const) type T as specified by its to_asio_buffers() overload.

Definition at line 3203 of file afio.hpp.


Constructor & Destructor Documentation

template<class T>
boost::afio::io_req< T >::io_req ( )

Default constructor.

Definition at line 3214 of file afio.hpp.

template<class T>
boost::afio::io_req< T >::io_req ( const io_req< T > &  o)

Copy constructor.

Definition at line 3216 of file afio.hpp.

template<class T>
boost::afio::io_req< T >::io_req ( io_req< T > &&  o)

Move constructor.

Definition at line 3218 of file afio.hpp.

template<class T>
boost::afio::io_req< T >::io_req ( future<>  _precondition,
T *  v,
size_t  _length,
off_t  _where 
)

Constructs an instance.

Parameters:
_preconditionAn optional precondition for this operation
vA pointer to memory or reference to object into which to read or write
_whereThe offset at which to transfer
_lengthThe number of items to transfer

Definition at line 3224 of file afio.hpp.

template<class T>
template<class U >
boost::afio::io_req< T >::io_req ( future<>  _precondition,
U &  v,
off_t  _where 
)

Constructs an instance.

Parameters:
_preconditionAn optional precondition for this operation
vA pointer to memory or reference to object into which to read or write
_whereThe offset at which to transfer

Definition at line 3226 of file afio.hpp.

template<class T>
template<class U , size_t N>
boost::afio::io_req< T >::io_req ( future<>  _precondition,
U(&)  v[N],
off_t  _where 
)

Constructs an instance.

Parameters:
_preconditionAn optional precondition for this operation
vA pointer to memory or reference to object into which to read or write
_whereThe offset at which to transfer
Template Parameters:
NThe number of items in the array

Definition at line 3228 of file afio.hpp.


Member Function Documentation

template<class T>
io_req& boost::afio::io_req< T >::operator= ( const io_req< T > &  o)

Copy assignment.

Definition at line 3220 of file afio.hpp.

template<class T>
io_req& boost::afio::io_req< T >::operator= ( io_req< T > &&  o)

Move assignment.

Definition at line 3222 of file afio.hpp.

bool boost::afio::detail::io_req_impl< false >::validate ( ) const [inherited]

Validates contents for correctness.

Returns:
True if contents are correct

Definition at line 3115 of file afio.hpp.


Member Data Documentation

template<class T>
future boost::afio::io_req< T >::precondition

A precondition containing an open file handle for this operation.

Reimplemented from boost::afio::detail::io_req_impl< false >.

Definition at line 3207 of file afio.hpp.

template<class T>
std::vector<asio::mutable_buffer> boost::afio::io_req< T >::buffers

A sequence of mutable Boost.ASIO buffers to read into.

Reimplemented from boost::afio::detail::io_req_impl< false >.

Definition at line 3209 of file afio.hpp.

template<class T>
off_t boost::afio::io_req< T >::where

The offset from which to read.

Reimplemented from boost::afio::detail::io_req_impl< false >.

Definition at line 3211 of file afio.hpp.


January, 2014

Copyright © 2013-2014 Niall Douglas, Cork, Ireland
Copyright © 2013 Paul Kirth, California
Documentation is generated by Doxygen