Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Class template basic_bufferstream

boost::interprocess::basic_bufferstream

Synopsis

// In header: <boost/interprocess/interprocess_fwd.hpp>

template<typename CharT, typename CharTraits = std::char_traits<CharT> > 
class basic_bufferstream : public std::basic_iostream< CharT, CharTraits > {
public:
  // construct/copy/destruct
  basic_bufferstream(std::ios_base::openmode = std::ios_base::in|std::ios_base::out);
  basic_bufferstream(CharT *, std::size_t, 
                     std::ios_base::openmode = std::ios_base::in|std::ios_base::out);
  ~basic_bufferstream();

  // public member functions
  basic_bufferbuf< CharT, CharTraits > * rdbuf() const;
  std::pair< CharT *, std::size_t > buffer() const;
  void buffer(CharT *, std::size_t);
};

Description

A basic_iostream class that uses a fixed size character buffer as its formatting buffer.

basic_bufferstream public construct/copy/destruct

  1. basic_bufferstream(std::ios_base::openmode mode = std::ios_base::in|std::ios_base::out);

    Constructor. Does not throw.

  2. basic_bufferstream(CharT * buf, std::size_t length, 
                       std::ios_base::openmode mode = std::ios_base::in|std::ios_base::out);

    Constructor. Assigns formatting buffer. Does not throw.

  3. ~basic_bufferstream();

basic_bufferstream public member functions

  1. basic_bufferbuf< CharT, CharTraits > * rdbuf() const;

    Returns the address of the stored stream buffer.

  2. std::pair< CharT *, std::size_t > buffer() const;

    Returns the pointer and size of the internal buffer. Does not throw.

  3. void buffer(CharT * buf, std::size_t length);

    Sets the underlying buffer to a new value. Resets stream position. Does not throw.


PrevUpHomeNext