|  | Home | Libraries | People | FAQ | More | 
Adds buffering to the read- and write-related operations of a stream.
template<
    typename Stream>
class buffered_stream :
  noncopyable
| Name | Description | 
|---|---|
| The type of the executor associated with the object. | |
| The type of the lowest layer. | |
| The type of the next layer. | 
| Name | Description | 
|---|---|
| Start an asynchronous fill. | |
| Start an asynchronous flush. | |
| Start an asynchronous read. The buffer into which the data will be read must be valid for the lifetime of the asynchronous operation. | |
| Start an asynchronous write. The data being written must be valid for the lifetime of the asynchronous operation. | |
| Construct, passing the specified argument to initialise the next layer. | |
| Close the stream. | |
| 
                  Fill the buffer with some data. Returns the number of bytes placed
                  in the buffer as a result of the operation. Throws an exception
                  on failure.  | |
| 
                  Flush all data from the buffer to the next layer. Returns the number
                  of bytes written to the next layer on the last write operation.
                  Throws an exception on failure.  | |
| Get the executor associated with the object. | |
| Determine the amount of data that may be read without blocking. | |
| 
                  Get a reference to the lowest layer.  | |
| Get a reference to the next layer. | |
| 
                  Peek at the incoming data on the stream. Returns the number of
                  bytes read. Throws an exception on failure.  | |
| 
                  Read some data from the stream. Returns the number of bytes read.
                  Throws an exception on failure.  | |
| 
                  Write the given data to the stream. Returns the number of bytes
                  written. Throws an exception on failure.  | 
        The buffered_stream
        class template can be used to add buffering to the synchronous and asynchronous
        read and write operations of a stream.
      
Distinct objects: Safe.
Shared objects: Unsafe.
        Header: boost/asio/buffered_stream.hpp
      
        Convenience header: boost/asio.hpp