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

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
PrevUpHomeNext

Class template basic_pstream

boost::process::basic_pstream

Synopsis

// In header: <boost/process/pipe.hpp>

template<typename CharT, typename Traits = std::char_traits<CharT> > 
class basic_pstream : public std::basic_iostream< CharT, Traits > {
public:
  // types
  typedef basic_pipe< CharT, Traits > pipe_type;  
  typedef CharT                       char_type;  
  typedef Traits                      traits_type;
  typedef Traits::int_type            int_type;   
  typedef Traits::pos_type            pos_type;   
  typedef Traits::off_type            off_type;   

  // construct/copy/destruct
  basic_pstream();
  basic_pstream(const basic_pstream &) = delete;
  basic_pstream(basic_pstream &&) = default;
  basic_pstream(pipe_type &&);
  basic_pstream(const pipe_type &);
  basic_pstream & operator=(const basic_pstream &) = delete;
  basic_pstream & operator=(basic_pstream &&) = default;
  basic_pstream & operator=(pipe_type &&);
  basic_pstream & operator=(const pipe_type &);

  // public member functions
  basic_pipebuf< CharT, Traits > * rdbuf() const;
  void pipe(pipe_type &&);
  void pipe(const pipe_type &);
  pipe_type & pipe();
  const pipe_type & pipe() const;
  pipe_type && pipe();
};

Description

Implementation of a read-write pipe stream.

basic_pstream public construct/copy/destruct

  1. basic_pstream();
    Default constructor.
  2. basic_pstream(const basic_pstream &) = delete;
    Copy constructor.
  3. basic_pstream(basic_pstream &&) = default;
    Move constructor.
  4. basic_pstream(pipe_type && p);
    Move construct from a pipe.
  5. basic_pstream(const pipe_type & p);
    Copy construct from a pipe.
  6. basic_pstream & operator=(const basic_pstream &) = delete;
    Copy assignment.
  7. basic_pstream & operator=(basic_pstream &&) = default;
    Move assignment.
  8. basic_pstream & operator=(pipe_type && p);
    Move assignment of a pipe.
  9. basic_pstream & operator=(const pipe_type & p);
    Copy assignment of a pipe.

basic_pstream public member functions

  1. basic_pipebuf< CharT, Traits > * rdbuf() const;
    Get access to the underlying stream_buf.
  2. void pipe(pipe_type && p);
    Set the pipe of the streambuf.
  3. void pipe(const pipe_type & p);
    Set the pipe of the streambuf.
  4. pipe_type & pipe();
    Get a reference to the pipe.
  5. const pipe_type & pipe() const;
    Get a const reference to the pipe.
  6. pipe_type && pipe();
    Get a rvalue reference to the pipe. Qualified as rvalue.

PrevUpHomeNext