Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

PipeStreamBuf Class Reference

#include <pfstreamBuf.h>

List of all members.

Public Types

enum  Direction { Input, Output }

Public Member Functions

 PipeStreamBuf (Direction)
virtual ~PipeStreamBuf (void)
void flush ()
void command (const string)

Protected Member Functions

virtual int overflow (int c)
virtual int sync (void)
virtual int underflow (void)

Private Member Functions

void init_pipe ()
bool is_open () const
bool eof_pipe () const
bool open_pipe (const string &cmd)
void close_pipe ()
size_t write_pipe (const char *data, size_t len)
size_t read_pipe (char *data, size_t len)
void write_chars (const char *, int, bool)

Private Attributes

Direction _dir
string _line_buffer
FILE * _pipe


Member Enumeration Documentation

enum PipeStreamBuf::Direction
 

Enumeration values:
Input 
Output 

Definition at line 48 of file pfstreamBuf.h.


Constructor & Destructor Documentation

PipeStreamBuf::PipeStreamBuf Direction   ) 
 

Definition at line 22 of file pfstreamBuf.cxx.

References assert, init_pipe(), Input, and Output.

PipeStreamBuf::~PipeStreamBuf void   )  [virtual]
 

Definition at line 41 of file pfstreamBuf.cxx.

References close_pipe(), flush(), is_open(), and sync().


Member Function Documentation

void PipeStreamBuf::close_pipe  )  [private]
 

Definition at line 221 of file pfstreamBuf.cxx.

References _pipe, and NULL.

Referenced by ~PipeStreamBuf().

void PipeStreamBuf::command const  string  ) 
 

Definition at line 56 of file pfstreamBuf.cxx.

References assert, is_open(), and open_pipe().

bool PipeStreamBuf::eof_pipe  )  const [private]
 

Definition at line 194 of file pfstreamBuf.cxx.

References _pipe, and NULL.

Referenced by underflow().

void PipeStreamBuf::flush  ) 
 

Definition at line 49 of file pfstreamBuf.cxx.

References _dir, assert, is_open(), Output, and write_chars().

Referenced by ~PipeStreamBuf().

void PipeStreamBuf::init_pipe  )  [private]
 

Definition at line 172 of file pfstreamBuf.cxx.

References _pipe, and NULL.

Referenced by PipeStreamBuf().

bool PipeStreamBuf::is_open  )  const [private]
 

Definition at line 183 of file pfstreamBuf.cxx.

References _pipe, and NULL.

Referenced by command(), flush(), overflow(), sync(), and ~PipeStreamBuf().

bool PipeStreamBuf::open_pipe const string &  cmd  )  [private]
 

Definition at line 209 of file pfstreamBuf.cxx.

References _dir, _pipe, NULL, and Output.

Referenced by command().

int PipeStreamBuf::overflow int  c  )  [protected, virtual]
 

Definition at line 61 of file pfstreamBuf.cxx.

References _dir, assert, c, is_open(), n, Output, streamsize, and write_chars().

size_t PipeStreamBuf::read_pipe char *  data,
size_t  len
[private]
 

Definition at line 249 of file pfstreamBuf.cxx.

References _pipe, data, and len.

Referenced by underflow().

int PipeStreamBuf::sync void   )  [protected, virtual]
 

Definition at line 77 of file pfstreamBuf.cxx.

References _dir, assert, is_open(), n, Output, streamsize, and write_chars().

Referenced by ~PipeStreamBuf().

int PipeStreamBuf::underflow void   )  [protected, virtual]
 

Definition at line 95 of file pfstreamBuf.cxx.

References _dir, assert, c, eof_pipe(), Input, len, n, read_pipe(), and size_t.

void PipeStreamBuf::write_chars const char *  ,
int  ,
bool 
[private]
 

Definition at line 133 of file pfstreamBuf.cxx.

References _dir, _line_buffer, assert, length, Output, size_t, start, and write_pipe().

Referenced by flush(), overflow(), and sync().

size_t PipeStreamBuf::write_pipe const char *  data,
size_t  len
[private]
 

Definition at line 235 of file pfstreamBuf.cxx.

References _pipe, data, len, and size_t.

Referenced by write_chars().


Member Data Documentation

Direction PipeStreamBuf::_dir [private]
 

Definition at line 69 of file pfstreamBuf.h.

Referenced by flush(), open_pipe(), overflow(), sync(), underflow(), and write_chars().

string PipeStreamBuf::_line_buffer [private]
 

Definition at line 70 of file pfstreamBuf.h.

Referenced by write_chars().

FILE* PipeStreamBuf::_pipe [private]
 

Definition at line 73 of file pfstreamBuf.h.

Referenced by close_pipe(), eof_pipe(), init_pipe(), is_open(), open_pipe(), read_pipe(), and write_pipe().


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 01:35:05 2003 for DTool by doxygen1.3