Mercurial > hg > octave-lyh
diff src/procstream.h @ 1380:79f80c6229be
[project @ 1995-09-12 07:03:33 by jwe]
author | jwe |
---|---|
date | Tue, 12 Sep 1995 07:06:14 +0000 |
parents | 611d403c7f3d |
children | 067f11a46742 |
line wrap: on
line diff
--- a/src/procstream.h +++ b/src/procstream.h @@ -28,41 +28,46 @@ #pragma interface #endif -#include <iostream.h> -#include <procbuf.h> +#include <fstream.h> + +class procbuf; class -procstreambase : virtual public ios +iprocstream : public ifstream { - public: - procstreambase (void); - procstreambase (const char *command, int mode = ios::out); +public: + iprocstream (void); + iprocstream (const char *command, int mode=ios::in); + + ~iprocstream (void); - procbuf *rdbuf (void) const { return (procbuf *) _strbuf; } + void open (const char *command, int mode=ios::in); + + int is_open (void); - void open (const char *command, int mode = ios::out); - int is_open (void) { return rdbuf()->is_open (); } int close (void); + +private: + procbuf *pbuf; }; class -iprocstream : public procstreambase, public istream +oprocstream : public ofstream { - public: - iprocstream (void) : procstreambase () {} - iprocstream (const char *command) : procstreambase (command, ios::in) {} +public: + oprocstream (void); + oprocstream (const char *command, int mode=ios::out); - void open (const char *command) { procstreambase::open (command, ios::in); } -}; + ~oprocstream (void); -class -oprocstream : public procstreambase, public ostream -{ - public: - oprocstream (void) : procstreambase () {} - oprocstream (const char *command) : procstreambase (command, ios::out) {} + void open (const char *command, int mode=ios::out); + + int is_open (void); - void open (const char *command) { procstreambase::open (command, ios::out); } + int close (void); + +private: + procbuf *pbuf; }; #endif @@ -73,6 +78,3 @@ ;;; page-delimiter: "^/\\*" *** ;;; End: *** */ - - -