#include <pstream.h>
Inheritance diagram for redi::basic_ipstream< CharT, Traits >:
Public Types | |
typedef pbase_type::pmode | pmode |
Type used to specify how to connect to the process. | |
typedef pbase_type::argv_type | argv_type |
Type used to hold the arguments for a command. | |
Public Member Functions | |
basic_ipstream () | |
Default constructor, creates an uninitialised stream. | |
basic_ipstream (const std::string &command, pmode mode=pstdout) | |
Constructor that initialises the stream by starting a process. | |
basic_ipstream (const std::string &file, const argv_type &argv, pmode mode=pstdout) | |
Constructor that initialises the stream by starting a process. | |
~basic_ipstream () | |
Destructor. | |
void | open (const std::string &command, pmode mode=pstdout) |
Start a process. | |
void | open (const std::string &file, const argv_type &argv, pmode mode=pstdout) |
Start a process. | |
basic_ipstream & | out () |
Set streambuf to read from process' stdout . | |
basic_ipstream & | err () |
Set streambuf to read from process' stderr . | |
void | close () |
Close the pipe. | |
bool | is_open () const |
Report whether the stream's buffer has been initialised. | |
const std::string & | command () const |
Return the command used to initialise the stream. | |
streambuf_type * | rdbuf () const |
Return a pointer to the stream buffer. | |
Static Public Attributes | |
const pmode | pstdin = std::ios_base::out |
Write to stdin. | |
const pmode | pstdout = std::ios_base::in |
Read from stdout. | |
const pmode | pstderr = std::ios_base::app |
Read from stderr. | |
const pmode | pstdin = std::ios_base::out |
Write to stdin. | |
const pmode | pstdout = std::ios_base::in |
Read from stdout. | |
const pmode | pstderr = std::ios_base::app |
Read from stderr. | |
Protected Types | |
typedef basic_pstreambuf< CharT, Traits > | streambuf_type |
enum | { bufsz = 32 } |
enum | { pbsz = 2 } |
enum | { bufsz = 32 } |
enum | { pbsz = 2 } |
Protected Member Functions | |
void | do_open (const std::string &command, pmode mode) |
Start a process. | |
void | do_open (const std::string &file, const argv_type &argv, pmode mode) |
Start a process. | |
Protected Attributes | |
std::string | command_ |
The command used to start the process. |
Reading from an ipstream reads the command's standard output and/or standard error (depending on how the ipstream is opened) and the command's standard input is the same as that of the process that created the object, unless altered by the command itself.
|
Constructor that initialises the stream by starting a process. Initialises the stream buffer by calling do_open() with the supplied arguments.
|
|
Constructor that initialises the stream by starting a process. Initialises the stream buffer by calling do_open() with the supplied arguments.
|
|
Destructor. Closes the stream and waits for the child to exit. |
|
Close the pipe.
Calls rdbuf->close() and sets |
|
Return the command used to initialise the stream.
|
|
Start a process.
Calls rdbuf()->open( file, argv, mode ) and sets
|
|
Start a process.
Calls rdbuf()->open( command , mode ) and sets
|
|
Set streambuf to read from process'
|
|
Report whether the stream's buffer has been initialised.
|
|
Start a process. Calls do_open( file , argv , mode|pstdout ).
|
|
Start a process. Calls do_open( command , mode|pstdout ).
|
|
Set streambuf to read from process'
|
|
Return a pointer to the stream buffer.
|