Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::asio::mutable_buffer Class Reference

Holds a buffer that can be modified. More...

#include <buffer.hpp>

Inheritance diagram for boost::asio::mutable_buffer:

Public Member Functions

 mutable_buffer ()
 Construct an empty buffer. More...
 
 mutable_buffer (void *data, std::size_t size)
 Construct a buffer to represent a given memory range. More...
 

Friends

void * boost::asio::detail::buffer_cast_helper (const mutable_buffer &b)
 
std::size_t boost::asio::detail::buffer_size_helper (const mutable_buffer &b)
 

Related Functions

(Note that these are not member functions.)

mutable_buffer operator+ (const mutable_buffer &b, std::size_t start)
 Create a new modifiable buffer that is offset from the start of another. More...
 
mutable_buffer operator+ (std::size_t start, const mutable_buffer &b)
 Create a new modifiable buffer that is offset from the start of another. More...
 

Detailed Description

Holds a buffer that can be modified.

The mutable_buffer class provides a safe representation of a buffer that can be modified. It does not own the underlying data, and so is cheap to copy or assign.

Accessing Buffer Contents

The contents of a buffer may be accessed using the boost::asio::buffer_size and boost::asio::buffer_cast functions:

std::size_t s1 = boost::asio::buffer_size(b1);
unsigned char* p1 = boost::asio::buffer_cast<unsigned char*>(b1);

The boost::asio::buffer_cast function permits violations of type safety, so uses of it in application code should be carefully considered.

Constructor & Destructor Documentation

boost::asio::mutable_buffer::mutable_buffer ( )
inline

Construct an empty buffer.

boost::asio::mutable_buffer::mutable_buffer ( void *  data,
std::size_t  size 
)
inline

Construct a buffer to represent a given memory range.

Friends And Related Function Documentation

std::size_t boost::asio::detail::buffer_size_helper ( const mutable_buffer b)
friend
mutable_buffer operator+ ( const mutable_buffer b,
std::size_t  start 
)
related

Create a new modifiable buffer that is offset from the start of another.

References boost::asio::b, boost::asio::buffer_cast(), and boost::asio::buffer_size().

mutable_buffer operator+ ( std::size_t  start,
const mutable_buffer b 
)
related

Create a new modifiable buffer that is offset from the start of another.

References boost::asio::b, boost::asio::buffer_cast(), and boost::asio::buffer_size().


The documentation for this class was generated from the following file: